/* /Components/Common/MatterSelector.razor.rz.scp.css */
/* 選択済みの際の状態（薄い緑色と太字） */
.matter-selected[b-5hjulaej7e] {
    background-color: #f0fdf4 !important; /* bg-success-subtle 相当 */
    border-color: #bbf7d0 !important;
    font-weight: bold;
    color: #166534 !important;
}

/* モーダルオーバーレイの背景 */
.modal-backdrop-custom[b-5hjulaej7e] {
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 10050;
}

/* モーダルの重なり順調整 */
.modal-custom[b-5hjulaej7e] {
    z-index: 10051;
}

/* 検索結果アイテムのホバー演出 */
.list-group-item-action:hover[b-5hjulaej7e] {
    background-color: rgba(0, 194, 168, 0.05);
    border-left: 4px solid var(--legal-accent);
}

/* フォーム用ラベル */
.label-small[b-5hjulaej7e] {
    font-size: 0.8rem;
    font-weight: 700;
}

/* 補足テキスト */
.x-small[b-5hjulaej7e] {
    font-size: 0.72rem;
}

/* プレビューアイコンのスタイル */
.preview-icon[b-5hjulaej7e] {
    font-size: 1.2rem;
    opacity: 0.7;
}
/* /Components/Dialog/ExpenseDialog.razor.rz.scp.css */
/* ダイアログの幅調整 */
.dialog-wide[b-2mcvyjitdq] {
    max-width: 800px;
}

.modal-header-gradient[b-2mcvyjitdq] {
    background: linear-gradient(135deg, var(--legal-primary) 0%, var(--legal-primary-dark) 100%);
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}
/* /Components/Form/ExpenseForm.razor.rz.scp.css */
/* マスタ連動モード */
.input-readonly[b-zvyx6fmaon] {
    background-color: #f8f9fa !important;
    cursor: not-allowed;
    color: #64748b;
}

/* 税率入力 */
.tax-rate-input-group[b-zvyx6fmaon] {
    width: 100px;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-m3hv6ixruy] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-m3hv6ixruy] {
    flex: 1;
}

.sidebar[b-m3hv6ixruy] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-m3hv6ixruy] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-m3hv6ixruy]  a, .top-row[b-m3hv6ixruy]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-m3hv6ixruy]  a:hover, .top-row[b-m3hv6ixruy]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-m3hv6ixruy]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-m3hv6ixruy] {
        justify-content: space-between;
    }

    .top-row[b-m3hv6ixruy]  a, .top-row[b-m3hv6ixruy]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-m3hv6ixruy] {
        flex-direction: row;
    }

    .sidebar[b-m3hv6ixruy] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-m3hv6ixruy] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-m3hv6ixruy]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-m3hv6ixruy], article[b-m3hv6ixruy] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-m3hv6ixruy] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-m3hv6ixruy] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* --- レイアウト・スケルトン --- */
.navbar-toggler[b-nndwx6mbys] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
    z-index: 10;
}

    .navbar-toggler:checked[b-nndwx6mbys] {
        background-color: rgba(255, 255, 255, 0.5);
    }

.top-row[b-nndwx6mbys] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
    display: flex;
    align-items: center;
}

.navbar-brand[b-nndwx6mbys] {
    font-size: 1.1rem;
    font-weight: bold;
}

/* --- 標準ナビゲーション項目 --- */
.nav-item[b-nndwx6mbys] {
    font-size: 0.9rem;
    padding-bottom: 0.25rem;
}

    .nav-item:first-of-type[b-nndwx6mbys] {
        padding-top: 1rem;
    }

    .nav-item[b-nndwx6mbys]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 8px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
        transition: all 0.2s ease;
    }

    .nav-item[b-nndwx6mbys]  a.active {
        background-color: rgba(255, 255, 255, 0.2);
        color: white;
        font-weight: bold;
    }

    .nav-item[b-nndwx6mbys]  .nav-link:hover {
        background-color: rgba(255, 255, 255, 0.1);
        color: white;
    }

/* --- アクティブなコンテキスト (案件・顧客) セクション --- */
.context-section[b-nndwx6mbys] {
    background-color: rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    margin: 0 0.5rem;
    border-radius: 8px;
}

.context-label[b-nndwx6mbys] {
    display: block;
    color: rgba(255, 255, 255, 0.5);
    text-transform: uppercase;
    font-weight: bold;
    font-size: 0.62rem;
    letter-spacing: 1px;
}

.nav-header-label[b-nndwx6mbys] {
    display: block;
    text-transform: uppercase;
    font-weight: bold;
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.68rem;
    letter-spacing: 0.1em;
}

/* --- 特殊メニュー項目 --- */
.litigation-nav-link[b-nndwx6mbys] {
    color: #e9d5ff !important; /* 明るいパープル */
}

    .litigation-nav-link:hover[b-nndwx6mbys] {
        background-color: rgba(111, 66, 193, 0.2) !important;
    }

/* --- 最近のアクセス (履歴) --- */
.history-section-title[b-nndwx6mbys] {
    text-transform: uppercase;
    font-weight: bold;
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.72rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding-bottom: 0.4rem;
}

.history-item-link[b-nndwx6mbys] {
    display: block;
    padding: 0.6rem;
    border-radius: 8px;
    background-color: rgba(255, 255, 255, 0.05);
    transition: all 0.2s ease;
    margin-bottom: 0.5rem;
}

    .history-item-link:hover[b-nndwx6mbys] {
        background-color: rgba(255, 255, 255, 0.1) !important;
        transform: translateX(4px);
    }

.history-title[b-nndwx6mbys] {
    font-size: 0.82rem;
    font-weight: bold;
}

.history-subtitle[b-nndwx6mbys] {
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.5);
}

/* --- レスポンシブ制御 --- */
.nav-scrollable[b-nndwx6mbys] {
    display: none;
}

#nav-toggle-checkbox:checked ~ .nav-scrollable[b-nndwx6mbys] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-nndwx6mbys] {
        display: none;
    }

    .nav-scrollable[b-nndwx6mbys] {
        display: block;
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}

/* アイコン用 (既存の.biを拡張) */
.bi[b-nndwx6mbys] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-z3ho7de2bc],
.components-reconnect-repeated-attempt-visible[b-z3ho7de2bc],
.components-reconnect-failed-visible[b-z3ho7de2bc],
.components-pause-visible[b-z3ho7de2bc],
.components-resume-failed-visible[b-z3ho7de2bc],
.components-rejoining-animation[b-z3ho7de2bc] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-retrying[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-failed[b-z3ho7de2bc],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-z3ho7de2bc] {
    display: block;
}


#components-reconnect-modal[b-z3ho7de2bc] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-z3ho7de2bc 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-z3ho7de2bc 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-z3ho7de2bc 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-z3ho7de2bc]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-z3ho7de2bc 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-z3ho7de2bc {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-z3ho7de2bc {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-z3ho7de2bc {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-z3ho7de2bc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-z3ho7de2bc] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-z3ho7de2bc] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-z3ho7de2bc] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-z3ho7de2bc] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-z3ho7de2bc] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-z3ho7de2bc] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-z3ho7de2bc 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-z3ho7de2bc] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-z3ho7de2bc {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Address/AddressBook.razor.rz.scp.css */
/* 左ペイン：リストアイテムの選択状態 */
.selected-item[b-idq50uhjww] {
    background-color: rgba(0, 194, 168, 0.08) !important;
    border-left: 4px solid var(--legal-accent) !important;
    z-index: 1;
}

.border-start-4[b-idq50uhjww] {
    border-left-width: 4px !important;
}

.border-transparent[b-idq50uhjww] {
    border-left-color: transparent !important;
}

/* 汎用アニメーション */
.transition-all[b-idq50uhjww] {
    transition: all 0.2s ease;
}

.hover-scale:hover[b-idq50uhjww] {
    transform: scale(1.1);
}

/* 五十音フィルターボタン */
.btn-kana[b-idq50uhjww] {
    font-size: 0.75rem;
    font-weight: bold;
    padding: 4px 10px;
    border: 1px solid #e2e8f0;
    background: white;
    border-radius: 8px;
    color: var(--legal-text-muted);
    transition: all 0.2s;
}

    .btn-kana.active[b-idq50uhjww] {
        background: var(--legal-primary);
        color: white;
        border-color: var(--legal-primary);
    }

    .btn-kana:hover:not(.active)[b-idq50uhjww] {
        background: #f8fafc;
        border-color: #cbd5e1;
    }

/* 詳細ペイン：アバター */
.avatar-circle[b-idq50uhjww] {
    width: 70px;
    height: 70px;
    background-color: var(--legal-primary);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 800;
}

/* 詳細ペイン：情報行 */
.info-row[b-idq50uhjww] {
    margin-bottom: 1.5rem;
}

    .info-row label[b-idq50uhjww] {
        display: block;
        font-size: 0.75rem;
        color: var(--legal-text-muted);
        font-weight: 800;
        margin-bottom: 0.4rem;
        text-transform: uppercase;
        letter-spacing: 0.05em;
    }

/* セクションタイトル */
.section-title[b-idq50uhjww] {
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}

/* バッジの共通サイズと色分け */
.badge-category[b-idq50uhjww] {
    font-size: 0.65rem;
    padding: 0.35rem 0.8rem;
    border-radius: 50px;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.bg-internal[b-idq50uhjww] {
    background-color: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
}

.bg-external[b-idq50uhjww] {
    background-color: #eff6ff;
    color: #2563eb;
    border: 1px solid #bfdbfe;
}

.bg-partner[b-idq50uhjww] {
    background-color: #f0fdf4;
    color: #16a34a;
    border: 1px solid #bbf7d0;
}

/* 電話ボタンのサイズ固定 */
.btn-phone-call[b-idq50uhjww] {
    width: 42px;
    height: 42px;
}
/* /Components/Pages/Address/AddressEdit.razor.rz.scp.css */
.edit-container[b-vd8wbowu4b] {
    max-width: 900px;
}

.text-accent[b-vd8wbowu4b] {
    color: var(--legal-accent);
}
/* /Components/Pages/Attendance/Attendance.razor.rz.scp.css */
/* 文字間隔の微調整 */
.letter-spacing-wide[b-5etv9nbrx8] {
    letter-spacing: 0.05em;
}

.letter-spacing-wider[b-5etv9nbrx8] {
    letter-spacing: 0.1em;
}

/* 月移動用の丸い小ボタン */
.btn-circle-sm[b-5etv9nbrx8] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 勤怠テーブルのスクロール領域 */
.attendance-table-container[b-5etv9nbrx8] {
    max-height: calc(100vh - 220px);
}

/* テーブルの列幅固定 */
.col-type[b-5etv9nbrx8],
.col-time[b-5etv9nbrx8],
.col-duration[b-5etv9nbrx8] {
    width: 100px;
}

.col-action[b-5etv9nbrx8] {
    width: 120px;
}
/* /Components/Pages/Audit/AuditList.razor.rz.scp.css */
.avatar-circle-sm[b-ogoo9ojc8v] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
}

.extra-small[b-ogoo9ojc8v] {
    font-size: 0.75rem;
}

.input-refined-sm[b-ogoo9ojc8v] {
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    padding: 0.4rem 0.8rem;
    font-size: 0.9rem;
    box-shadow: none;
}
/* /Components/Pages/Common/ErrorDisplay.razor.rz.scp.css */
/* エラー用カードの強調ボーダー */
.error-card[b-fnd88wf2ue] {
    border-left: 5px solid #dc3545 !important;
}

/* 技術詳細（スタックトレース等）を表示するボックス */
.error-details-box[b-fnd88wf2ue] {
    font-family: monospace;
    max-height: 200px;
    overflow-y: auto;
}
/* /Components/Pages/ContactLog/ContactLogList.razor.rz.scp.css */
/* コンタクトログリストの左端ボーダー幅を太くする */
.border-start-4[b-zs3mrr43rd] {
    border-left-width: 4px !important;
    border-left-style: solid !important;
}

/* 選択されていない場合、ボーダーは透明にする */
.border-transparent[b-zs3mrr43rd] {
    border-left-color: transparent !important;
}

/* 選択中はハイライト */
.active-log-item[b-zs3mrr43rd] {
    background-color: #f0fdfa !important;
    border-left-color: var(--legal-accent) !important;
}
/* /Components/Pages/Expenses/ExpenseList.razor.rz.scp.css */
body[b-in7m8dkfd2] {
}
/* /Components/Pages/Home.razor.rz.scp.css */
.menu-card-refined[b-qtznk67ycz] {
    cursor: pointer;
    border-radius: 20px;
    border: 1px solid rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 180px;
    transition: transform 0.4s ease-out, box-shadow 0.4s ease-out, border-color 0.4s ease-out;
}

    .menu-card-refined:hover[b-qtznk67ycz] {
        transform: translateY(-8px);
        box-shadow: 0 15px 30px rgba(0,0,0,0.1) !important;
        border-color: var(--legal-accent);
    }

.icon-wrapper[b-qtznk67ycz] {
    width: 60px;
    height: 60px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
}

.shadow-inner[b-qtznk67ycz] {
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.1);
}

.x-small[b-qtznk67ycz] {
    font-size: 0.75rem;
}
/* /Components/Pages/Litigation/LitigationDashboard.razor.rz.scp.css */
/* 訴訟テーマカラー（紫系）のユーティリティ */
.text-litigation[b-hpocdu8kss] {
    color: #6f42c1 !important;
}

.card-litigation[b-hpocdu8kss] {
    border-left: 5px solid #6f42c1 !important;
}

/* 訴訟用のアウトラインボタン */
.btn-outline-litigation[b-hpocdu8kss] {
    border-color: #6f42c1;
    color: #6f42c1;
    background-color: transparent;
}

    .btn-outline-litigation:hover[b-hpocdu8kss] {
        background-color: #6f42c1;
        color: #ffffff;
    }

/* 訴訟用のメインボタン */
.btn-litigation[b-hpocdu8kss] {
    background-color: #6f42c1;
    border-color: #6f42c1;
    color: #ffffff;
}

    .btn-litigation:hover[b-hpocdu8kss] {
        background-color: #59359a;
        border-color: #59359a;
        color: #ffffff;
    }

/* 訴訟用のダークボタン（一括完了など） */
.btn-litigation-dark[b-hpocdu8kss] {
    background-color: #6b21a8;
    border: none;
    color: #ffffff;
}

    .btn-litigation-dark:hover[b-hpocdu8kss] {
        background-color: #581c87;
        color: #ffffff;
    }

/* バッジと背景色 */
.badge-litigation-dark[b-hpocdu8kss] {
    background-color: #6b21a8;
    color: #ffffff;
    font-size: 0.75rem;
    padding: 3px 8px;
    border-radius: 4px;
    font-weight: 700;
    display: inline-block;
}

.bg-litigation-light[b-hpocdu8kss] {
    background-color: #fcfaff !important;
    border-color: #e9d5ff !important;
}

/* モーダルのヘッダー */
.modal-header-litigation[b-hpocdu8kss] {
    background-color: #f3e8ff;
    border-bottom: 2px solid #6f42c1;
}
/* /Components/Pages/Litigation/LitigationDetail.razor.rz.scp.css */
/* 訴訟テーマカラー（紫系） */
.text-litigation[b-q7ggm901gz] {
    color: #6f42c1 !important;
}

.bg-litigation[b-q7ggm901gz] {
    background-color: #6f42c1 !important;
    color: white;
}

.border-top-litigation[b-q7ggm901gz] {
    border-top: 4px solid #6f42c1 !important;
}

/* 訴訟用のメインボタン */
.btn-litigation[b-q7ggm901gz] {
    background-color: #6f42c1;
    border-color: #6f42c1;
    color: #ffffff;
}

    .btn-litigation:hover[b-q7ggm901gz] {
        background-color: #59359a;
        border-color: #59359a;
        color: #ffffff;
    }

/* 訴訟用のアウトラインボタン */
.btn-outline-litigation[b-q7ggm901gz] {
    color: #6f42c1;
    border-color: #6f42c1;
    background-color: transparent;
}

    .btn-outline-litigation:hover[b-q7ggm901gz] {
        background-color: #6f42c1;
        color: #ffffff;
    }

/* ★重なり防止: 審級結果セレクトボックスの幅を確保 */
.instance-result-select[b-q7ggm901gz] {
    min-width: 120px; /* 文字が入り切る幅を確保 */
    cursor: pointer;
}

/* 審級リストアイテムの背景色 */
.bg-light-subtle[b-q7ggm901gz] {
    background-color: #fcfcfc;
}

/* クライアントロール（原告・被告等）のセレクトボックス専用デザイン */
.select-client-role[b-q7ggm901gz] {
    font-size: 0.75rem;
    padding: 2px 25px 2px 10px;
    background-color: #f0f7ff;
    border-color: #cce5ff;
}

/* 案件リストのスクロールコンテナ */
.matter-list-container[b-q7ggm901gz] {
    max-height: 400px;
    overflow-y: auto;
}

/* アイコン類 */
.icon-trash[b-q7ggm901gz] {
    opacity: 0.7;
    transition: opacity 0.2s;
}

    .icon-trash:hover[b-q7ggm901gz] {
        opacity: 1;
    }

.label-small[b-q7ggm901gz] {
    font-size: 0.8rem;
    font-weight: 700;
}

.x-small[b-q7ggm901gz] {
    font-size: 0.72rem;
}

/* 境界線のスタイル */
.border-dashed[b-q7ggm901gz] {
    border-style: dashed !important;
}
/* /Components/Pages/Login.razor.rz.scp.css */

/* ----------------------------------
   業務支援システム Legal-is by ATHLETE (株式会社アスリート Legal-is レガリス)
   メインデザイン
   ---------------------------------- */
.login-logo-title[b-itp9y8diva] {
    font-family: "Playfair Display", "Merriweather", "Noto Serif JP", "Yu Mincho", serif;
    color: var(--legal-primary);
    font-size: 3.5rem;
    white-space: nowrap;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 0.2rem;
    text-shadow: 0 2px 4px rgba(0, 69, 62, 0.1);
    letter-spacing: 0.05em;
}

.login-logo-subtitle[b-itp9y8diva] {
    color: #6c757d;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    margin-left: 0.4em;
}

/* ----------------------------------
   全体・カードの調整
   ---------------------------------- */
.login-card[b-itp9y8diva] {
    width: 100%;
    max-width: 460px;
    border-radius: 24px;
    box-shadow: 0 2rem 5rem rgba(0, 69, 62, 0.25) !important;
    padding: 4rem 3.5rem;
}

.login-input[b-itp9y8diva] {
    background-color: #f8fafc;
    border: 2px solid transparent !important;
    border-radius: 12px;
    padding: 0.8rem 1rem;
    transition: all 0.2s ease;
}

    .login-input:focus[b-itp9y8diva] {
        background-color: #fff;
        border-color: var(--legal-accent) !important; /* app.cssの変数を利用 */
        box-shadow: 0 0 0 4px rgba(0, 194, 168, 0.15);
    }

/* ----------------------------------
   ボタン・リンク
   ---------------------------------- */
.login-submit-btn[b-itp9y8diva] {
    background-color: var(--legal-accent) !important; /* app.cssの変数を利用 */
    border-radius: 50px;
    font-weight: 700;
    padding: 1rem;
    border: none;
    transition: all 0.2s ease;
    letter-spacing: 0.05em;
}

    .login-submit-btn:hover[b-itp9y8diva] {
        background-color: #009688 !important;
        opacity: 1 !important;
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(0, 194, 168, 0.3);
        color: #ffffff !important;
    }

    .login-submit-btn:active[b-itp9y8diva] {
        transform: scale(0.98);
        background-color: #00796b !important;
    }

    .login-submit-btn:disabled[b-itp9y8diva] {
        background-color: #a0dcd6;
        cursor: not-allowed;
        transform: none;
    }

.forgot-password-link[b-itp9y8diva] {
    font-size: 0.85rem;
    color: #64748b;
    text-decoration: none;
    transition: color 0.2s;
}

    .forgot-password-link:hover[b-itp9y8diva] {
        color: var(--legal-accent); /* app.cssの変数を利用 */
    }

/* アニメーション */
.animate-fade[b-itp9y8diva] {
    animation: fadeIn-b-itp9y8diva 0.5s ease-out;
}

@keyframes fadeIn-b-itp9y8diva {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Components/Pages/Maintenance/BranchMasterList.razor.rz.scp.css */
/* アクセントカラー用の文字色 */
.text-accent[b-jegzhtpyss] {
    color: var(--legal-accent);
}

/* 小さめのラベル */
.label-small[b-jegzhtpyss] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

/* 極小テキスト（バリデーション用など） */
.extra-small[b-jegzhtpyss] {
    font-size: 0.75rem;
}

/* 支店コードの等幅フォント */
.font-monospace[b-jegzhtpyss] {
    font-family: var(--bs-font-monospace);
}
/* /Components/Pages/Maintenance/CaseTypeEdit.razor.rz.scp.css */
/* セクション全体の幅調整 */
.setup-container-sm[b-hj1t3yljse] {
    max-width: 800px;
}

/* プレビューエリアの固定 */
.sticky-preview[b-hj1t3yljse] {
    position: sticky;
    top: 20px;
    z-index: 10;
}

/* カラーピッカーの形状調整 */
.form-control-color-refined[b-hj1t3yljse] {
    width: 60px;
    height: 45px;
    cursor: pointer;
    padding: 0.2rem;
    border-radius: 8px !important;
}

.color-code-input[b-hj1t3yljse] {
    width: 120px;
}

/* テーブルの列幅固定 */
.col-order[b-hj1t3yljse] {
    width: 70px;
}

.col-action-sm[b-hj1t3yljse] {
    width: 100px;
}

.col-type-md[b-hj1t3yljse] {
    width: 110px;
}

.col-width-sm[b-hj1t3yljse] {
    width: 70px;
}

/* プレビュー用カードの最小高さ */
.preview-card-body[b-hj1t3yljse] {
    min-height: 350px;
}

.preview-field-slot[b-hj1t3yljse] {
    min-height: 35px;
}

/* プレビュー内のタブホバー */
.nav-tabs .nav-link:hover:not(.active)[b-hj1t3yljse] {
    background-color: rgba(255, 255, 255, 0.1);
    color: white !important;
    opacity: 1;
}

/* 共通 */
.label-small[b-hj1t3yljse] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

.extra-small[b-hj1t3yljse] {
    font-size: 0.7rem;
}

.border-accent-soft[b-hj1t3yljse] {
    border-color: rgba(0, 194, 168, 0.2) !important;
}

.card-header-transition[b-hj1t3yljse] {
    transition: background-color 0.3s ease-in-out;
}
/* /Components/Pages/Maintenance/CaseTypeList.razor.rz.scp.css */
/* テーブルのカラム幅固定 */
.col-code[b-w2gq9jynr7] {
    width: 15%;
}

.col-name[b-w2gq9jynr7] {
    width: 35%;
}

.col-order[b-w2gq9jynr7] {
    width: 15%;
}

.col-action[b-w2gq9jynr7] {
    width: 150px;
}
/* /Components/Pages/Maintenance/DocumentTemplateEdit.razor.rz.scp.css */
/* ファイルドロップ */
.file-drop-zone[b-ohc3ekpt7k] {
    min-height: 120px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

    .file-drop-zone:hover[b-ohc3ekpt7k] {
        background-color: #f0f8ff !important;
        border-color: var(--legal-accent) !important;
    }

/* Excel設定用の薄い青背景 */
.bg-blue-light[b-ohc3ekpt7k] {
    background-color: #f0f7ff;
}

/* マッピングテーブルのスクロール領域 */
.mapping-table-container[b-ohc3ekpt7k] {
    max-height: 400px;
    overflow-y: auto;
}

/* テーブルの列幅固定 */
.col-placeholder[b-ohc3ekpt7k] {
    width: 25%;
}

.col-source[b-ohc3ekpt7k] {
    width: 30%;
}

.col-islist[b-ohc3ekpt7k] {
    width: 10%;
}

.col-format[b-ohc3ekpt7k] {
    width: 15%;
}

.col-default[b-ohc3ekpt7k] {
    width: 15%;
}

.col-action[b-ohc3ekpt7k] {
    width: 5%;
}

/* 小さめのフォント */
.extra-small[b-ohc3ekpt7k] {
    font-size: 0.75rem;
}
/* /Components/Pages/Maintenance/DocumentTemplateList.razor.rz.scp.css */
/* テーブルのカラム幅固定 */
.col-template-name[b-csekf9oxvy] {
    width: 25%;
}

.col-type[b-csekf9oxvy] {
    width: 15%;
}

.col-filename[b-csekf9oxvy] {
    width: 20%;
}

.col-case-type[b-csekf9oxvy] {
    width: 15%;
}

.col-updated[b-csekf9oxvy] {
    width: 15%;
}

.col-action[b-csekf9oxvy] {
    width: 10%;
}

/* カーソルを指マークに */
.cursor-pointer[b-csekf9oxvy] {
    cursor: pointer;
}

/* 小さめのフォント */
.extra-small[b-csekf9oxvy] {
    font-size: 0.75rem;
}

/* 削除ボタンの重なり順調整 */
.z-index-front[b-csekf9oxvy] {
    position: relative;
    z-index: 2;
}
/* /Components/Pages/Maintenance/ExpenseMaster.razor.rz.scp.css */
/* 小さめのラベル */
.label-small[b-c6ur1x7feb] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
    margin-bottom: 4px;
    display: block;
}

/* バッジの微調整 */
.small-badge[b-c6ur1x7feb] {
    font-weight: normal;
    letter-spacing: 0.05em;
}

/* タブメニューのカスタム装飾 */
.nav-tabs .nav-link[b-c6ur1x7feb] {
    color: #6c757d;
    cursor: pointer;
    border: none;
    border-bottom: 3px solid transparent;
}

    .nav-tabs .nav-link.active[b-c6ur1x7feb] {
        color: var(--legal-primary);
        border-bottom: 3px solid var(--legal-primary);
        background: transparent;
    }

/* テーブルの列幅固定 (項目一覧) */
.col-target-case[b-c6ur1x7feb] {
    width: 130px;
}

.col-type-large[b-c6ur1x7feb] {
    width: 120px;
}

.col-category-mid[b-c6ur1x7feb] {
    width: 140px;
}

.col-amount[b-c6ur1x7feb] {
    width: 140px;
}

.col-tax[b-c6ur1x7feb] {
    width: 100px;
}

.col-action[b-c6ur1x7feb] {
    width: 120px;
}

/* テーブルの列幅固定 (種類一覧) */
.col-id[b-c6ur1x7feb] {
    width: 100px;
}

/* フィルタエリアの幅固定 */
.filter-min-w[b-c6ur1x7feb] {
    min-width: 220px;
}

/* モーダルの重なり順調整（多段モーダル対応） */
.modal-backdrop-custom[b-c6ur1x7feb] {
    z-index: 1055;
}

.modal-custom[b-c6ur1x7feb] {
    z-index: 1056;
}

.modal-backdrop-deep[b-c6ur1x7feb] {
    z-index: 1060;
}

.modal-deep[b-c6ur1x7feb] {
    z-index: 1061;
}

/* フォーム内の計算率セクション */
.rate-calc-box[b-c6ur1x7feb] {
    border-left-width: 4px !important;
}
/* /Components/Pages/Maintenance/GeneralMaster.razor.rz.scp.css */
/* カテゴリリスト（左サイドバー）のスクロール領域 */
.category-list-container[b-vlpij2q5ke] {
    max-height: 70vh;
    overflow-y: auto;
}

/* 汎用マスタ：テーブル列幅 */
.col-order-sm[b-vlpij2q5ke] {
    width: 80px;
}

.col-key-md[b-vlpij2q5ke] {
    width: 120px;
}

.col-status-sm[b-vlpij2q5ke] {
    width: 100px;
}

.col-action-md[b-vlpij2q5ke] {
    width: 120px;
}

/* 裁判所・公務所・銀行・保険：操作列幅 */
.col-action-sm[b-vlpij2q5ke] {
    width: 100px;
}

/* サイドバーの境界線強調 */
.border-start-4[b-vlpij2q5ke] {
    border-left: 4px solid transparent;
}

/* サイドバー選択時 */
.active-log-item[b-vlpij2q5ke] {
    background-color: var(--legal-accent-light) !important;
    border-left-color: var(--legal-accent) !important;
}

/* フォーム用ユーティリティ */
.label-small[b-vlpij2q5ke] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

.extra-small[b-vlpij2q5ke] {
    font-size: 0.75rem;
}

/* 拠点選択などの文字間隔 */
.ls-wide[b-vlpij2q5ke] {
    letter-spacing: 0.05em;
}
/* /Components/Pages/Maintenance/HolidayMaster.razor.rz.scp.css */
/* 休業日一覧のスクロール領域 */
.holiday-list-container[b-tk0toiozba] {
    max-height: 60vh;
    overflow-y: auto;
}

/* 一覧内の日付列の幅固定 */
.col-date-info[b-tk0toiozba] {
    min-width: 100px;
    text-align: center;
}

/* 左側にアクセントカラーのボーダーを付ける */
.border-accent[b-tk0toiozba] {
    border-left: 4px solid var(--legal-accent) !important;
}

/* 汎用的なクラス */
.text-accent[b-tk0toiozba] {
    color: var(--legal-accent);
}

.label-small[b-tk0toiozba] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

.extra-small[b-tk0toiozba] {
    font-size: 0.75rem;
}

/* 過去の休業日を半透明に */
.past-holiday[b-tk0toiozba] {
    opacity: 0.5;
}
/* /Components/Pages/Maintenance/RoomMaster.razor.rz.scp.css */
/* カラープレビューボックスの基本形状 */
.preview-box[b-bgibsdc8iw] {
    font-size: 0.85rem;
    font-weight: 800;
    border-radius: 8px;
    padding: 0.3rem 0.8rem;
    text-align: center;
    transition: transform 0.2s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* モーダル内プレビューの最小幅 */
.preview-box-large[b-bgibsdc8iw] {
    min-width: 200px;
}

/* テーブル列幅の固定 */
.col-order[b-bgibsdc8iw] {
    width: 100px;
}

.col-action[b-bgibsdc8iw] {
    width: 150px;
}

/* ユーティリティ */
.text-accent[b-bgibsdc8iw] {
    color: var(--legal-accent);
}

.border-accent-soft[b-bgibsdc8iw] {
    border-color: rgba(0, 194, 168, 0.2) !important;
}

.extra-small[b-bgibsdc8iw] {
    font-size: 0.75rem;
}

.label-small[b-bgibsdc8iw] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

.border-dashed[b-bgibsdc8iw] {
    border-style: dashed !important;
}
/* /Components/Pages/Maintenance/ServceIntegrationSettings.razor.rz.scp.css */
/* アイコンを包む円形コンテナ */
.icon-circle-wrapper[b-cnp4xb5sy5] {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 連携ボタンのホバー挙動 */
.btn-hover-effect[b-cnp4xb5sy5] {
    transition: all 0.2s ease;
}

    .btn-hover-effect:hover[b-cnp4xb5sy5] {
        transform: translateY(-1px);
    }
/* /Components/Pages/Maintenance/SystemSettings.razor.rz.scp.css */
/* 設定画面全体の幅制限 */
.settings-container[b-dbrhhgkw9n] {
    max-width: 900px;
    margin: 0 auto;
}

/* 小さめのラベル（マスタ画面共通スタイル） */
.label-small[b-dbrhhgkw9n] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
    margin-bottom: 6px;
    display: block;
}

/* タスクカラー設定用のカラーピッカー調整 */
.color-picker-refined[b-dbrhhgkw9n] {
    width: 35px;
    height: 35px;
    cursor: pointer;
    border-radius: 8px !important;
    transition: transform 0.2s;
}

    .color-picker-refined:hover[b-dbrhhgkw9n] {
        transform: scale(1.1);
    }

/* コード表示部分の固定幅 */
.code-display-box[b-dbrhhgkw9n] {
    width: 60px;
    text-align: center;
}

/* 削除ボタンなどのアイコンボタン */
.btn-icon[b-dbrhhgkw9n] {
    padding: 0.25rem 0.5rem;
    line-height: 1;
}

/* レスポンシブな余白調整 */
@media (min-width: 768px) {
    .mt-md-header[b-dbrhhgkw9n] {
        margin-top: 1.8rem !important;
    }
}
/* /Components/Pages/Maintenance/UserMaster.razor.rz.scp.css */
/* ユーザー一覧のカラー表示ボックス */
.user-color-box[b-jo52k4fafl] {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.1);
}

/* ユーザー編集モーダルのカラーピッカー */
.user-edit-color[b-jo52k4fafl] {
    width: 35px;
    height: 35px;
    cursor: pointer;
    border-radius: 8px !important;
}

/* 職種マスタ管理モーダルの幅 */
.job-master-dialog[b-jo52k4fafl] {
    max-width: 800px;
}

/* 職種マスタテーブルのスクロール */
.job-master-table[b-jo52k4fafl] {
    max-height: 400px;
    overflow-y: auto;
}

/* 共通ユーティリティの抽出 */
.label-small[b-jo52k4fafl] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

.extra-small[b-jo52k4fafl] {
    font-size: 0.75rem;
}

.bg-accent-soft[b-jo52k4fafl] {
    background-color: rgba(0, 194, 168, 0.1);
}

.border-accent-soft[b-jo52k4fafl] {
    border-color: rgba(0, 194, 168, 0.3) !important;
}

/* 汎用的な境界線設定 */
.border-transparent[b-jo52k4fafl] {
    border-left: 4px solid transparent;
}

.active-log-item[b-jo52k4fafl] {
    background-color: rgba(0, 194, 168, 0.1) !important;
    border-left-color: var(--legal-accent) !important;
}
/* /Components/Pages/Matter/CustomerPropertyList.razor.rz.scp.css */
/* 検索条件：案件選択の最小幅 */
.search-matter-select[b-u7ccht54y3] {
    min-width: 220px;
}

/* ラベルの文字間隔調整 */
.label-ls-wide[b-u7ccht54y3] {
    letter-spacing: 0.05em;
}

/* テーブル列幅の固定 */
.col-received-date[b-u7ccht54y3] {
    width: 120px;
}

.col-prop-status[b-u7ccht54y3] {
    width: 100px;
}

.col-related-matter[b-u7ccht54y3] {
    width: 150px;
}

.col-actions[b-u7ccht54y3] {
    width: 120px;
}

/* 備考欄の省略表示制限 */
.note-truncate[b-u7ccht54y3] {
    max-width: 400px;
}

/* 汎用クラス（必要に応じて） */
.extra-small[b-u7ccht54y3] {
    font-size: 0.7rem;
}

.bg-accent-subtle[b-u7ccht54y3] {
    background-color: rgba(0, 194, 168, 0.1);
}

.border-accent-soft[b-u7ccht54y3] {
    border-color: rgba(0, 194, 168, 0.25) !important;
}
/* /Components/Pages/Matter/DynamicCaseForm.razor.rz.scp.css */
/* タブヘッダーの独自装飾 */
.nav-tabs-majestic .nav-link[b-5iw6og2s4w] {
    border: none;
    border-bottom: 3px solid transparent;
    color: #6c757d;
    padding: 0.8rem 1.5rem;
    transition: all 0.2s;
}

    .nav-tabs-majestic .nav-link:hover[b-5iw6og2s4w] {
        color: var(--legal-primary);
        background-color: transparent;
    }

    .nav-tabs-majestic .nav-link.active[b-5iw6og2s4w] {
        color: var(--legal-primary);
        border-bottom-color: var(--legal-primary);
        background-color: transparent;
    }

/* フォーム用ラベル */
.label-small[b-5iw6og2s4w] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

/* バッジ等の極小テキスト */
.extra-small[b-5iw6og2s4w] {
    font-size: 0.75rem;
}

/* セクション区切りのヘッダー */
.form-section-header[b-5iw6og2s4w] {
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
/* /Components/Pages/Matter/MatterDetail.razor.rz.scp.css */
/* ローディングコンテナ */
.karte-loader-container[b-msqguimo8a] {
    height: 60vh;
}

/* ヘッダー内の垂直区切り線 */
.vr-divider[b-msqguimo8a] {
    min-height: 45px;
    border-left: 1px solid rgba(0,0,0,0.1);
}

/* 専門家・担当者選択の幅 */
.expert-select[b-msqguimo8a] {
    min-width: 140px;
    cursor: pointer;
    margin-top: 2px;
}

/* 関係者一覧の備考省略 */
.party-note-text[b-msqguimo8a] {
    max-width: 250px;
}

/* タスクのチェックボックス強調 */
.task-check-lg[b-msqguimo8a] {
    transform: scale(1.1);
}

/* 訴訟セクションの専用カラー */
.border-top-litigation[b-msqguimo8a] {
    border-top: 4px solid #6f42c1 !important;
}

.text-litigation[b-msqguimo8a] {
    color: #6f42c1 !important;
}

/* フォーム用ラベル */
.label-small[b-msqguimo8a] {
    font-size: 0.8rem;
    font-weight: 700;
}

/* 特記事項のピン留め背景 */
.note-pinned[b-msqguimo8a] {
    background-color: rgba(220, 53, 69, 0.05); /* bg-danger bg-opacity-10 */
    border-left: 4px solid #dc3545 !important;
}

/* Zoomボタンの微調整 */
.btn-zoom[b-msqguimo8a] {
    font-size: 0.72rem;
    height: 22px;
    background-color: #2D8CFF;
    border: none;
}

/* モーダルヘッダーのバリエーション */
.modal-header-purple[b-msqguimo8a] {
    background-color: #f3e8ff;
}

.modal-header-blue[b-msqguimo8a] {
    background-color: #e0f2fe;
}

/* 関係者モーダルの入力欄背景 */
.bg-form-sub[b-msqguimo8a] {
    background-color: #f8f9fa;
}

/* 点線の境界線 */
.border-dashed[b-msqguimo8a] {
    border-style: dashed !important;
}
/* /Components/Pages/Matter/MatterEdit.razor.rz.scp.css */
/* 顧客アバターの円形アイコン */
.avatar-circle[b-l2t9vwh6m8] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

/* フォーム用ラベル */
.label-small[b-l2t9vwh6m8] {
    font-size: 0.8rem;
    font-weight: 700;
}

/* 補足テキスト */
.x-small[b-l2t9vwh6m8] {
    font-size: 0.72rem;
}

/* コンフリクトチェックの警告ボックス */
.conflict-check-zone[b-l2t9vwh6m8] {
    border-left: 4px solid #ffc107;
}

/* 利益相反警告のアラート内リスト */
.conflict-list[b-l2t9vwh6m8] {
    margin-bottom: 0;
    padding-left: 1.2rem;
    font-size: 0.85rem;
}

/* 共通パーツ：アクセントカラー下線 */
.border-bottom-accent[b-l2t9vwh6m8] {
    border-bottom: 2px solid var(--legal-accent-light) !important;
}
/* /Components/Pages/Matter/MatterList.razor.rz.scp.css */
/* テーブルのカラム幅固定 */
.col-case-type[b-2k58j6918d] {
    width: 100px;
}

.col-customer-cd[b-2k58j6918d] {
    width: 90px;
}

.col-matter-cd[b-2k58j6918d] {
    width: 90px;
}

.col-name[b-2k58j6918d] {
    min-width: 150px;
}

.col-title[b-2k58j6918d] {
    min-width: 200px;
}

.col-status[b-2k58j6918d] {
    width: 110px;
}

.col-staff[b-2k58j6918d] {
    width: 100px;
}

.col-lawyer[b-2k58j6918d] {
    width: 100px;
}

.col-phone[b-2k58j6918d] {
    width: 120px;
}

.col-address[b-2k58j6918d] {
    width: 150px;
}

.col-action[b-2k58j6918d] {
    width: 90px;
}

/* テーブルのホバー装飾 */
.table-hover-custom tbody tr[b-2k58j6918d] {
    transition: all 0.2s ease;
}

    .table-hover-custom tbody tr:hover[b-2k58j6918d] {
        background-color: rgba(0, 194, 168, 0.03) !important;
        box-shadow: inset 2px 0 0 var(--legal-accent);
    }

/* ステータスバッジのベース */
.status-badge[b-2k58j6918d] {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    padding: 0.4em 0.8em;
}

/* ページネーションのカスタマイズ */
.pagination .page-link[b-2k58j6918d] {
    color: var(--legal-text-muted);
    border: none;
    margin: 0 2px;
    border-radius: 8px !important;
}

.pagination .page-item.active .page-link[b-2k58j6918d] {
    background-color: var(--legal-primary);
    color: white;
    box-shadow: 0 4px 10px rgba(0, 38, 34, 0.2);
}

/* フォーム補足テキスト */
.label-small[b-2k58j6918d] {
    font-size: 0.8rem;
}

.x-small[b-2k58j6918d] {
    font-size: 0.7rem;
}

/* データなしのハイフン表示用 */
.text-null[b-2k58j6918d] {
    color: #cbd5e1;
    font-family: var(--font-family-soft);
}
/* /Components/Pages/Matter/ReceptionEdit.razor.rz.scp.css */
/* 顧客アバターの円形アイコン */
.avatar-circle[b-bbo8gwg1b3] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* 名前入力エリアの背景装飾 */
.name-input-zone[b-bbo8gwg1b3] {
    background-color: #fcfcfc;
    border: 1px solid #edf2f7;
}

/* ラジオボタン（区分選択）の高さ調整 */
.radio-group-container[b-bbo8gwg1b3] {
    height: 34px;
}

/* サブ連絡先の削除ボタン */
.subcontact-close-btn[b-bbo8gwg1b3] {
    font-size: 0.65rem;
    padding: 0.25rem;
}

/* フォーム用ラベル */
.label-small[b-bbo8gwg1b3] {
    font-size: 0.8rem;
    font-weight: 700;
}

.x-small[b-bbo8gwg1b3] {
    font-size: 0.72rem;
}

/* セクション区切りの装飾 */
.section-border[b-bbo8gwg1b3] {
    border-bottom: 2px solid var(--legal-accent-light);
}
/* /Components/Pages/Matter/ReceptionList.razor.rz.scp.css */
/* フォーム用ラベル */
.label-small[b-eu4aho9wz8] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--legal-text-muted);
}

.x-small[b-eu4aho9wz8] {
    font-size: 0.72rem;
}

/* テーブル列幅の固定 */
.col-customer-cd[b-eu4aho9wz8] {
    width: 120px;
}

.col-phone[b-eu4aho9wz8] {
    width: 140px;
}

.col-address[b-eu4aho9wz8] {
    max-width: 200px;
}

.col-matters[b-eu4aho9wz8] {
    min-width: 220px;
}

.col-actions[b-eu4aho9wz8] {
    width: 120px;
}

/* 関与案件のソフトなバッジ（チップ） */
.badge-pill-soft[b-eu4aho9wz8] {
    background-color: rgba(13, 110, 253, 0.08); /* bg-primary 相当の薄い色 */
    color: var(--legal-primary);
    border: 1px solid rgba(13, 110, 253, 0.15);
    border-radius: 50rem;
    font-size: 0.75rem;
    padding: 0.25rem 0.75rem;
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: all 0.2s;
}

    .badge-pill-soft:hover[b-eu4aho9wz8] {
        background-color: var(--legal-primary);
        color: white;
    }

/* 「他○件」のバッジ */
.badge-more[b-eu4aho9wz8] {
    font-size: 0.7rem;
    padding: 0.35rem 0.6rem;
    cursor: help;
}

/* 検索結果テーブルのホバー挙動 */
.table-hover tbody tr:hover[b-eu4aho9wz8] {
    background-color: rgba(0, 194, 168, 0.03) !important;
}
/* /Components/Pages/PersonalSettings.razor.rz.scp.css */
/* フォーム共通 */
.label-small[b-mnanqkb8f5] {
    font-size: 0.8rem;
    font-weight: 700;
}

.x-small[b-mnanqkb8f5] {
    font-size: 0.72rem;
}

/* メモ入力カード（点線ボーダー） */
.memo-input-card[b-mnanqkb8f5] {
    border-radius: 1.25rem;
    border-width: 2px;
    border-style: dashed;
}

/* メモカード（付箋風） */
.memo-card[b-mnanqkb8f5] {
    border-left: 8px solid rgba(0,0,0,0.08) !important;
    transition: all 0.2s ease;
}

    .memo-card:hover[b-mnanqkb8f5] {
        transform: translateY(-3px) rotate(0.5deg);
        box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
    }

/* カラーピッカー（丸い点） */
.color-dot-wrapper[b-mnanqkb8f5] {
    cursor: pointer;
}

.color-dot[b-mnanqkb8f5] {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    border: 2px solid rgba(0,0,0,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.2s;
}

    .color-dot.active[b-mnanqkb8f5] {
        border-color: var(--legal-primary);
        box-shadow: 0 0 10px rgba(59, 130, 246, 0.5);
        transform: scale(1.1);
    }

/* システム設定のトグルスイッチ */
.switch-lg[b-mnanqkb8f5] {
    transform: scale(1.3);
    margin: 0;
}

.switch-label-adjusted[b-mnanqkb8f5] {
    padding-top: 1px;
}

/* 階層構造のインデント */
.nested-setting[b-mnanqkb8f5] {
    margin-left: 3rem;
    transition: opacity 0.3s ease;
}

/* 汎用アニメーション */
.transition-color[b-mnanqkb8f5] {
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.transition-all[b-mnanqkb8f5] {
    transition: all 0.2s ease;
}
/* /Components/Pages/Reports/DocumentOutputModal.razor.rz.scp.css */
/* モーダル幅の微調整 */
.modal-w-600[b-hl26dgfrie] {
    max-width: 600px;
}

/* サブフォルダ一覧のスクロール領域 */
.folder-scroll-area[b-hl26dgfrie] {
    max-height: 350px;
    overflow-y: auto;
}

/* テンプレート一覧のスクロール領域 */
.template-scroll-area[b-hl26dgfrie] {
    max-height: 400px;
    overflow-y: auto;
}

/* フォルダ選択のラジオボタン風UI */
.folder-option[b-hl26dgfrie] {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    border-radius: 6px;
    cursor: pointer;
    border: 1px solid transparent;
    transition: all 0.2s;
    font-size: 0.9rem;
}

    .folder-option:hover[b-hl26dgfrie] {
        background-color: #e9ecef;
    }

    .folder-option.selected[b-hl26dgfrie] {
        background-color: #fff;
        border-color: var(--legal-primary);
        color: var(--legal-primary);
        font-weight: bold;
        box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    }
/* /Components/Pages/Reports/ReportsList.razor.rz.scp.css */
/* ファイル行のホバー */
.file-row:hover[b-7svrc7gawx] {
    background-color: #f0f9ff !important;
}

/* 選択中のカテゴリ（左サイドバー） */
.active-majestic[b-7svrc7gawx] {
    background-color: #f0fdfa !important;
    color: var(--legal-accent) !important;
    font-weight: bold;
    border-left: 4px solid var(--legal-accent) !important;
}

/* 案件固定モード時のカード */
.locked-context-card[b-7svrc7gawx] {
    transition: transform 0.2s;
}

/* パンくずリストの区切り文字（アイコン） */
.breadcrumb-item + .breadcrumb-item[b-7svrc7gawx]::before {
    content: "\F285"; /* Bootstrap Icons の chevron-right */
    font-family: "bootstrap-icons";
    font-size: 0.6rem;
    color: #cbd5e1;
}

/* 微調整ユーティリティ */
.extra-small[b-7svrc7gawx] {
    font-size: 0.7rem;
}

.border-accent-soft[b-7svrc7gawx] {
    border-color: rgba(0, 194, 168, 0.25) !important;
}
/* /Components/Pages/Rooms/RoomCreate.razor.rz.scp.css */
/* フォーム全体の最大幅を制限 */
.create-container[b-y3z1xdnkzb] {
    max-width: 850px;
}
/* /Components/Pages/Rooms/RoomEdit.razor.rz.scp.css */
.edit-container[b-qm0vgeci15] {
    max-width: 850px;
}
/* /Components/Pages/Rooms/RoomList.razor.rz.scp.css */
/* 拠点選択（セレクトボックス）の幅 */
.branch-selector[b-ono7op52c9] {
    min-width: 200px;
}

/* 会議室名ヘッダーの高さ固定 */
.room-header[b-ono7op52c9] {
    height: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* タイムラインの本体領域（スクロールコンテナ） */
.day-view-scroll[b-ono7op52c9] {
    max-height: calc(100vh - 240px);
    height: auto;
    background: #fff;
}

/* 現在時刻ラインの微調整 */
.now-indicator[b-ono7op52c9] {
    left: 70px; /* 時間軸ラベルの幅に合わせる */
    right: 0;
    position: absolute;
    pointer-events: none;
    z-index: 50;
}

/* 今日（本日）の背景強調 */
.bg-today[b-ono7op52c9] {
    background-color: #f0fdfa !important;
}
/* /Components/Pages/Tasks/TaskEdit.razor.rz.scp.css */
/* コンテナの幅固定 */
.edit-container[b-prsypv9v0l] {
    max-width: 850px;
    margin: 0 auto;
    padding: 0.5rem 1rem;
}

/* フォームの各セクション */
.form-section[b-prsypv9v0l] {
    padding: 1.25rem;
    border: 1px solid #e2e8f0;
    border-radius: 0.75rem;
    background-color: #fff;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 3px rgba(0,0,0,0.03);
}

.section-title[b-prsypv9v0l] {
    font-size: 0.82rem;
    font-weight: 800;
    color: #475569;
    margin-bottom: 1rem;
    border-left: 4px solid #3b82f6;
    padding-left: 0.75rem;
    text-transform: uppercase;
}

.label-small[b-prsypv9v0l] {
    font-size: 0.78rem;
    font-weight: 700;
    color: #64748b;
    margin-bottom: 0.35rem;
}

.input-refined-sm[b-prsypv9v0l] {
    font-size: 0.9rem;
    border-color: #cbd5e1;
    height: 38px !important;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    line-height: 1.5;
}

    .input-refined-sm:disabled[b-prsypv9v0l], .form-select:disabled[b-prsypv9v0l] {
        background-color: #f8fafc;
        color: #94a3b8;
    }

/* テキストエリアの高さ自動調整オーバーライド */
.textarea-auto-height[b-prsypv9v0l] {
    height: auto !important;
}

/* カラーピッカーの丸い点 */
.color-circle[b-prsypv9v0l] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid transparent;
    transition: all 0.1s;
}

    .color-circle.active[b-prsypv9v0l] {
        border-color: #3b82f6;
        transform: scale(1.15);
        box-shadow: 0 0 5px rgba(59, 130, 246, 0.5);
    }

    .color-circle.disabled-color[b-prsypv9v0l] {
        cursor: not-allowed;
        opacity: 0.5;
    }

/* ステータス（完了/未完了）行 */
.status-row-full[b-prsypv9v0l] {
    border: 1px solid #e2e8f0;
    min-height: 3.5rem;
    transition: background-color 0.3s;
}

.status-label-main[b-prsypv9v0l] {
    font-size: 0.9rem;
    font-weight: 700;
}

/* カスタムトグルスイッチのサイズ変更 */
.toggle-custom[b-prsypv9v0l] {
    width: 3rem !important;
    height: 1.5rem !important;
    cursor: pointer;
}

/* アニメーション */
.animate-fade[b-prsypv9v0l] {
    animation: fadeIn-b-prsypv9v0l 0.3s ease-out;
}

@keyframes fadeIn-b-prsypv9v0l {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 定型タスク時のバッジ微調整 */
.badge-readonly[b-prsypv9v0l] {
    font-size: 0.7em;
}

/* 完了時間のフォント微調整 */
.fin-time-label[b-prsypv9v0l] {
    font-size: 0.7rem;
}
