/* /Components/Auth/Apply.razor.rz.scp.css */
.apply-input[b-bveycc8ntt] {
    width: 100%;
    box-sizing: border-box;
}

/* 人には見えない罠の欄（display:none だけだとボットに見抜かれるため、画面の外へ置く） */
.apply-hp[b-bveycc8ntt] {
    position: absolute;
    left: -9999px;
    height: 0;
    overflow: hidden;
}

/* 入力に誤りがあるときに並べる決まり */
.apply-guidance[b-bveycc8ntt] {
    margin: 6px 0 0;
    padding-left: 1.2em;
    text-align: left;
}
/* /Components/Auth/ForgotPassword.razor.rz.scp.css */
.auth-page[b-0q47skafe8] {
    min-height: calc(100vh - 120px);
    display: grid;
    place-items: center;
    padding: 24px;
    background: var(--rz-base-background-color, var(--hl-color-f6f7f9));
}

.auth-header[b-0q47skafe8] {
    margin-bottom: 14px;
}

.auth-sub[b-0q47skafe8] {
    margin-top: 6px;
    font-size: 12px;
    opacity: .7;
}

.auth-error[b-0q47skafe8] {
    padding: 10px 12px;
    border-radius: 8px;
    background: var(--hl-color-d32f2f-a08);
    color: var(--hl-color-d32f2f);
    margin: 12px 0 10px;
    font-size: 13px;
}

.auth-success[b-0q47skafe8] {
    padding: 10px 12px;
    border-radius: 8px;
    background: var(--rz-success-lighter);
    color: var(--rz-success-darker);
    margin: 12px 0 10px;
    font-size: 13px;
    line-height: 1.6;
}

.auth-form[b-0q47skafe8] {
    display: block;
}

.auth-field[b-0q47skafe8] {
    margin-top: 12px;
}

.auth-row[b-0q47skafe8] {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
/* /Components/Auth/Login.razor.rz.scp.css */
body[b-2esav8dkr9] {
}


.auth-page[b-2esav8dkr9] {
    min-height: calc(100vh - 120px);
    display: grid;
    place-items: center;
    padding: 24px;
    background: var(--rz-base-background-color, var(--hl-color-f6f7f9));
}

.auth-header[b-2esav8dkr9] {
    margin-bottom: 14px;
}

.auth-sub[b-2esav8dkr9] {
    margin-top: 6px;
    font-size: 12px;
    opacity: .7;
}

.auth-error[b-2esav8dkr9] {
    padding: 10px 12px;
    border-radius: 8px;
    background: var(--hl-color-d32f2f-a08);
    color: var(--hl-color-d32f2f);
    margin: 12px 0 10px;
    font-size: 13px;
}

.auth-form[b-2esav8dkr9] {
    display: block;
}

.auth-field[b-2esav8dkr9] {
    margin-top: 12px;
}

.auth-row[b-2esav8dkr9] {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.auth-remember[b-2esav8dkr9] {
    display: flex;
    align-items: center;
    gap: 8px;
    user-select: none;
    font-size: 13px;
}


.auth-success[b-2esav8dkr9] {
    padding: 10px 12px;
    border-radius: 8px;
    background: var(--rz-success-lighter);
    color: var(--rz-success-darker);
    margin: 12px 0 10px;
    font-size: 13px;
}
/* /Components/Auth/SetPassword.razor.rz.scp.css */
.auth-page[b-kvlihqzxxo] {
    min-height: calc(100vh - 120px);
    display: grid;
    place-items: center;
    padding: 24px;
    background: var(--rz-base-background-color, var(--hl-color-f6f7f9));
}

.auth-header[b-kvlihqzxxo] {
    margin-bottom: 14px;
}

.auth-sub[b-kvlihqzxxo] {
    margin-top: 6px;
    font-size: 12px;
    opacity: .7;
}

.auth-error[b-kvlihqzxxo] {
    padding: 10px 12px;
    border-radius: 8px;
    background: var(--hl-color-d32f2f-a08);
    color: var(--hl-color-d32f2f);
    margin: 12px 0 10px;
    font-size: 13px;
}

.auth-success[b-kvlihqzxxo] {
    padding: 10px 12px;
    border-radius: 8px;
    background: var(--rz-success-lighter);
    color: var(--rz-success-darker);
    margin: 12px 0 10px;
    font-size: 13px;
    line-height: 1.6;
}

.auth-form[b-kvlihqzxxo] {
    display: block;
}

.auth-field[b-kvlihqzxxo] {
    margin-top: 12px;
}

.auth-row[b-kvlihqzxxo] {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
/* /Components/Layout/BotPanel.razor.rz.scp.css */
.bot-wrapper[b-9yfxpllevg] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
}

/* トグルボタン */
.bot-toggle-btn[b-9yfxpllevg] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    border: none;
    background: var(--rz-primary, #3d63db);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
    transition: background 0.2s, transform 0.2s;
    font-size: 24px;
}

.bot-toggle-btn:hover[b-9yfxpllevg] {
    background: var(--rz-primary-dark, #2d4fb8);
    transform: scale(1.07);
}

.bot-toggle-btn.open[b-9yfxpllevg] {
    background: var(--rz-danger, #e53935);
}

/* パネル */
.bot-panel[b-9yfxpllevg] {
    width: 360px;
    max-height: 520px;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    overflow: hidden;
    animation: bot-slide-in-b-9yfxpllevg var(--hl-motion-duration) var(--hl-motion-ease);
}

@keyframes bot-slide-in-b-9yfxpllevg {
    from { opacity: 0; transform: translateY(16px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ヘッダー */
.bot-header[b-9yfxpllevg] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    background: var(--rz-primary, #3d63db);
    color: #fff;
    font-weight: 600;
    font-size: 14px;
}

.bot-icon-btn[b-9yfxpllevg] {
    background: transparent;
    border: none;
    color: rgba(255,255,255,0.85);
    cursor: pointer;
    padding: 2px;
    display: flex;
    align-items: center;
    border-radius: 4px;
    transition: color 0.15s, background 0.15s;
}

.bot-icon-btn:hover[b-9yfxpllevg] {
    color: #fff;
    background: rgba(255,255,255,0.15);
}

/* メッセージ一覧 */
.bot-messages[b-9yfxpllevg] {
    flex: 1;
    overflow-y: auto;
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: #f5f7fb;
    min-height: 200px;
}

.bot-placeholder[b-9yfxpllevg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: #9aa0b0;
    text-align: center;
    font-size: 13px;
    gap: 8px;
    padding: 24px 0;
}

.bot-placeholder .rzi[b-9yfxpllevg] {
    font-size: 36px;
    opacity: 0.5;
}

/* バブル */
.bot-bubble-row[b-9yfxpllevg] {
    display: flex;
}

.bot-bubble-row.user[b-9yfxpllevg] {
    justify-content: flex-end;
}

.bot-bubble-row.assistant[b-9yfxpllevg] {
    justify-content: flex-start;
}

.bot-bubble[b-9yfxpllevg] {
    max-width: 82%;
    padding: 9px 13px;
    border-radius: 14px;
    font-size: 13px;
    line-height: 1.55;
    word-break: break-word;
}

.bot-bubble-row.user .bot-bubble[b-9yfxpllevg] {
    background: var(--rz-primary, #3d63db);
    color: #fff;
    border-bottom-right-radius: 4px;
}

.bot-bubble-row.assistant .bot-bubble[b-9yfxpllevg] {
    background: #fff;
    color: #333;
    border: 1px solid #e0e4ef;
    border-bottom-left-radius: 4px;
}

/* タイピングアニメーション */
.bot-typing[b-9yfxpllevg] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 12px 16px;
}

.bot-typing span[b-9yfxpllevg] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #9aa0b0;
    animation: bot-dot-b-9yfxpllevg 1.2s infinite ease-in-out;
}

.bot-typing span:nth-child(2)[b-9yfxpllevg] { animation-delay: 0.2s; }
.bot-typing span:nth-child(3)[b-9yfxpllevg] { animation-delay: 0.4s; }

@keyframes bot-dot-b-9yfxpllevg {
    0%, 80%, 100% { transform: scale(0.7); opacity: 0.5; }
    40%            { transform: scale(1);   opacity: 1; }
}

/* 入力エリア */
.bot-input-area[b-9yfxpllevg] {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    padding: 10px 12px;
    border-top: 1px solid #e0e4ef;
    background: #fff;
}

.bot-textarea[b-9yfxpllevg] {
    flex: 1;
    resize: none;
    border: 1px solid #d0d4e0;
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 13px;
    font-family: inherit;
    outline: none;
    transition: border-color 0.15s;
    color: #333;
}

.bot-textarea:focus[b-9yfxpllevg] {
    border-color: var(--rz-primary, #3d63db);
}

.bot-textarea:disabled[b-9yfxpllevg] {
    background: #f5f7fb;
    cursor: not-allowed;
}

.bot-send-btn[b-9yfxpllevg] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: none;
    background: var(--rz-primary, #3d63db);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.15s;
}

.bot-send-btn:hover:not(:disabled)[b-9yfxpllevg] {
    background: var(--rz-primary-dark, #2d4fb8);
}

.bot-send-btn:disabled[b-9yfxpllevg] {
    background: #c0c8e0;
    cursor: not-allowed;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-jrfba9e9rx] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-jrfba9e9rx] {
    flex: 1;
}

.sidebar[b-jrfba9e9rx] {
    background-image: linear-gradient(180deg, var(--hl-sidebar-gradient-start) 0%, var(--hl-sidebar-gradient-end) 70%);
}

.top-row[b-jrfba9e9rx] {
    background-color: var(--hl-surface-panel);
    border-bottom: 1px solid var(--hl-color-d6d5d5);
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-jrfba9e9rx]  a, .top-row[b-jrfba9e9rx]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-jrfba9e9rx]  a:hover, .top-row[b-jrfba9e9rx]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-jrfba9e9rx]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-jrfba9e9rx] {
        justify-content: space-between;
    }

    .top-row[b-jrfba9e9rx]  a, .top-row[b-jrfba9e9rx]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-jrfba9e9rx] {
        flex-direction: row;
    }

    .sidebar[b-jrfba9e9rx] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-jrfba9e9rx] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-jrfba9e9rx]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-jrfba9e9rx], article[b-jrfba9e9rx] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-jrfba9e9rx] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px var(--hl-color-000000-a20);
    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-jrfba9e9rx] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }


/* NOTE: .rz-body は RadzenBody の内部要素を指すためスコープ属性が付かず、このルールは効いていない。
   適用すると全ページの余白が変わるため、意図的に未適用のまま残している（article.content 側で padding:0 済み）。 */
.rz-body[b-jrfba9e9rx] {
    padding: 0 !important;
}

/* MainLayout �� Body ���b�p�[ */
article.content[b-jrfba9e9rx] {
    padding: 0 !important;
    margin: 0;
    height: 100%;
}












.hl-header-actions[b-jrfba9e9rx] {
    gap: 14px;
}

.hl-header-link[b-jrfba9e9rx] {
    text-decoration: none;
    color: var(--rz-text-color);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 500;
}

    .hl-header-link:hover[b-jrfba9e9rx] {
        text-decoration: underline;
        opacity: 0.8;
    }

/* POST�p�{�^���������N���� */
.hl-header-link-button[b-jrfba9e9rx] {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: var(--rz-text-color);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-weight: 500;
}

    .hl-header-link-button:hover[b-jrfba9e9rx] {
        text-decoration: underline;
        opacity: 0.8;
    }



.hl-header-link[b-jrfba9e9rx],
.hl-header-link-button[b-jrfba9e9rx] {
    text-decoration: none;
    color: var(--rz-text-color);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

    .hl-header-link:hover[b-jrfba9e9rx],
    .hl-header-link-button:hover[b-jrfba9e9rx] {
        text-decoration: underline;
        opacity: 0.85;
    }

/* POST�p�{�^���������N���� */
.hl-header-link-button[b-jrfba9e9rx] {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    font: inherit; /* ���d�v�F�ςȕ�������/�t�H���g����h�~ */
}

/* �E��̃��[�U�[�\���{���O�A�E�g��1�s�Ŋ��S�ɑ����� */
.hl-header-auth[b-jrfba9e9rx] {
    display: inline-flex;
    align-items: center; /* ���c�ʒu���� */
    gap: 14px;
    height: 32px; /* �������Œ�i�����������j */
    line-height: 32px; /* ���x�[�X���C�������ׂ� */
}

/* ���[�U�[���̍s����������/�s���ɂ��� */
.hl-header-user[b-jrfba9e9rx] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    line-height: 32px;
}

/* form ������ɍ����������Ȃ��悤�� */
.hl-header-form[b-jrfba9e9rx] {
    margin: 0;
    display: inline-flex;
    align-items: center;
    height: 32px;
}

/* POST�p�{�^���������N�����ڂɁi������������j */
.hl-header-link-button[b-jrfba9e9rx] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    line-height: 32px;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    font: inherit;
    color: inherit;
}

    .hl-header-link-button:hover[b-jrfba9e9rx] {
        text-decoration: underline;
        opacity: 0.85;
    }

/* =========================
   Mobile (<= 768px)
========================= */
@media (max-width: 768px) {
    /* ログインユーザー名を非表示 */
    .hl-header-user[b-jrfba9e9rx] {
        display: none !important;
    }

    /* ログアウトのテキスト部分を非表示（アイコンのみ） */
    .hl-header-logout-text[b-jrfba9e9rx] {
        display: none;
    }

    /* ログアウトボタンをコンパクトに */
    .hl-header-link-button[b-jrfba9e9rx] {
        padding: 4px !important;
        gap: 0 !important;
    }

    /* ヘッダー右側の余白を詰める */
    .hl-header-auth[b-jrfba9e9rx] {
        gap: 4px !important;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.op-toast[b-wj6us62jrv] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 9999;
    background: var(--hl-color-1e293b);
    color: var(--hl-color-fff);
    padding: 12px 20px;
    border-radius: 10px;
    font-size: .85rem;
    font-weight: 600;
    box-shadow: 0 4px 16px var(--hl-color-000000-a25);
    animation: op-toast-in-b-wj6us62jrv var(--hl-motion-duration) var(--hl-motion-ease);
    pointer-events: none;
}

@keyframes op-toast-in-b-wj6us62jrv {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}
/* /Components/Layout/OperatorContactBadge.razor.rz.scp.css */
.ocb-wrap[b-cqo618sn4w] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.ocb-btn[b-cqo618sn4w] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border: 1px solid var(--hl-color-ffffff-a35);
    border-radius: 6px;
    background: var(--hl-color-ffffff-a12);
    color: var(--rz-text-color);
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    transition: background .15s;
}

.ocb-btn:hover[b-cqo618sn4w] {
    background: var(--hl-color-ffffff-a22);
}

.ocb-label[b-cqo618sn4w] {
    letter-spacing: .02em;
}

.ocb-arrow[b-cqo618sn4w] {
    font-size: 10px;
    opacity: .7;
}

.ocb-backdrop[b-cqo618sn4w] {
    position: fixed;
    inset: 0;
    z-index: 1000;
}

.ocb-dropdown[b-cqo618sn4w] {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 1001;
    background: var(--hl-color-fff);
    border: 1px solid var(--hl-color-ddd);
    border-radius: 8px;
    box-shadow: 0 4px 16px var(--hl-color-000000-a15);
    min-width: 130px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.ocb-option[b-cqo618sn4w] {
    padding: 9px 16px;
    border: none;
    background: none;
    cursor: pointer;
    font-size: 13px;
    text-align: left;
    color: var(--hl-color-333);
    transition: background .1s;
}

.ocb-option:hover[b-cqo618sn4w] {
    background: var(--hl-color-f0f4ff);
}

.ocb-option--active[b-cqo618sn4w] {
    background: var(--hl-color-e3f0ff);
    color: var(--hl-accent-dark);
    font-weight: 700;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-a8h3pn5aol],
.components-reconnect-repeated-attempt-visible[b-a8h3pn5aol],
.components-reconnect-failed-visible[b-a8h3pn5aol],
.components-pause-visible[b-a8h3pn5aol],
.components-resume-failed-visible[b-a8h3pn5aol],
.components-rejoining-animation[b-a8h3pn5aol] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-retrying[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-failed[b-a8h3pn5aol],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-a8h3pn5aol] {
    display: block;
}


#components-reconnect-modal[b-a8h3pn5aol] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px var(--hl-color-000000-a30);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-a8h3pn5aol 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-a8h3pn5aol 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-a8h3pn5aol 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-a8h3pn5aol]::backdrop {
    background-color: var(--hl-color-000000-a40);
    animation: components-reconnect-modal-fadeInOpacity-b-a8h3pn5aol 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-a8h3pn5aol {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-a8h3pn5aol {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-a8h3pn5aol {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-a8h3pn5aol] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-a8h3pn5aol] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-a8h3pn5aol] {
    border: 0;
    background-color: var(--hl-color-6b9ed2);
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-a8h3pn5aol] {
        background-color: var(--hl-color-3b6ea2);
    }

    #components-reconnect-modal button:active[b-a8h3pn5aol] {
        background-color: var(--hl-color-6b9ed2);
    }

.components-rejoining-animation[b-a8h3pn5aol] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-a8h3pn5aol] {
        position: absolute;
        border: 3px solid var(--hl-color-0087ff);
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-a8h3pn5aol 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-a8h3pn5aol] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-a8h3pn5aol {
    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/ClientUser/Gantt/GanttPinPickerDialog.razor.rz.scp.css */
.gpp-root[b-lbcb4l0jkn] {
    min-width: 0;
}

.gpp-pin[b-lbcb4l0jkn] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    padding: 0;
    background: none;
    border: 1px solid transparent;
    border-radius: 4px;
    cursor: pointer;
    color: var(--rz-text-disabled-color);
}

.gpp-pin:hover[b-lbcb4l0jkn] {
    background: var(--rz-base-200);
    color: var(--rz-text-secondary-color);
}

.gpp-pin--on[b-lbcb4l0jkn] {
    color: var(--rz-primary);
}
/* /Components/Pages/ClientUser/Home.razor.rz.scp.css */
.db-page[b-d5xef8xj74] {
    display: flex; flex-direction: column;
    height: 100%; background: var(--hl-color-f1f5f9);
}

/* ── Header ── */
.db-header[b-d5xef8xj74] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 14px 24px;
    background: var(--hl-color-fff); border-bottom: 1px solid var(--hl-color-e2e8f0);
    box-shadow: 0 1px 4px var(--hl-color-000000-a06);
}
.db-header-left[b-d5xef8xj74] { display: flex; align-items: baseline; gap: 12px; }
.db-title[b-d5xef8xj74] { font-size: 1.05rem; font-weight: 700; color: var(--hl-color-0f172a); }
.db-date[b-d5xef8xj74]  { font-size: .78rem; color: var(--hl-color-94a3b8); }

.db-refresh[b-d5xef8xj74] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 15px;
    background: var(--hl-color-3b82f6); color: var(--hl-color-fff);
    border: none; border-radius: 8px;
    font-size: .82rem; font-weight: 600;
    cursor: pointer; white-space: nowrap;
    transition: background .15s, transform .1s;
}
.db-refresh:hover:not(:disabled)[b-d5xef8xj74]  { background: var(--hl-color-2563eb); }
.db-refresh:active:not(:disabled)[b-d5xef8xj74] { transform: scale(.97); }
.db-refresh:disabled[b-d5xef8xj74],
.db-refresh--busy[b-d5xef8xj74] { background: var(--hl-color-94a3b8); cursor: not-allowed; }

/* ── Body / cards wrapper ── */
.db-body[b-d5xef8xj74] {
    flex: 1; overflow-y: auto;
    padding: 28px 24px;
}

.db-cards[b-d5xef8xj74] {
    display: flex; flex-direction: column; gap: 16px;
}
.db-card-row[b-d5xef8xj74] {
    display: flex; gap: 20px; flex-wrap: wrap;
}

/* ── Card ── */
.db-card[b-d5xef8xj74] {
    flex: 1; min-width: 220px; max-width: 320px;
    background: var(--hl-color-fff);
    border-radius: 16px;
    border: 1px solid var(--hl-color-e2e8f0);
    box-shadow: 0 2px 8px var(--hl-color-000000-a06);
    padding: 24px 28px;
    display: flex; flex-direction: column; gap: 8px;
    transition: box-shadow .15s, transform .15s, outline .1s;
    cursor: pointer;
    user-select: none;
}
.db-card:hover[b-d5xef8xj74] {
    box-shadow: 0 6px 20px var(--hl-color-000000-a10);
    transform: translateY(-2px);
}
.db-card--active[b-d5xef8xj74] {
    outline: 2px solid var(--hl-color-3b82f6);
    outline-offset: 2px;
    box-shadow: 0 0 0 5px var(--hl-color-3b82f6-a12), 0 6px 20px var(--hl-color-000000-a10);
    transform: translateY(-2px);
}
.db-card--inbound-today.db-card--active[b-d5xef8xj74],
.db-card--inbound-future.db-card--active[b-d5xef8xj74] {
    outline-color: var(--hl-color-10b981);
    box-shadow: 0 0 0 5px var(--hl-color-10b981-a12), 0 6px 20px var(--hl-color-000000-a10);
}
.db-card--storage-today.db-card--active[b-d5xef8xj74],
.db-card--storage-future.db-card--active[b-d5xef8xj74] {
    outline-color: var(--hl-color-f59e0b);
    box-shadow: 0 0 0 5px var(--hl-color-f59e0b-a12), 0 6px 20px var(--hl-color-000000-a10);
}

.db-card--today[b-d5xef8xj74]          { border-top: 4px solid var(--hl-color-3b82f6); }
.db-card--future[b-d5xef8xj74]         { border-top: 4px solid var(--hl-color-64748b); }
.db-card--inbound-today[b-d5xef8xj74]  { border-top: 4px solid var(--hl-color-10b981); }
.db-card--inbound-future[b-d5xef8xj74] { border-top: 4px solid var(--hl-color-6ee7b7); }
.db-card--storage-today[b-d5xef8xj74]  { border-top: 4px solid var(--hl-color-f59e0b); }
.db-card--storage-future[b-d5xef8xj74] { border-top: 4px solid var(--hl-color-fcd34d); }
.db-card--inventory[b-d5xef8xj74]      { border-top: 4px solid var(--hl-color-8b5cf6); cursor: default; }

.db-card-icon[b-d5xef8xj74] { color: var(--hl-color-94a3b8); margin-bottom: 4px; }
.db-card--today          .db-card-icon[b-d5xef8xj74] { color: var(--hl-color-3b82f6); }
.db-card--future         .db-card-icon[b-d5xef8xj74] { color: var(--hl-color-64748b); }
.db-card--inbound-today  .db-card-icon[b-d5xef8xj74] { color: var(--hl-color-10b981); }
.db-card--inbound-future .db-card-icon[b-d5xef8xj74] { color: var(--hl-color-6ee7b7); }
.db-card--storage-today  .db-card-icon[b-d5xef8xj74] { color: var(--hl-color-f59e0b); }
.db-card--storage-future .db-card-icon[b-d5xef8xj74] { color: var(--hl-color-fcd34d); }
.db-card--inventory      .db-card-icon[b-d5xef8xj74] { color: var(--hl-color-8b5cf6); }

.db-card-label[b-d5xef8xj74] {
    font-size: .78rem; font-weight: 600;
    text-transform: uppercase; letter-spacing: .06em;
    color: var(--hl-color-64748b);
}
.db-card--today          .db-card-label[b-d5xef8xj74] { color: var(--hl-color-1d4ed8); }
.db-card--inbound-today  .db-card-label[b-d5xef8xj74] { color: var(--hl-color-065f46); }
.db-card--inbound-future .db-card-label[b-d5xef8xj74] { color: var(--hl-color-047857); }
.db-card--storage-today  .db-card-label[b-d5xef8xj74] { color: var(--hl-color-92400e); }
.db-card--storage-future .db-card-label[b-d5xef8xj74] { color: var(--hl-color-b45309); }
.db-card--inventory      .db-card-label[b-d5xef8xj74] { color: var(--hl-color-5b21b6); }

.db-card-count[b-d5xef8xj74] {
    font-size: 3rem; font-weight: 800; line-height: 1;
    color: var(--hl-color-0f172a); font-variant-numeric: tabular-nums;
    display: flex; align-items: baseline; gap: 4px;
}
.db-card-unit[b-d5xef8xj74] { font-size: 1rem; font-weight: 600; color: var(--hl-color-64748b); }

.db-card-sub[b-d5xef8xj74] {
    display: flex; align-items: center; gap: 8px;
    margin-top: 4px;
}
.db-card-stat[b-d5xef8xj74]  { display: flex; align-items: baseline; gap: 3px; }
.db-card-val[b-d5xef8xj74]   { font-size: 1.1rem; font-weight: 700; color: var(--hl-color-334155); font-variant-numeric: tabular-nums; }
.db-card-uname[b-d5xef8xj74] { font-size: .72rem; font-weight: 600; color: var(--hl-color-94a3b8); }
.db-card-divider[b-d5xef8xj74] { color: var(--hl-color-cbd5e1); font-size: .85rem; }
/* /Components/Pages/ClientUser/LocationInquiries/LocationInquiryDialog.razor.rz.scp.css */
.li-dialog[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0 4px 8px;
}

/* ── 集荷先・配送先 横並びレイアウト ── */
.li-locations-row[b-v1h6kk4udj] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: start;
}

.li-locations-arrow[b-v1h6kk4udj] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 36px 10px 0;
    font-size: 1.4rem;
    color: var(--rz-text-secondary-color);
}

.li-section--location[b-v1h6kk4udj] {
    min-width: 0;
}

.li-dialog--loading[b-v1h6kk4udj] {
    min-height: 200px;
    align-items: center;
    justify-content: center;
}

.li-spinner[b-v1h6kk4udj] {
    color: var(--rz-text-secondary-color);
    font-size: 0.95rem;
}

/* ── ステータスバー ── */
.li-status-bar[b-v1h6kk4udj] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2px;
    padding: 8px 0 12px;
    margin-bottom: 4px;
    border-bottom: 1px solid var(--rz-border-color);
    position: sticky;
    top: 0;
    z-index: 5;
    background: var(--rz-base-background-color);
}

.li-status-arrow[b-v1h6kk4udj] {
    color: var(--rz-text-secondary-color);
    font-size: 0.8rem;
    padding: 0 2px;
}

.li-status-step[b-v1h6kk4udj] {
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 0.8rem;
    background: var(--rz-base-200);
    color: var(--rz-text-secondary-color);
}

.li-status-step--current[b-v1h6kk4udj] {
    background: var(--rz-primary);
    color: var(--hl-color-fff);
    font-weight: 600;
}

/* ── セクション ── */
.li-section[b-v1h6kk4udj] {
    border: 1px solid var(--rz-border-color);
    border-radius: 6px;
    margin-top: 12px;
    overflow: hidden;
}

.li-section--estimate[b-v1h6kk4udj] {
    border-color: var(--rz-info);
    background: color-mix(in srgb, var(--rz-info) 6%, transparent);
}

.li-section--registered[b-v1h6kk4udj] {
    border-color: var(--rz-success);
    background: color-mix(in srgb, var(--rz-success) 6%, transparent);
}

.li-section-header[b-v1h6kk4udj] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 14px;
    background: var(--rz-base-200);
    border-bottom: 1px solid var(--rz-border-color);
}

.li-section-title[b-v1h6kk4udj] {
    font-weight: 600;
    font-size: 0.9rem;
}

.li-existing-badge[b-v1h6kk4udj] {
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
}

/* ── 既存／新規 モードバッジ ── */
.li-mode-badge[b-v1h6kk4udj] {
    font-size: 0.72rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
    white-space: nowrap;
}

.li-mode-badge--existing[b-v1h6kk4udj] {
    background: color-mix(in srgb, var(--rz-info) 15%, transparent);
    color: var(--rz-info);
    border: 1px solid color-mix(in srgb, var(--rz-info) 40%, transparent);
}

.li-mode-badge--new[b-v1h6kk4udj] {
    background: color-mix(in srgb, var(--rz-warning) 15%, transparent);
    color: var(--rz-warning);
    border: 1px solid color-mix(in srgb, var(--rz-warning) 40%, transparent);
}

/* ── 既存選択済みの保存情報 ── */
.li-existing-info[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 0 14px 10px;
    padding: 8px 12px;
    background: var(--rz-base-200);
    border-radius: 4px;
}

.li-existing-info__row[b-v1h6kk4udj] {
    display: flex;
    gap: 8px;
    font-size: 0.85rem;
}

.li-existing-info__label[b-v1h6kk4udj] {
    color: var(--rz-text-secondary-color);
    min-width: 4.5em;
}

.li-existing-info__value[b-v1h6kk4udj] {
    color: var(--rz-text-color);
}

/* ── タブ ── */
.li-tab-group[b-v1h6kk4udj] {
    display: flex;
    gap: 0;
    border: 1px solid var(--rz-border-color);
    border-radius: 4px;
    overflow: hidden;
}

.li-tab[b-v1h6kk4udj] {
    padding: 4px 14px;
    font-size: 0.82rem;
    border: none;
    background: var(--rz-base-background-color);
    color: var(--rz-text-secondary-color);
    cursor: pointer;
    transition: background 0.15s;
}

.li-tab:hover[b-v1h6kk4udj] {
    background: var(--rz-base-200);
}

.li-tab--active[b-v1h6kk4udj] {
    background: var(--rz-primary);
    color: var(--hl-color-fff);
    font-weight: 600;
}

/* ── フォーム ── */
.li-form-grid[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 14px;
}

.li-form-row[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 10px 14px;
}

.li-form-row--half[b-v1h6kk4udj] {
    flex-direction: row;
    gap: 16px;
    padding: 0;
}

.li-form-row--half > div[b-v1h6kk4udj] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.li-form-row--third[b-v1h6kk4udj] {
    flex-direction: row;
    gap: 16px;
    padding: 0;
}

.li-form-row--third > div[b-v1h6kk4udj] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.li-label[b-v1h6kk4udj] {
    font-size: 0.82rem;
    color: var(--rz-text-secondary-color);
    font-weight: 500;
}

.li-required[b-v1h6kk4udj]::after {
    content: " *";
    color: var(--rz-danger);
}

.li-value[b-v1h6kk4udj] {
    font-size: 0.92rem;
    color: var(--rz-text-color);
    padding: 4px 0;
}

.li-value--pre[b-v1h6kk4udj] {
    white-space: pre-wrap;
}

/* ── オペレータ回答: 問合せ内容サマリー ── */
.li-answer-summary[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px;
    border-bottom: 1px solid var(--rz-border-color);
}

.li-answer-summary__row[b-v1h6kk4udj] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.li-answer-badge[b-v1h6kk4udj] {
    font-size: 0.78rem;
    font-weight: 600;
    padding: 2px 10px;
    border-radius: 10px;
    white-space: nowrap;
}

.li-answer-badge--ok[b-v1h6kk4udj] {
    background: color-mix(in srgb, var(--rz-success) 15%, transparent);
    color: var(--rz-success);
    border: 1px solid color-mix(in srgb, var(--rz-success) 40%, transparent);
}

.li-answer-badge--ng[b-v1h6kk4udj] {
    background: color-mix(in srgb, var(--rz-danger) 15%, transparent);
    color: var(--rz-danger);
    border: 1px solid color-mix(in srgb, var(--rz-danger) 40%, transparent);
}

/* ── 見積 ── */
.li-estimate-grid[b-v1h6kk4udj] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px 14px;
}

.li-estimate-item[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.li-estimate-item--full[b-v1h6kk4udj] {
    width: 100%;
}

.li-estimate-label[b-v1h6kk4udj] {
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
}

.li-estimate-value[b-v1h6kk4udj] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--rz-info);
    white-space: pre-wrap;
}

.li-estimate-value--plain[b-v1h6kk4udj] {
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--rz-text-color);
}

/* ── 登録済 ── */
.li-registered-msg[b-v1h6kk4udj] {
    padding: 12px 14px;
    font-size: 0.9rem;
    color: var(--rz-success);
    margin: 0;
}

/* ── 配送不可 ── */
.li-section--ng[b-v1h6kk4udj] {
    border-color: var(--rz-danger);
    background: color-mix(in srgb, var(--rz-danger) 6%, transparent);
}

.li-ng-msg[b-v1h6kk4udj] {
    padding: 12px 14px;
    font-size: 0.9rem;
    color: var(--rz-danger);
    margin: 0;
}

/* ── スレッド ── */
.li-thread[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px 14px;
}

.li-thread-item[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-width: 80%;
    padding: 8px 12px;
    border-radius: 8px;
}

.li-thread-item--client[b-v1h6kk4udj] {
    align-self: flex-end;
    background: color-mix(in srgb, var(--rz-primary) 12%, var(--rz-base-background-color));
    border: 1px solid color-mix(in srgb, var(--rz-primary) 30%, transparent);
}

.li-thread-item--operator[b-v1h6kk4udj] {
    align-self: flex-start;
    background: var(--rz-base-200);
    border: 1px solid var(--rz-border-color);
}

.li-thread-meta[b-v1h6kk4udj] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.li-thread-poster[b-v1h6kk4udj] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--rz-text-secondary-color);
}

.li-thread-time[b-v1h6kk4udj] {
    font-size: 0.75rem;
    color: var(--rz-text-secondary-color);
}

.li-thread-status-badge[b-v1h6kk4udj] {
    font-size: 0.72rem;
    background: var(--rz-primary);
    color: var(--hl-color-fff);
    padding: 1px 6px;
    border-radius: 8px;
}

.li-thread-message[b-v1h6kk4udj] {
    font-size: 0.9rem;
    white-space: pre-wrap;
}

/* ── 既存選択 ドロップダウン項目 ── */
.li-loc-opt[b-v1h6kk4udj] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 2px 0;
}

.li-loc-opt__name[b-v1h6kk4udj] {
    font-weight: 700;
    font-size: 0.92rem;
}

.li-loc-opt__sub[b-v1h6kk4udj] {
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
}

/* ── アクション ── */
.li-error[b-v1h6kk4udj] {
    padding: 8px 12px;
    margin-top: 12px;
    background: color-mix(in srgb, var(--rz-danger) 10%, transparent);
    border: 1px solid var(--rz-danger);
    border-radius: 4px;
    color: var(--rz-danger);
    font-size: 0.88rem;
}

.li-actions[b-v1h6kk4udj] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    padding-top: 14px;
    margin-top: 4px;
    border-top: 1px solid var(--rz-border-color);
}
/* /Components/Pages/ClientUser/LocationInquiries/LocationInquiryListPage.razor.rz.scp.css */
.lil-page[b-957og5fbc2] {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    max-width: 800px;
}

.lil-header[b-957og5fbc2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.lil-title[b-957og5fbc2] {
    font-size: 1.15rem;
    font-weight: 700;
}

/* ── フィルタ ── */
.lil-filter-bar[b-957og5fbc2] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.lil-filter-btn[b-957og5fbc2] {
    padding: 4px 12px;
    border-radius: 14px;
    border: 1px solid var(--rz-border-color);
    background: var(--rz-base-background-color);
    color: var(--rz-text-secondary-color);
    font-size: 0.82rem;
    cursor: pointer;
    transition: all 0.15s;
}

.lil-filter-btn:hover[b-957og5fbc2] { background: var(--rz-base-200); }

.lil-filter-btn--active[b-957og5fbc2] {
    background: var(--rz-primary);
    color: var(--hl-color-fff);
    border-color: var(--rz-primary);
    font-weight: 600;
}

/* ── カードリスト ── */
.lil-card-list[b-957og5fbc2] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.lil-card[b-957og5fbc2] {
    border: 1px solid var(--rz-border-color);
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
    transition: box-shadow 0.15s, border-color 0.15s;
}

.lil-card:hover[b-957og5fbc2] {
    box-shadow: 0 2px 8px var(--hl-color-000000-a10);
    border-color: var(--rz-primary);
}

.lil-card--unread[b-957og5fbc2] {
    border-left: 3px solid var(--rz-warning);
}

.lil-card-header[b-957og5fbc2] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: var(--rz-base-200);
    border-bottom: 1px solid var(--rz-border-color);
    flex-wrap: wrap;
}

.lil-card-id[b-957og5fbc2] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary-color);
    font-weight: 500;
}

.lil-card-date[b-957og5fbc2] {
    margin-left: auto;
    font-size: 0.75rem;
    color: var(--rz-text-secondary-color);
}

.lil-card-body[b-957og5fbc2] {
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.lil-location-row[b-957og5fbc2] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.lil-location-pair[b-957og5fbc2] {
    display: flex;
    gap: 16px;
}

.lil-location-col[b-957og5fbc2] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.lil-loc-label[b-957og5fbc2] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary-color);
    min-width: 50px;
}

.lil-location-col .lil-loc-label[b-957og5fbc2] {
    min-width: 0;
}

.lil-loc-value[b-957og5fbc2] {
    font-size: 0.9rem;
}

.lil-location-col .lil-loc-value[b-957og5fbc2] {
    font-weight: 600;
    overflow-wrap: break-word;
}

/* ── ステータス/種別チップ ── */
.lil-status-chip[b-957og5fbc2] {
    font-size: 0.72rem;
    padding: 2px 8px;
    border-radius: 10px;
    font-weight: 600;
    white-space: nowrap;
}

.lil-status-chip--draft[b-957og5fbc2]         { background: var(--rz-base-300); color: var(--rz-text-secondary-color); }
.lil-status-chip--submitted[b-957og5fbc2]     { background: color-mix(in srgb, var(--rz-warning) 20%, transparent); color: color-mix(in srgb, var(--rz-warning) 80%, var(--hl-color-000)); }
.lil-status-chip--investigating[b-957og5fbc2] { background: color-mix(in srgb, var(--rz-info) 15%, transparent); color: var(--rz-info); }
.lil-status-chip--estimated[b-957og5fbc2]     { background: color-mix(in srgb, var(--rz-primary) 15%, transparent); color: var(--rz-primary); }
.lil-status-chip--approved[b-957og5fbc2]      { background: color-mix(in srgb, var(--rz-success) 20%, transparent); color: color-mix(in srgb, var(--rz-success) 70%, var(--hl-color-000)); }
.lil-status-chip--ng[b-957og5fbc2],
.lil-status-chip--declined[b-957og5fbc2]      { background: color-mix(in srgb, var(--rz-danger) 15%, transparent); color: var(--rz-danger); }
.lil-status-chip--registered[b-957og5fbc2]    { background: var(--rz-base-300); color: var(--rz-text-secondary-color); }

.lil-kind-chip[b-957og5fbc2] {
    font-size: 0.72rem;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--rz-base-200);
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

/* ── その他 ── */
.lil-loading[b-957og5fbc2], .lil-empty[b-957og5fbc2] {
    color: var(--rz-text-secondary-color);
    font-size: 0.9rem;
    text-align: center;
    padding: 32px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}
/* /Components/Pages/ClientUser/Orders/OrderEntryDialog.razor.rz.scp.css */
/* 発注ダイアログ（新規）。レイアウトの見本: docs/design/order-dialog-layout.html
   高さ固定（ページ全体はスクロールしない）。明細だけが中でスクロールする。色は palette.css の --hl-color-* を使う。 */
.oe[b-05ainbvab2] { display: flex; flex-direction: column; height: min(86vh, 860px); min-height: 0; font-family: inherit; color: var(--hl-color-0f172a); }
.oe--loading[b-05ainbvab2] { align-items: center; justify-content: center; }
.oe-spinner[b-05ainbvab2] { color: var(--hl-color-94a3b8); font-size: .9rem; }

.oe-head[b-05ainbvab2] { flex: none; display: flex; align-items: center; gap: 16px; padding: 4px 4px 14px; border-bottom: 1px solid var(--hl-color-e2e8f0); }
.oe-title[b-05ainbvab2] { margin: 0; font-size: 1.15rem; font-weight: 700; }
.oe-kind[b-05ainbvab2] { font-size: .8rem; font-weight: 700; color: var(--hl-color-334155); background: var(--hl-color-f1f5f9); border-radius: 999px; padding: 2px 10px; }
/* 既存の依頼: 状態のバッジと説明 */
.oe-status[b-05ainbvab2] { flex: none; font-size: .75rem; font-weight: 700; border-radius: 999px; padding: 2px 10px; background: var(--hl-color-f1f5f9); color: var(--hl-color-334155); }
.oe-status--submitted[b-05ainbvab2] { background: var(--hl-color-dbeafe); color: var(--hl-color-1d4ed8); }
.oe-status--ng[b-05ainbvab2] { background: var(--hl-color-fef2f2); color: var(--hl-color-b91c1c); }
.oe-status--ok[b-05ainbvab2] { background: var(--hl-color-dcfce7); color: var(--hl-color-166534); }
.oe-status--deletionrequested[b-05ainbvab2], .oe-status--cancelled[b-05ainbvab2] { background: var(--hl-color-fef3c7); color: var(--hl-color-92400e); }
.oe-status-desc[b-05ainbvab2] { min-width: 0; font-size: .8rem; color: var(--hl-color-64748b); }
.oe-close[b-05ainbvab2] { margin-left: auto; flex: none; width: 32px; height: 32px; border: 0; border-radius: 8px; background: transparent; color: var(--hl-color-64748b); font-size: 1.2rem; cursor: pointer; }
.oe-close:hover[b-05ainbvab2] { background: var(--hl-color-f1f5f9); }
.oe-close:focus-visible[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); }

.oe-body[b-05ainbvab2] { flex: 1; min-height: 0; overflow-y: auto; padding: 16px 4px; display: flex; flex-direction: column; gap: 14px; }
.oe-body > :not(.oe-detail)[b-05ainbvab2] { flex: none; }

/* 項目 */
.oe-field[b-05ainbvab2] { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.oe-label-row[b-05ainbvab2] { display: flex; align-items: center; gap: 8px; min-height: 22px; }
.oe-label[b-05ainbvab2] { font-size: .8rem; font-weight: 700; color: var(--hl-color-334155); letter-spacing: .02em; }
.oe-input[b-05ainbvab2] { width: 100%; min-height: 48px; padding: 8px 12px; border: 1px solid var(--hl-color-cbd5e1); border-radius: 8px; background: var(--hl-color-f1f5f9); font: inherit; font-size: 1rem; color: var(--hl-color-334155); }
.oe-hint[b-05ainbvab2] { font-size: .8rem; color: var(--hl-color-64748b); }
.oe-err[b-05ainbvab2] { font-size: .78rem; color: var(--hl-color-b91c1c); font-weight: 600; }

.oe-place[b-05ainbvab2] { display: grid; grid-template-columns: minmax(0, 1.9fr) minmax(0, 1.3fr) 11rem; gap: 16px; }
.oe-dates[b-05ainbvab2] { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 16px; align-items: start; }
.oe-arrow[b-05ainbvab2] { padding-top: 36px; color: var(--hl-color-64748b); font-size: 1.1rem; }
/* Radzen の日付の部品の外枠は、このコンポーネントの印が付かないため、自前の囲み（.oe-dates）から ::deep で指定する */
.oe-dates[b-05ainbvab2]  .rz-datepicker { height: 52px; }
.oe-dates[b-05ainbvab2]  input.rz-inputtext { height: 100%; }

.oe-badge[b-05ainbvab2] { flex: none; min-height: 28px; padding: 0 10px; border: 0; border-radius: 8px; font: inherit; font-size: .78rem; font-weight: 700; cursor: pointer; white-space: nowrap; }
.oe-badge--base[b-05ainbvab2] { background: var(--hl-color-dcfce7); color: var(--hl-color-166534); }
.oe-badge--other[b-05ainbvab2] { background: var(--hl-color-fef3c7); color: var(--hl-color-92400e); }
.oe-badge--static[b-05ainbvab2] { display: inline-flex; align-items: center; cursor: default; min-height: 36px; }
.oe-badge:disabled[b-05ainbvab2] { cursor: not-allowed; opacity: .6; }
.oe-badge:focus-visible[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: 1px; }

.oe-alert[b-05ainbvab2] { display: flex; flex-direction: column; gap: 6px; padding: 10px 14px; border: 1.5px solid var(--hl-color-f59e0b); border-radius: 8px; background: var(--hl-color-fef3c7); color: var(--hl-color-92400e); font-size: .88rem; font-weight: 600; }
.oe-check[b-05ainbvab2] { display: flex; align-items: center; gap: 8px; font-weight: 700; cursor: pointer; }
.oe-check input[b-05ainbvab2] { width: 16px; height: 16px; accent-color: currentColor; cursor: pointer; }

/* 明細 */
.oe-detail[b-05ainbvab2] { flex: 1 1 auto; min-height: 140px; display: flex; flex-direction: column; border: 1px solid var(--hl-color-cbd5e1); border-radius: 8px; }
.oe-detail-head[b-05ainbvab2] { flex: none; display: flex; align-items: center; gap: 16px; padding: 8px 16px; border-bottom: 1px solid var(--hl-color-e2e8f0); }
.oe-detail-title[b-05ainbvab2] { margin: 0; font-size: .8rem; font-weight: 700; color: var(--hl-color-334155); letter-spacing: .04em; }
.oe-detail-title[b-05ainbvab2]::before { content: ""; display: inline-block; width: 4px; height: 14px; background: var(--hl-color-2563eb); border-radius: 2px; margin-right: 8px; vertical-align: -1px; }
.oe-detail-help[b-05ainbvab2] { flex: 1; min-width: 0; font-size: .8rem; color: var(--hl-color-64748b); }
.oe-detail-help--error[b-05ainbvab2] { color: var(--hl-color-b91c1c); font-weight: 700; }
.oe-add[b-05ainbvab2] { flex: none; min-height: 32px; padding: 4px 12px; border: 1px dashed var(--hl-color-2563eb); border-radius: 8px; background: transparent; color: var(--hl-color-2563eb); font: inherit; font-size: .88rem; font-weight: 700; cursor: pointer; }
.oe-add:hover[b-05ainbvab2] { background: var(--hl-color-dbeafe); }
.oe-add:focus-visible[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: 2px; }
.oe-detail-body[b-05ainbvab2] { flex: 1; min-height: 0; overflow: auto; overscroll-behavior: contain; }

.oe-lines[b-05ainbvab2] { width: 100%; min-width: 800px; border-collapse: collapse; font-size: .9rem; }
.oe-lines th[b-05ainbvab2] { position: sticky; top: 0; z-index: 2; background: var(--hl-color-f1f5f9); text-align: left; font-size: .8rem; color: var(--hl-color-334155); padding: 8px 4px; border-bottom: 1px solid var(--hl-color-cbd5e1); white-space: nowrap; }
.oe-lines td[b-05ainbvab2] { padding: 8px 4px; border-bottom: 1px solid var(--hl-color-e2e8f0); vertical-align: top; }
.oe-lines th.oe-num[b-05ainbvab2] { text-align: right; }
.oe-w-loc[b-05ainbvab2] { width: 28%; } .oe-w-prod[b-05ainbvab2] { width: 28%; } .oe-w-temp[b-05ainbvab2] { width: 64px; min-width: 64px; } .oe-w-num[b-05ainbvab2] { width: 10%; } .oe-w-note[b-05ainbvab2] { width: 14%; } .oe-w-del[b-05ainbvab2] { width: 44px; }
.oe-line--deleted td[b-05ainbvab2] { opacity: .5; }
/* 明細行の部品は、高さ36px・角丸8px・枠1px・文字.9rem に揃える */
.oe-ctl[b-05ainbvab2], .oe-joined[b-05ainbvab2] { box-sizing: border-box; height: 36px; border: 1px solid var(--hl-color-cbd5e1); border-radius: 8px; background: var(--hl-color-fff); font: inherit; font-size: .9rem; color: var(--hl-color-0f172a); }
.oe-ctl[b-05ainbvab2] { width: 100%; padding: 0 10px; }
.oe-ctl:hover:not(:disabled)[b-05ainbvab2], .oe-joined:hover:not(.oe-joined--disabled)[b-05ainbvab2] { border-color: var(--hl-color-64748b); }
.oe-ctl:focus-visible[b-05ainbvab2], .oe-joined:focus-within[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: 1px; border-color: var(--hl-color-2563eb); }
.oe-ctl:disabled[b-05ainbvab2], .oe-joined--disabled[b-05ainbvab2] { background: var(--hl-color-f1f5f9); color: var(--hl-color-64748b); cursor: not-allowed; }
.oe-ctl--invalid[b-05ainbvab2], .oe-joined--invalid[b-05ainbvab2] { border-color: var(--hl-color-b91c1c); }
.oe-ctl[b-05ainbvab2]::placeholder, .oe-bare[b-05ainbvab2]::placeholder { color: var(--hl-color-94a3b8); }

/* 一体の枠: 区分ボタン＋集荷先、品名＋履歴ボタン */
.oe-joined[b-05ainbvab2] { display: flex; align-items: stretch; overflow: hidden; }
.oe-joined > :not(.oe-seg):not(.oe-bare)[b-05ainbvab2] { flex: 1; min-width: 0; }
.oe-bare[b-05ainbvab2] { flex: 1; min-width: 0; height: 100%; padding: 0 10px; border: 0; background: transparent; font: inherit; font-size: .9rem; color: inherit; }
.oe-bare:focus-visible[b-05ainbvab2] { outline: none; }
.oe-seg[b-05ainbvab2] { flex: none; display: inline-flex; align-items: center; padding: 0 8px; border: 0; font: inherit; font-size: .7rem; font-weight: 700; white-space: nowrap; cursor: pointer; }
.oe-seg:first-child[b-05ainbvab2] { border-right: 1px solid var(--hl-color-cbd5e1); }
.oe-seg--end[b-05ainbvab2] { border-left: 1px solid var(--hl-color-cbd5e1); background: var(--hl-color-f1f5f9); color: var(--hl-color-334155); }
.oe-seg--base[b-05ainbvab2] { background: var(--hl-color-dcfce7); color: var(--hl-color-166534); }
.oe-seg--other[b-05ainbvab2] { background: var(--hl-color-fef3c7); color: var(--hl-color-92400e); }
.oe-seg--stock[b-05ainbvab2] { background: var(--hl-color-dbeafe); color: var(--hl-color-1e40af); }
.oe-seg--static[b-05ainbvab2] { cursor: default; }
.oe-seg:hover:not(:disabled):not(.oe-seg--static)[b-05ainbvab2] { filter: brightness(.96); }
.oe-seg:focus-visible[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: -2px; }
.oe-seg:disabled[b-05ainbvab2] { cursor: not-allowed; color: var(--hl-color-64748b); background: var(--hl-color-f1f5f9); }

/* 温度帯（F・C・D）と、数量・重量（右詰め） */
.oe-select[b-05ainbvab2] { min-width: 56px; padding: 0 4px; text-align: center; text-align-last: center; cursor: pointer; }
.oe-num-input[b-05ainbvab2] { text-align: right; -moz-appearance: textfield; }
.oe-num-input[b-05ainbvab2]::-webkit-outer-spin-button, .oe-num-input[b-05ainbvab2]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.oe-center[b-05ainbvab2], .oe-lines th.oe-center[b-05ainbvab2] { text-align: center; }
.oe-err--right[b-05ainbvab2] { display: block; text-align: right; }
.oe-icon[b-05ainbvab2] { width: 32px; height: 32px; border: 0; border-radius: 6px; background: transparent; color: var(--hl-color-64748b); font-size: 1rem; cursor: pointer; }
.oe-icon:hover[b-05ainbvab2] { background: var(--hl-color-fef2f2); color: var(--hl-color-b91c1c); }
.oe-icon--restore:hover[b-05ainbvab2] { background: var(--hl-color-dbeafe); color: var(--hl-color-2563eb); }
.oe-icon:focus-visible[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); }

/* やり取り履歴（既存の依頼のみ） */
.oe-logs[b-05ainbvab2] { display: flex; flex-direction: column; gap: 8px; }
.oe-log-list[b-05ainbvab2] { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.oe-log[b-05ainbvab2] { border-radius: 8px; padding: 8px 12px; font-size: .85rem; border-left: 3px solid var(--hl-color-cbd5e1); background: var(--hl-color-f1f5f9); }
.oe-log--operator[b-05ainbvab2] { border-left-color: var(--hl-color-2563eb); background: var(--hl-color-dbeafe); }
.oe-log-meta[b-05ainbvab2] { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; font-size: .78rem; color: var(--hl-color-64748b); }
.oe-log-who[b-05ainbvab2] { font-weight: 700; color: var(--hl-color-334155); }
.oe-log-time[b-05ainbvab2] { margin-left: auto; }
.oe-log-msg[b-05ainbvab2] { margin-top: 4px; white-space: pre-wrap; overflow-wrap: anywhere; }

/* 下の帯: 左に制限事項・担当者へのメッセージ、右に操作ボタン */
.oe-foot[b-05ainbvab2] { flex: none; display: flex; align-items: flex-end; justify-content: flex-end; gap: 16px; padding-top: 14px; border-top: 1px solid var(--hl-color-e2e8f0); }
.oe-notice[b-05ainbvab2] { flex: 1; min-width: 0; max-height: 168px; overflow-y: auto; border: 1.5px solid; border-radius: 8px; padding: 8px 14px; display: flex; flex-direction: column; gap: 4px; font-size: .88rem; }
.oe-notice--warn[b-05ainbvab2] { background: var(--hl-color-fef3c7); border-color: var(--hl-color-f59e0b); color: var(--hl-color-92400e); }
.oe-notice--ng[b-05ainbvab2] { background: var(--hl-color-fef2f2); border-color: var(--hl-color-fca5a5); color: var(--hl-color-b91c1c); }
.oe-notice-title[b-05ainbvab2] { font-weight: 700; }
.oe-notice ul[b-05ainbvab2] { margin: 0; padding-left: 1.2em; }
.oe-notice li[b-05ainbvab2] { overflow-wrap: anywhere; }
.oe-notice-foot[b-05ainbvab2] { font-size: .8rem; opacity: .85; }
.oe-error[b-05ainbvab2] { align-self: center; color: var(--hl-color-b91c1c); font-size: .85rem; font-weight: 700; }
.oe-send[b-05ainbvab2] { flex: none; min-height: 40px; padding: 8px 28px; border: 1px solid transparent; border-radius: 8px; background: var(--hl-color-2563eb); color: var(--hl-color-fff); font: inherit; font-weight: 700; cursor: pointer; white-space: nowrap; }
.oe-send:hover:not(:disabled)[b-05ainbvab2] { background: var(--hl-color-1d4ed8); }
.oe-send:active:not(:disabled)[b-05ainbvab2] { transform: translateY(1px); }
.oe-send:focus-visible[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: 2px; }
.oe-send:disabled[b-05ainbvab2] { background: var(--hl-color-cbd5e1); color: var(--hl-color-64748b); cursor: not-allowed; }
.oe-comment[b-05ainbvab2] { flex: 1; }
.oe-textarea[b-05ainbvab2] { height: auto; min-height: 56px; padding: 8px 10px; resize: vertical; }
.oe-actions[b-05ainbvab2] { flex: none; display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.oe-confirm[b-05ainbvab2] { font-size: .85rem; font-weight: 700; color: var(--hl-color-b91c1c); }
.oe-sub[b-05ainbvab2] { flex: none; min-height: 40px; padding: 8px 16px; border: 1px solid var(--hl-color-cbd5e1); border-radius: 8px; background: var(--hl-color-fff); color: var(--hl-color-334155); font: inherit; font-weight: 700; cursor: pointer; white-space: nowrap; }
.oe-sub:hover:not(:disabled)[b-05ainbvab2] { background: var(--hl-color-f1f5f9); }
.oe-sub:focus-visible[b-05ainbvab2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: 2px; }
.oe-sub:disabled[b-05ainbvab2] { color: var(--hl-color-94a3b8); cursor: not-allowed; }
.oe-sub--delete[b-05ainbvab2] { border-color: transparent; color: var(--hl-color-b91c1c); }
.oe-sub--delete:hover:not(:disabled)[b-05ainbvab2] { background: var(--hl-color-fef2f2); }
.oe-sub--danger[b-05ainbvab2] { border-color: transparent; background: var(--hl-color-b91c1c); color: var(--hl-color-fff); }
.oe-sub--danger:hover:not(:disabled)[b-05ainbvab2] { background: var(--hl-color-b91c1c); filter: brightness(.92); }

@media (max-width: 720px) {
    .oe-place[b-05ainbvab2], .oe-dates[b-05ainbvab2] { grid-template-columns: minmax(0, 1fr); }
    .oe-arrow[b-05ainbvab2] { display: none; }
    .oe-foot[b-05ainbvab2] { flex-direction: column; align-items: stretch; }
}
@media (prefers-reduced-motion: reduce) { .oe *[b-05ainbvab2] { transition: none !important; } }

/* 出庫から: 入庫履歴IDは8桁なので幅を詰め、余った幅を品名に回す（温度帯以降の左位置は他の行と揃う）。 */
.oe-stockcell[b-05ainbvab2] { display: flex; align-items: flex-start; gap: 8px; }
.oe-stockcell > .oe-joined[b-05ainbvab2] { flex: none; }
.oe-stockcell > .oe-stockprod[b-05ainbvab2] { flex: 1; min-width: 0; }
.oe-bare.oe-histid[b-05ainbvab2] { flex: none; width: 11ch; padding: 0 6px; font-variant-numeric: tabular-nums; }

/* 明細の合計（表の最終行）。数量・重量の列の真下に揃え、スクロールしても下に残す。 */
.oe-lines tfoot td[b-05ainbvab2] { position: sticky; bottom: 0; z-index: 2; padding: 8px 4px; background: var(--hl-color-f1f5f9); border-top: 1px solid var(--hl-color-cbd5e1); font-size: .9rem; color: var(--hl-color-334155); }
.oe-lines .oe-foot-add[b-05ainbvab2] { text-align: left; padding-left: 8px; }
.oe-lines .oe-foot-label[b-05ainbvab2] { text-align: right; font-weight: 700; }
.oe-lines .oe-foot-num[b-05ainbvab2] { text-align: right; padding-right: 14px; font-variant-numeric: tabular-nums; }
.oe-lines .oe-foot-num strong[b-05ainbvab2] { font-size: 1.05rem; }
/* /Components/Pages/ClientUser/Orders/OrderLocationDropDown.razor.rz.scp.css */
.old[b-njd7w8jkk2] { width: 100%; min-width: 0; }

/* 選択欄 */
.old-trigger[b-njd7w8jkk2] { width: 100%; min-height: 36px; display: flex; align-items: center; gap: 6px; padding: 4px 10px; border: 1px solid var(--hl-color-cbd5e1); border-radius: 8px; background: var(--hl-color-fff); font: inherit; font-size: .95rem; color: var(--hl-color-0f172a); text-align: left; cursor: pointer; }
.old-trigger:hover:not(:disabled)[b-njd7w8jkk2] { border-color: var(--hl-color-64748b); }
.old-trigger:focus-visible[b-njd7w8jkk2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: 1px; border-color: var(--hl-color-2563eb); }
.old-trigger:disabled[b-njd7w8jkk2] { background: var(--hl-color-f1f5f9); color: var(--hl-color-64748b); cursor: not-allowed; }
.old--invalid .old-trigger[b-njd7w8jkk2] { border-color: var(--hl-color-b91c1c); }
.old-value[b-njd7w8jkk2], .old-placeholder[b-njd7w8jkk2] { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.old-placeholder[b-njd7w8jkk2] { color: var(--hl-color-94a3b8); }
.old-clear[b-njd7w8jkk2] { flex: none; width: 20px; height: 20px; display: inline-flex; align-items: center; justify-content: center; border-radius: 4px; color: var(--hl-color-64748b); }
.old-clear:hover[b-njd7w8jkk2] { background: var(--hl-color-f1f5f9); }
.old-chevron[b-njd7w8jkk2] { flex: none; color: var(--hl-color-64748b); font-size: .8rem; }

/* 枠のない見た目（外側の枠に、区分ボタンなどと一体で収める） */
.old--bare[b-njd7w8jkk2] { height: 100%; }
.old--bare .old-trigger[b-njd7w8jkk2] { height: 100%; min-height: 0; border: 0; border-radius: 0; background: transparent; font-size: .9rem; }
.old--bare .old-trigger:focus-visible[b-njd7w8jkk2] { outline: none; }
.old--bare .old-trigger:disabled[b-njd7w8jkk2] { background: transparent; }

/* 大きな表示（先頭の配送先・集荷先） */
.old--lg .old-trigger[b-njd7w8jkk2] { min-height: 48px; padding: 6px 12px; font-size: 1.15rem; font-weight: 600; }
.old--lg .old-chevron[b-njd7w8jkk2] { font-size: .9rem; }

/* 開いた一覧（選択欄より広く。名前 | 住所 | 電話番号 を横一列のグリッドで並べる） */
.old-overlay[b-njd7w8jkk2] { position: fixed; inset: 0; z-index: 9998; }
.old-panel[b-njd7w8jkk2] { display: flex; flex-direction: column; box-sizing: border-box; padding: 6px; background: var(--hl-color-fff); border: 1px solid var(--hl-color-cbd5e1); border-radius: 8px; box-shadow: 0 8px 20px var(--hl-color-0f172a-a06), 0 2px 6px var(--hl-color-0f172a-a04); }
.old-filter[b-njd7w8jkk2] { flex: none; width: 100%; min-height: 34px; padding: 4px 10px; margin-bottom: 4px; border: 1px solid var(--hl-color-cbd5e1); border-radius: 6px; font: inherit; font-size: .9rem; }
.old-filter:focus-visible[b-njd7w8jkk2] { outline: 2px solid var(--hl-color-2563eb); outline-offset: 0; border-color: var(--hl-color-2563eb); }
.old-list[b-njd7w8jkk2] { flex: 1; min-height: 0; overflow-y: auto; }
.old-opt[b-njd7w8jkk2] { display: grid; grid-template-columns: minmax(150px, 1.1fr) minmax(200px, 2fr) 110px; column-gap: 16px; align-items: center; padding: 6px 8px; border-radius: 6px; line-height: 1.35; cursor: pointer; }
.old-opt > span[b-njd7w8jkk2] { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.old-opt:hover[b-njd7w8jkk2], .old-opt--active[b-njd7w8jkk2] { background: var(--hl-color-eff6ff); }
.old-opt--selected[b-njd7w8jkk2] { background: var(--hl-color-dbeafe); }
.old-opt-name[b-njd7w8jkk2] { font-weight: 600; }
.old-opt-addr[b-njd7w8jkk2] { color: var(--hl-color-64748b); font-size: .85rem; }
.old-opt-phone[b-njd7w8jkk2] { color: var(--hl-color-64748b); font-size: .85rem; text-align: right; }
.old-empty[b-njd7w8jkk2] { padding: 10px; color: var(--hl-color-64748b); font-size: .88rem; }

@media (max-width: 720px) {
    .old-opt[b-njd7w8jkk2] { grid-template-columns: minmax(0, 1fr); row-gap: 2px; }
    .old-opt-phone[b-njd7w8jkk2] { text-align: left; }
}
/* /Components/Pages/ClientUser/Settings/HolidayCalendarPage.razor.rz.scp.css */
.hc-page[b-cvqbuu6yg7] { padding: 24px; display: flex; flex-direction: column; gap: 16px; }

.hc-header[b-cvqbuu6yg7] { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.hc-title[b-cvqbuu6yg7]  { font-size: 1.1rem; font-weight: 700; color: var(--hl-color-0f172a); margin: 0 0 2px; }
.hc-subtitle[b-cvqbuu6yg7] { font-size: .78rem; color: var(--hl-color-94a3b8); margin: 0; }
.hc-loading[b-cvqbuu6yg7]  { color: var(--hl-color-94a3b8); font-size: .9rem; }

.hc-save-btn[b-cvqbuu6yg7] {
    padding: 7px 22px; font-size: .83rem; font-weight: 600;
    background: var(--hl-color-3b82f6); color: var(--hl-color-fff); border: none; border-radius: 7px;
    cursor: pointer; white-space: nowrap; transition: background .12s;
}
.hc-save-btn:hover:not(:disabled)[b-cvqbuu6yg7] { background: var(--hl-color-2563eb); }
.hc-save-btn:disabled[b-cvqbuu6yg7] { background: var(--hl-color-94a3b8); cursor: not-allowed; }

.hc-alert[b-cvqbuu6yg7] { padding: 8px 14px; border-radius: 6px; font-size: .82rem; font-weight: 500; }
.hc-alert--error[b-cvqbuu6yg7]   { background: var(--hl-color-fef2f2); color: var(--hl-color-dc2626); border: 1px solid var(--hl-color-fecaca); }
.hc-alert--success[b-cvqbuu6yg7] { background: var(--hl-color-f0fdf4); color: var(--hl-color-16a34a); border: 1px solid var(--hl-color-bbf7d0); }

/* 3カレンダー並び */
.hc-calendars[b-cvqbuu6yg7] {
    display: flex; flex-wrap: wrap; gap: 20px;
}

.hc-calendar[b-cvqbuu6yg7] {
    background: var(--hl-color-fff); border: 1px solid var(--hl-color-e2e8f0); border-radius: 10px;
    padding: 14px 16px; min-width: 240px;
}

.hc-cal-month[b-cvqbuu6yg7] {
    font-size: .88rem; font-weight: 700; color: var(--hl-color-1e293b);
    text-align: center; margin-bottom: 10px;
}

/* 7列グリッド */
.hc-cal-grid[b-cvqbuu6yg7] {
    display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px;
}

/* 曜日ヘッダー */
.hc-dow[b-cvqbuu6yg7] {
    text-align: center; font-size: .72rem; font-weight: 700;
    color: var(--hl-color-64748b); padding: 4px 0;
}
.hc-dow--sun[b-cvqbuu6yg7] { color: var(--hl-color-dc2626); }
.hc-dow--sat[b-cvqbuu6yg7] { color: var(--hl-color-2563eb); }

/* 日付セル */
.hc-cell[b-cvqbuu6yg7] {
    text-align: center; font-size: .8rem; padding: 6px 2px;
    border-radius: 5px; cursor: pointer; color: var(--hl-color-334155);
    transition: background .1s;
    user-select: none;
}
.hc-cell:hover:not(.hc-cell--empty)[b-cvqbuu6yg7] { background: var(--hl-color-f1f5f9); }
.hc-cell--empty[b-cvqbuu6yg7]  { cursor: default; }

.hc-cell--sun[b-cvqbuu6yg7] { color: var(--hl-color-dc2626); }
.hc-cell--sat[b-cvqbuu6yg7] { color: var(--hl-color-2563eb); }

/* 非営業日 */
.hc-cell--holiday[b-cvqbuu6yg7] {
    background: var(--hl-color-fee2e2); color: var(--hl-color-b91c1c); font-weight: 600;
}
.hc-cell--holiday:hover[b-cvqbuu6yg7] { background: var(--hl-color-fecaca); }

/* 本日 */
.hc-cell--today[b-cvqbuu6yg7] {
    outline: 2px solid var(--hl-color-3b82f6); outline-offset: -2px; font-weight: 700;
}
.hc-cell--holiday.hc-cell--today[b-cvqbuu6yg7] {
    outline-color: var(--hl-color-dc2626);
}

/* 凡例 */
.hc-legend[b-cvqbuu6yg7] { font-size: .75rem; color: var(--hl-color-64748b); display: flex; align-items: center; gap: 12px; margin: 0; }
.hc-legend-box[b-cvqbuu6yg7] { display: inline-block; width: 14px; height: 14px; border-radius: 3px; margin-right: 4px; vertical-align: middle; }
.hc-legend-box--holiday[b-cvqbuu6yg7] { background: var(--hl-color-fee2e2); border: 1px solid var(--hl-color-fca5a5); }
.hc-legend-box--today[b-cvqbuu6yg7]   { outline: 2px solid var(--hl-color-3b82f6); outline-offset: -2px; background: var(--hl-color-fff); }
/* /Components/Pages/ClientUser/Settings/SettingsIndexPage.razor.rz.scp.css */
.cs-page[b-8gq8fo8mtc]  { padding: 24px; display: flex; flex-direction: column; gap: 20px; }
.cs-title[b-8gq8fo8mtc] { font-size: 1.1rem; font-weight: 700; color: var(--hl-color-0f172a); margin: 0; }

.cs-cards[b-8gq8fo8mtc] { display: flex; flex-direction: column; gap: 8px; max-width: 480px; }

.cs-card[b-8gq8fo8mtc] {
    display: flex; align-items: center; gap: 14px;
    padding: 14px 16px; background: var(--hl-color-fff);
    border: 1px solid var(--hl-color-e2e8f0); border-radius: 10px;
    text-decoration: none; color: inherit;
    transition: background .12s, box-shadow .12s;
}
.cs-card:hover[b-8gq8fo8mtc] { background: var(--hl-color-f8fafc); box-shadow: 0 2px 8px var(--hl-color-000000-a06); }

.cs-card-icon[b-8gq8fo8mtc] { font-size: 1.4rem; flex-shrink: 0; }
.cs-card-body[b-8gq8fo8mtc] { flex: 1; }
.cs-card-name[b-8gq8fo8mtc] { font-size: .9rem; font-weight: 600; color: var(--hl-color-1e293b); }
.cs-card-desc[b-8gq8fo8mtc] { font-size: .76rem; color: var(--hl-color-94a3b8); margin-top: 2px; }
.cs-card-arrow[b-8gq8fo8mtc] { font-size: 1.2rem; color: var(--hl-color-cbd5e1); flex-shrink: 0; }
/* /Components/Pages/ClientUser/Stock/ClientStockPanel.razor.rz.scp.css */
/* Hallmark · component: data-tree-list · genre: modern-minimal · theme: project tokens (--hl-*)
 * states: default · hover · focus-visible · active · pressed(aria-pressed) · expanded(aria-expanded); disabled/loading/error/success n/a (read-only list)
 * pre-emit critique: P4 H5 E4 S4 R5 V3
 * 商品は1行を丸ごと使う行、ロットは自分の見出しと列幅を持つ表。見出しを混在させない。色・フォントは既存の --hl-* を使う。
 */
.cs-panel[b-al7d9kd9ou] {
    /* ローカルのトークン。値は既存の --hl-*（tokens.css）から引く。 */
    --cs-text-muted: var(--hl-status-neutral-fg);
    --cs-line: color-mix(in srgb, var(--hl-status-neutral-fg) 28%, white);
    --cs-line-strong: color-mix(in srgb, var(--hl-status-neutral-fg) 55%, white);
    --cs-prod-bg: color-mix(in srgb, var(--hl-accent) 8%, white);
    --cs-lot-head-bg: var(--hl-surface-panel);
    --cs-planned: var(--hl-status-info-fg);
    --cs-out: var(--hl-status-change-fg);
    --cs-focus: var(--hl-accent);
    --cs-tog-hover-bg: color-mix(in srgb, var(--hl-accent) 14%, transparent);
    --cs-tog-active-bg: color-mix(in srgb, var(--hl-accent) 24%, transparent);

    /* 左の開閉ボタンの列の幅。ロットの表はこの分だけ字下げする。 */
    --cs-indent: 32px;

    /* フォルダ（Windows のフォルダの薄い黄色）。この2つだけは、色をそのまま持つ。 */
    --cs-folder-bg: color-mix(in srgb, #ffd866 32%, var(--hl-status-warning-bg));
    --cs-folder-icon: #f0b93a;
    --cs-folder-line: color-mix(in srgb, var(--cs-folder-icon) 55%, white);

    /* 商品の行・フォルダの行で同じ列を使う（開閉 | ID | 商品名 | 規格 | 温度帯 | 単量 | 在庫数合計 | 出庫可能数合計 | 主な配送先）。 */
    --cs-grid-cols:
        var(--cs-indent)
        60px minmax(0, 1.3fr) minmax(0, 1fr) 84px 96px 128px 112px minmax(0, 1.6fr);

    font-family: var(--hl-font-body);
    font-size: 14px;

    /* 残りの高さを使い、検索・並べ替え・ボタンの行は固定したまま、一覧（.cs-scroll）だけをスクロールさせる。 */
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.cs-toolbar[b-al7d9kd9ou] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 24px;
    margin-bottom: 12px;
}

.cs-search[b-al7d9kd9ou] {
    width: 320px;
    max-width: 100%;
    padding: 6px 10px;
    border: 1px solid var(--cs-line-strong);
    border-radius: 4px;
}

.cs-search:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 1px;
}

.cs-sortbar[b-al7d9kd9ou] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.cs-sortlabel[b-al7d9kd9ou] {
    color: var(--cs-text-muted);
    font-size: 12px;
}

.cs-sort[b-al7d9kd9ou] {
    padding: 4px 10px;
    border: 1px solid var(--cs-line-strong);
    border-radius: 4px;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.cs-sort:hover[b-al7d9kd9ou] {
    background: var(--cs-tog-hover-bg);
}

.cs-sort:active[b-al7d9kd9ou] {
    background: var(--cs-tog-active-bg);
}

.cs-sort:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 2px;
}

.cs-sort[aria-pressed="true"][b-al7d9kd9ou] {
    border-color: var(--cs-focus);
    background: var(--cs-prod-bg);
    font-weight: 700;
}

/* 「＋ 新商品登録」ボタン（ツールバーの右端）。 */
.cs-register[b-al7d9kd9ou] {
    margin-left: auto;
    padding: 6px 14px;
    border: 1px solid var(--cs-focus);
    border-radius: 4px;
    background: var(--cs-focus);
    color: white;
    font: inherit;
    cursor: pointer;
}

.cs-register:hover[b-al7d9kd9ou] {
    background: var(--hl-accent-dark);
}

.cs-register:active[b-al7d9kd9ou] {
    background: var(--hl-accent-dark);
    filter: brightness(0.92);
}

.cs-register:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 2px;
}

/* 未検証の印（うち出庫予定と同じ注意色）。 */
.cs-tag--unverified[b-al7d9kd9ou] {
    color: var(--cs-out);
}

/* 在庫が切れた商品の印と、最後に出庫した日。 */
.cs-tag--outofstock[b-al7d9kd9ou] {
    color: var(--cs-text-muted);
}

.cs-lastout[b-al7d9kd9ou] {
    margin-left: 6px;
    color: var(--cs-text-muted);
    font-size: 0.85em;
    white-space: nowrap;
}

.cs-nolots[b-al7d9kd9ou] {
    margin: 0;
    padding: 10px 6px 10px var(--cs-indent);
    color: var(--cs-text-muted);
}

.cs-message[b-al7d9kd9ou] {
    padding: 14px 0;
    color: var(--cs-text-muted);
}

.cs-message--error[b-al7d9kd9ou] {
    color: var(--hl-status-danger-fg);
}

.cs-scroll[b-al7d9kd9ou] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: auto;
    overflow-y: auto;
}

/* 固定幅の列の合計（ロットの表は字下げ込みで約1190px）+ コメントに最低130px。これより狭いときだけ横スクロール。 */
.cs-list[b-al7d9kd9ou] {
    min-width: 1440px;
}

/* ── 商品: 1行を丸ごと使う ───────────────────────────── */
.cs-product[b-al7d9kd9ou] {
    margin-bottom: 10px;
    border: 1px solid var(--cs-line);
    border-radius: 6px;
    overflow: hidden;
}

.cs-prodrow[b-al7d9kd9ou] {
    display: grid;
    /* 開閉 | 商品ID(4桁) | 商品名(平均11字・最長29字) | 規格(平均6字・最長19字) | 温度帯(最長5字) | 単量(「不定貫」か 99.99kg) | 在庫数合計 | 主な配送先 */
    grid-template-columns: var(--cs-grid-cols);
    align-items: start;
    column-gap: 12px;
    padding: 12px 0 12px 4px;
    background: var(--cs-prod-bg);
    cursor: pointer;
    user-select: none;
}

.cs-prodrow:hover[b-al7d9kd9ou] {
    background: color-mix(in srgb, var(--hl-accent) 14%, white);
}

.cs-prodrow:active[b-al7d9kd9ou] {
    background: color-mix(in srgb, var(--hl-accent) 22%, white);
}

.cs-prodrow:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: -2px;
}

.cs-f[b-al7d9kd9ou] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.cs-fl[b-al7d9kd9ou] {
    color: var(--cs-text-muted);
    font-size: 12px;
}

.cs-fv[b-al7d9kd9ou] {
    overflow-wrap: anywhere;
    font-size: 16px;
}

.cs-pname[b-al7d9kd9ou] {
    font-size: 18px;
    font-weight: 700;
}

.cs-pid[b-al7d9kd9ou] {
    font-variant-numeric: tabular-nums;
}

.cs-fnum[b-al7d9kd9ou] {
    align-items: flex-end;
    padding-right: 6px;
    text-align: right;
}

.cs-fnum .cs-fv[b-al7d9kd9ou] {
    font-weight: 700;
    white-space: nowrap;
}

/* ── ロット: 自分の見出しと列幅を持つ表（ロットNo・入庫日・管理日付・入庫数・出庫数・在庫数・備考） ── */
.cs-lots-scroll[b-al7d9kd9ou] {
    max-height: var(--cs-lots-max-height, 420px);
    margin-left: var(--cs-indent);
    overflow-y: auto;
}

.cs-lots[b-al7d9kd9ou] {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
}

/* ロットNo・入庫日・管理日付は同じ幅（ロットNo=開閉24+8桁+「入庫予定」の印が入る幅に合わせる）。備考は管理日付の1.5倍。
   入庫数・出庫数・在庫数も同じ幅（在庫数の「うち出庫予定 n」が入る幅に合わせる）。
   出庫止めは固定幅の右寄せ、コメントは残り幅を全部使う。 */
.cs-c-lot[b-al7d9kd9ou]     { width: 168px; }
.cs-c-date[b-al7d9kd9ou]    { width: 168px; }
.cs-c-mgmt[b-al7d9kd9ou]    { width: 168px; }
.cs-c-memo[b-al7d9kd9ou]    { width: 252px; }
.cs-c-in[b-al7d9kd9ou]      { width: 104px; }
.cs-c-out[b-al7d9kd9ou]     { width: 104px; }
.cs-c-stock[b-al7d9kd9ou]   { width: 104px; }
.cs-c-avail[b-al7d9kd9ou]   { width: 112px; }
.cs-c-comment[b-al7d9kd9ou] { width: auto; }
.cs-c-stop[b-al7d9kd9ou]    { width: 88px; }

.cs-lots[b-al7d9kd9ou] {
    font-size: 15px;
}

.cs-lots th[b-al7d9kd9ou] {
    padding: 6px 8px;
    border-bottom: 1px solid var(--cs-line-strong);
    background: var(--cs-lot-head-bg);
    position: sticky;
    top: 0;
    z-index: 1;
    color: var(--cs-text-muted);
    font-size: 12px;
    font-weight: 600;
    text-align: left;
    white-space: nowrap;
}

.cs-lots th.cs-num[b-al7d9kd9ou] {
    text-align: right;
}

.cs-lots td[b-al7d9kd9ou] {
    padding: 8px;
    border-bottom: 1px solid var(--cs-line);
    vertical-align: top;
    overflow-wrap: anywhere;
}

.cs-lots tr:last-child td[b-al7d9kd9ou] {
    border-bottom: 0;
}

.cs-num[b-al7d9kd9ou] {
    text-align: right;
    white-space: nowrap;
}

.cs-lot--planned td[b-al7d9kd9ou] {
    color: var(--cs-planned);
}

/* ── 開閉ボタン ───────────────────────────────────────── */
.cs-tog[b-al7d9kd9ou] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: inherit;
    font-size: 11px;
    cursor: pointer;
}

.cs-tog:hover[b-al7d9kd9ou] {
    background: var(--cs-tog-hover-bg);
}

.cs-tog:active[b-al7d9kd9ou] {
    background: var(--cs-tog-active-bg);
}

.cs-tog:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 1px;
}

.cs-tog-space[b-al7d9kd9ou] {
    display: inline-block;
    width: 24px;
}

.cs-tag[b-al7d9kd9ou] {
    margin-left: 6px;
    padding: 0 5px;
    border: 1px solid currentColor;
    border-radius: 3px;
    font-size: 11px;
    font-weight: 400;
    white-space: nowrap;
}

.cs-sub[b-al7d9kd9ou] {
    display: block;
    color: var(--cs-out);
    font-size: 11px;
    font-weight: 400;
    white-space: nowrap;
}

.cs-sub--planned[b-al7d9kd9ou] {
    color: var(--cs-planned);
}

/* ホバーで出庫日と配送先を見せる印（title）。 */
.cs-sub--hover[b-al7d9kd9ou] {
    cursor: help;
    text-decoration: underline dotted;
}

.cs-stop[b-al7d9kd9ou] {
    color: var(--hl-status-danger-fg);
    font-weight: 700;
}

/* ── 量目 ─────────────────────────────────────────────── */
.cs-weights td[b-al7d9kd9ou] {
    padding: 6px 6px 10px 38px;
    background: var(--cs-lot-head-bg);
}

.cs-weights-label[b-al7d9kd9ou] {
    margin-bottom: 4px;
    color: var(--cs-text-muted);
    font-size: 12px;
}

.cs-weights-list[b-al7d9kd9ou] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.cs-weights-list span[b-al7d9kd9ou] {
    min-width: 44px;
    padding: 2px 8px;
    border: 1px solid var(--cs-line);
    border-radius: 3px;
    background: white;
    text-align: right;
}

/* ── フォルダ ─────────────────────────────────────────── */
.cs-folder-block[b-al7d9kd9ou] {
    margin-bottom: 10px;
    border: 1px solid var(--cs-folder-line);
    border-radius: 6px;
    overflow: hidden;
}

.cs-folder[b-al7d9kd9ou] {
    display: grid;
    grid-template-columns: var(--cs-grid-cols);
    align-items: center;
    column-gap: 12px;
    padding: 10px 0 10px 4px;
    background: var(--cs-folder-bg);
    cursor: pointer;
    user-select: none;
}

.cs-folder:hover[b-al7d9kd9ou] {
    background: color-mix(in srgb, var(--cs-folder-icon) 34%, var(--hl-status-warning-bg));
}

.cs-folder:active[b-al7d9kd9ou] {
    background: color-mix(in srgb, var(--cs-folder-icon) 44%, var(--hl-status-warning-bg));
}

.cs-folder:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: -2px;
}

.cs-folder-main[b-al7d9kd9ou] {
    grid-column: 2 / 7;
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.cs-folder-icon[b-al7d9kd9ou] {
    flex: none;
    color: var(--cs-folder-icon);
}

.cs-folder-name[b-al7d9kd9ou] {
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: 16px;
    font-weight: 700;
}

.cs-folder-count[b-al7d9kd9ou] {
    flex: none;
    color: var(--cs-text-muted);
    font-size: 12px;
}

.cs-folder-total[b-al7d9kd9ou] {
    grid-column: 7;
    padding-right: 6px;
    text-align: right;
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
}

/* フォルダの中身は、1段ぶん字下げする。 */
.cs-folder-children[b-al7d9kd9ou] {
    margin: 8px 0 0 24px;
    padding-right: 8px;
}

/* ── フォルダの操作（カテゴリ追加・行の追加／メニュー・メッセージ帯） ───────── */
.cs-addcat[b-al7d9kd9ou] {
    padding: 6px 14px;
    border: 1px solid var(--cs-folder-icon);
    border-radius: 4px;
    background: var(--cs-folder-bg);
    font: inherit;
    cursor: pointer;
}

.cs-addcat:hover[b-al7d9kd9ou] {
    background: color-mix(in srgb, var(--cs-folder-icon) 34%, var(--hl-status-warning-bg));
}

.cs-addcat:active[b-al7d9kd9ou] {
    background: color-mix(in srgb, var(--cs-folder-icon) 44%, var(--hl-status-warning-bg));
}

.cs-addcat:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 2px;
}

.cs-folder-actions[b-al7d9kd9ou] {
    grid-column: 9;
    display: flex;
    justify-content: flex-end;
    gap: 4px;
    padding-right: 6px;
}

.cs-icon-btn[b-al7d9kd9ou] {
    width: 32px;
    height: 32px;
    border: 1px solid transparent;
    border-radius: 4px;
    background: transparent;
    font: inherit;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
}

.cs-icon-btn:hover[b-al7d9kd9ou] {
    border-color: var(--cs-folder-line);
    background: color-mix(in srgb, white 55%, transparent);
}

.cs-icon-btn:active[b-al7d9kd9ou] {
    background: color-mix(in srgb, white 75%, transparent);
}

.cs-icon-btn:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 1px;
}

.cs-notice[b-al7d9kd9ou] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 12px;
    padding: 8px 10px;
    border: 1px solid var(--hl-status-danger-fg);
    border-radius: 4px;
    color: var(--hl-status-danger-fg);
}

.cs-notice-close[b-al7d9kd9ou] {
    border: none;
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: 18px;
    cursor: pointer;
}

.cs-notice-close:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 1px;
}

/* ── ドラッグでの移動 ─────────────────────────────────── */
.cs-folder--drop[b-al7d9kd9ou] {
    outline: 2px dashed var(--cs-focus);
    outline-offset: -3px;
}

.cs-folder--no-drop[b-al7d9kd9ou] {
    opacity: 0.55;
    cursor: not-allowed;
}

.cs-rootdrop[b-al7d9kd9ou] {
    margin-bottom: 10px;
    padding: 10px;
    border: 2px dashed var(--cs-focus);
    border-radius: 6px;
    text-align: center;
    color: var(--cs-focus);
    font-weight: 700;
}

/* ── 出庫モード（出庫ダイアログ。出庫数の入力は在庫の後ろ） ───────────────── */
.cs-panel--out[b-al7d9kd9ou] {
    /* 開閉 | ID | 商品名 | 規格 | 温度帯 | 単量 | 在庫数合計 | 出庫可能数合計 | 出庫数を入力 | 主な配送先 */
    --cs-grid-cols:
        var(--cs-indent)
        60px minmax(0, 1.3fr) minmax(0, 1fr) 84px 96px 128px 112px 120px minmax(0, 1.6fr);
}

.cs-qty-input[b-al7d9kd9ou] {
    width: 88px;
    padding: 4px 6px;
    border: 1px solid var(--cs-line-strong);
    border-radius: 4px;
    font: inherit;
    text-align: right;
}

.cs-qty-input:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: 1px;
}

.cs-qty-input:disabled[b-al7d9kd9ou] {
    opacity: 0.5;
}

.cs-qty-input--invalid[b-al7d9kd9ou] {
    border-color: var(--hl-status-danger-fg);
}

.cs-qty-err[b-al7d9kd9ou] {
    display: block;
    color: var(--hl-status-danger-fg);
    font-size: 12px;
}

.cs-blocked[b-al7d9kd9ou] {
    color: var(--cs-out);
    font-size: 12px;
}

.cs-weights-note[b-al7d9kd9ou] {
    margin-left: 12px;
    color: var(--cs-out);
}

.cs-fin[b-al7d9kd9ou] {
    align-items: flex-end;
}

/* ── 出庫可能数（在庫数 － 出庫予定。0 の行はグレーで、出庫できないと分かるようにする） ── */
.cs-avail[b-al7d9kd9ou],
.cs-favail .cs-fv[b-al7d9kd9ou] {
    font-weight: 700;
}

.cs-lot--none td[b-al7d9kd9ou],
.cs-prodrow--none .cs-prodrow[b-al7d9kd9ou] {
    color: var(--cs-text-muted);
    background: color-mix(in srgb, var(--cs-text-muted) 10%, transparent);
}

.cs-lot--none td:not(.cs-lot-id) .cs-sub[b-al7d9kd9ou],
.cs-prodrow--none .cs-prodrow .cs-fv[b-al7d9kd9ou] {
    color: var(--cs-text-muted);
}

/* 所属の荷主名（子のいる親のログインで、商品名の隣に出す）。 */
.cs-owner[b-al7d9kd9ou] {
    display: inline-block;
    margin-left: 8px;
    padding: 1px 8px;
    border: 1px solid var(--cs-line-strong);
    border-radius: 10px;
    background: color-mix(in srgb, var(--hl-accent) 10%, white);
    color: var(--cs-text-muted);
    font-size: 12px;
    font-weight: 400;
    white-space: nowrap;
    vertical-align: 2px;
}

/* ── グループ（子のいる親の、子荷主ごとの見出し） ─────────────────── */
.cs-group[b-al7d9kd9ou] {
    margin-bottom: 18px;
}

.cs-group-head[b-al7d9kd9ou] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-left: 4px solid var(--cs-focus);
    border-radius: 4px;
    background: color-mix(in srgb, var(--hl-accent) 12%, white);
    cursor: pointer;
    user-select: none;
}

.cs-group-head:hover[b-al7d9kd9ou] {
    background: color-mix(in srgb, var(--hl-accent) 20%, white);
}

.cs-group-head:focus-visible[b-al7d9kd9ou] {
    outline: 2px solid var(--cs-focus);
    outline-offset: -2px;
}

.cs-group-name[b-al7d9kd9ou] {
    font-size: 17px;
    font-weight: 700;
}

.cs-group-count[b-al7d9kd9ou] {
    color: var(--cs-text-muted);
    font-size: 12px;
}

.cs-register--group[b-al7d9kd9ou] {
    padding: 4px 12px;
    font-size: 13px;
}

.cs-register--group + .cs-addcat--group[b-al7d9kd9ou] {
    margin-left: 8px;
}

.cs-addcat--group[b-al7d9kd9ou] {
    margin-left: auto;
    padding: 4px 12px;
    font-size: 13px;
}

.cs-group-body[b-al7d9kd9ou] {
    margin-top: 8px;
    padding-left: 12px;
}
/* /Components/Pages/ClientUser/Stock/FolderNameDialog.razor.rz.scp.css */
/* フォルダ名のダイアログ。色・フォントは既存の --hl-*（tokens.css）から引く（NewProductDialog.razor.css と同じ）。 */
.fn-dialog[b-c31n2ylz5p] {
    --fn-text-muted: var(--hl-status-neutral-fg);
    --fn-line: color-mix(in srgb, var(--hl-status-neutral-fg) 55%, white);
    --fn-focus: var(--hl-accent);
    --fn-danger: var(--hl-status-danger-fg);

    font-family: var(--hl-font-body);
    font-size: 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.fn-field[b-c31n2ylz5p] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fn-label[b-c31n2ylz5p] {
    font-weight: 700;
}

.fn-input[b-c31n2ylz5p] {
    padding: 6px 10px;
    border: 1px solid var(--fn-line);
    border-radius: 4px;
    font: inherit;
}

.fn-input:focus-visible[b-c31n2ylz5p] {
    outline: 2px solid var(--fn-focus);
    outline-offset: 1px;
}

.fn-hint[b-c31n2ylz5p] {
    margin: 0;
    color: var(--fn-text-muted);
    font-size: 12px;
}

.fn-message[b-c31n2ylz5p] {
    margin: 0;
    padding: 8px 10px;
    border: 1px solid var(--fn-danger);
    border-radius: 4px;
    color: var(--fn-danger);
}

.fn-actions[b-c31n2ylz5p] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.fn-btn[b-c31n2ylz5p] {
    padding: 6px 16px;
    border: 1px solid var(--fn-line);
    border-radius: 4px;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.fn-btn:hover:not(:disabled)[b-c31n2ylz5p] {
    background: color-mix(in srgb, var(--hl-accent) 14%, transparent);
}

.fn-btn:active:not(:disabled)[b-c31n2ylz5p] {
    background: color-mix(in srgb, var(--hl-accent) 24%, transparent);
}

.fn-btn:focus-visible[b-c31n2ylz5p] {
    outline: 2px solid var(--fn-focus);
    outline-offset: 2px;
}

.fn-btn:disabled[b-c31n2ylz5p] {
    cursor: default;
    opacity: 0.6;
}

.fn-btn--primary[b-c31n2ylz5p] {
    border-color: var(--hl-accent);
    background: var(--hl-accent);
    color: white;
}

.fn-btn--primary:hover:not(:disabled)[b-c31n2ylz5p] {
    background: var(--hl-accent-dark);
}
/* /Components/Pages/ClientUser/Stock/NewProductDialog.razor.rz.scp.css */
/* 新商品の登録ダイアログ。色・フォントは既存の --hl-*（tokens.css）から引く（ClientStockPanel.razor.css と同じ）。 */
.np-dialog[b-qypwgvx2tn] {
    --np-text-muted: var(--hl-status-neutral-fg);
    --np-line: color-mix(in srgb, var(--hl-status-neutral-fg) 55%, white);
    --np-focus: var(--hl-accent);
    --np-danger: var(--hl-status-danger-fg);

    font-family: var(--hl-font-body);
    font-size: 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.np-row[b-qypwgvx2tn] {
    display: flex;
    gap: 12px;
}

.np-field[b-qypwgvx2tn] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.np-field--grow[b-qypwgvx2tn] {
    flex: 1;
}

.np-field--temp[b-qypwgvx2tn] {
    width: 140px;
}

.np-label[b-qypwgvx2tn] {
    color: var(--np-text-muted);
    font-size: 12px;
}

.np-req[b-qypwgvx2tn] {
    margin-left: 4px;
    color: var(--np-danger);
}

.np-input[b-qypwgvx2tn] {
    padding: 6px 10px;
    border: 1px solid var(--np-line);
    border-radius: 4px;
    font: inherit;
}

.np-input:focus-visible[b-qypwgvx2tn] {
    outline: 2px solid var(--np-focus);
    outline-offset: 1px;
}

.np-input:disabled[b-qypwgvx2tn] {
    background: var(--hl-surface-panel);
    color: var(--np-text-muted);
}

.np-input--num[b-qypwgvx2tn] {
    width: 90px;
    text-align: right;
}

.np-inline[b-qypwgvx2tn] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
}

.np-radio[b-qypwgvx2tn],
.np-box[b-qypwgvx2tn] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.np-unit[b-qypwgvx2tn],
.np-times[b-qypwgvx2tn] {
    color: var(--np-text-muted);
}

.np-note[b-qypwgvx2tn] {
    margin: 0;
    color: var(--np-text-muted);
    font-size: 12px;
}

.np-error[b-qypwgvx2tn] {
    margin: 0;
    color: var(--np-danger);
    font-size: 12px;
}

.np-message[b-qypwgvx2tn] {
    margin: 0;
    padding: 8px 10px;
    border: 1px solid var(--np-danger);
    border-radius: 4px;
    color: var(--np-danger);
}

.np-actions[b-qypwgvx2tn] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.np-btn[b-qypwgvx2tn] {
    padding: 6px 16px;
    border: 1px solid var(--np-line);
    border-radius: 4px;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.np-btn:hover:not(:disabled)[b-qypwgvx2tn] {
    background: color-mix(in srgb, var(--hl-accent) 14%, transparent);
}

.np-btn:active:not(:disabled)[b-qypwgvx2tn] {
    background: color-mix(in srgb, var(--hl-accent) 24%, transparent);
}

.np-btn:focus-visible[b-qypwgvx2tn] {
    outline: 2px solid var(--np-focus);
    outline-offset: 2px;
}

.np-btn:disabled[b-qypwgvx2tn] {
    cursor: default;
    opacity: 0.6;
}

.np-btn--primary[b-qypwgvx2tn] {
    border-color: var(--hl-accent);
    background: var(--hl-accent);
    color: white;
}

.np-btn--primary:hover:not(:disabled)[b-qypwgvx2tn] {
    background: var(--hl-accent-dark);
}
/* /Components/Pages/ClientUser/Stock/StockOutboundDialog.razor.rz.scp.css */
/* 出庫ダイアログ。色・フォントは既存の --hl-*（tokens.css）から引く（NewProductDialog.razor.css と同じ）。 */
.so-dialog[b-lakt496kt1] {
    --so-line: color-mix(in srgb, var(--hl-status-neutral-fg) 55%, white);
    --so-focus: var(--hl-accent);
    --so-danger: var(--hl-status-danger-fg);

    font-family: var(--hl-font-body);
    font-size: 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.so-shipdate[b-lakt496kt1] {
    margin: 0;
}

.so-body[b-lakt496kt1] {
    max-height: 62vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.so-message[b-lakt496kt1] {
    margin: 0;
    padding: 16px 0;
}

.so-message--error[b-lakt496kt1] {
    color: var(--so-danger);
}

.so-footer[b-lakt496kt1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 8px;
    border-top: 1px solid var(--so-line);
}

.so-total strong[b-lakt496kt1] {
    font-size: 18px;
}

.so-actions[b-lakt496kt1] {
    display: flex;
    gap: 8px;
}

.so-btn[b-lakt496kt1] {
    padding: 6px 16px;
    border: 1px solid var(--so-line);
    border-radius: 4px;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.so-btn:hover:not(:disabled)[b-lakt496kt1] {
    background: color-mix(in srgb, var(--hl-accent) 14%, transparent);
}

.so-btn:active:not(:disabled)[b-lakt496kt1] {
    background: color-mix(in srgb, var(--hl-accent) 24%, transparent);
}

.so-btn:focus-visible[b-lakt496kt1] {
    outline: 2px solid var(--so-focus);
    outline-offset: 2px;
}

.so-btn:disabled[b-lakt496kt1] {
    cursor: default;
    opacity: 0.6;
}

.so-btn--primary[b-lakt496kt1] {
    border-color: var(--hl-accent);
    background: var(--hl-accent);
    color: white;
}

.so-btn--primary:hover:not(:disabled)[b-lakt496kt1] {
    background: var(--hl-accent-dark);
}
/* /Components/Pages/HinodeOperator/Home.razor.rz.scp.css */
.rsb-page[b-th72cog59l] {
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: relative;
    /* ページ全体の縦スクロールを出さないよう、画面の高さに収める。
       83px = 上部バー(51px) + レイアウト本体の上下の余白(16px×2)。表の中だけがスクロールする。 */
    box-sizing: border-box;
    height: calc(100vh - 83px);
    min-height: 360px;
}

/* ── ヘッダー ── */
.rsb-header[b-th72cog59l] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.rsb-title-wrap[b-th72cog59l] {
    display: flex;
    align-items: baseline;
    gap: 14px;
    flex: 1;
}

.rsb-title[b-th72cog59l] {
    font-size: 15px;
    font-weight: 700;
    color: var(--hl-color-1a237e);
}

.rsb-refresh-btn[b-th72cog59l] {
    padding: 5px 14px;
    border: 1px solid var(--hl-color-ccc);
    border-radius: 4px;
    background: var(--hl-color-fff);
    cursor: pointer;
    font-size: 12px;
}

.rsb-range[b-th72cog59l] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-right: 10px;
}

.rsb-date-input[b-th72cog59l] {
    padding: 4px 6px;
    border: 1px solid var(--hl-color-ccc);
    border-radius: 4px;
    font-size: 12px;
}

.rsb-refresh-btn:hover[b-th72cog59l]    { background: var(--hl-color-f0f0f0); }
.rsb-refresh-btn:disabled[b-th72cog59l] { opacity: .5; cursor: default; }

/* ── テーブル ── */
/* 縦にもスクロールできる枠にして、日付の見出し行を上に固定する（sticky は最も近いスクロール枠が基準になる） */
.rsb-scroll[b-th72cog59l] {
    overflow: auto;
    flex: 1 1 auto;
    min-height: 0;
}

.rsb-table[b-th72cog59l] {
    /* 罫線を重ねない方式にする。重ねる方式（collapse）だと、固定した見出し行の上端の罫線部分が塗られず、
       スクロールした行が見出しの上に透けて見える。 */
    border-collapse: separate;
    border-spacing: 0;
    font-size: 13px;
    min-width: 600px;
}

.rsb-th-cat[b-th72cog59l],
.rsb-td-cat[b-th72cog59l] {
    padding: 8px 12px;
    background: var(--hl-color-eceff1);
    border: 1px solid var(--hl-color-cfd8dc);
    font-weight: 600;
    white-space: nowrap;
    min-width: 80px;
}

.rsb-th-date[b-th72cog59l] {
    vertical-align: top;
    padding: 6px 8px;
    background: var(--hl-color-eceff1);
    border: 1px solid var(--hl-color-cfd8dc);
    text-align: center;
    white-space: nowrap;
    min-width: 110px;
}

.rsb-dow[b-th72cog59l] {
    display: block;
    font-size: 10px;
    color: var(--hl-color-78909c);
    font-weight: 400;
}

/* 国民の祝日の名称（日付の見出しの曜日の下） */
.rsb-holiday-name[b-th72cog59l] {
    display: block;
    padding: 0 2px;
    font-size: 10px;
    font-weight: 600;
    color: var(--hl-status-danger-fg);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rsb-col-today[b-th72cog59l] {
    background: var(--hl-color-e8eaf6) !important;
}

.rsb-sat[b-th72cog59l] { color: var(--hl-accent-dark); }
.rsb-sun[b-th72cog59l] { color: var(--hl-status-danger-fg); }

.rsb-td-cell[b-th72cog59l] {
    border: 1px solid var(--hl-color-e0e0e0);
    padding: 6px 8px;
    vertical-align: top;
    text-align: center;
}

/* ── セル内統計 ── */
.rsb-cell-stats[b-th72cog59l] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: center;
    margin-top: 4px;
    font-size: 11px;
    color: var(--hl-color-546e7a);
}

.rsb-cell-empty[b-th72cog59l] { color: var(--hl-color-bbb); }

/* ── ツリー ── */
.rsb-team-heading[b-th72cog59l] {
    padding: 4px 12px;
    background: var(--hl-color-cfd8dc);
    border: 1px solid var(--hl-color-cfd8dc);
    font-size: 12px;
    font-weight: 700;
    color: var(--hl-color-546e7a);
}

.rsb-team-heading--team[b-th72cog59l] {
    background: var(--lappr-bg);
    color: var(--lappr-fg);
    border-left: 4px solid var(--lappr-accent);
}

/* 全体の行は、各区分の合計を見せる集計行。他の行と区別できるよう、背景と数字を少し強める */
.rsb-row-all .rsb-td-cat[b-th72cog59l] { background: var(--hl-color-e8eaf6); }

.rsb-row-all .rsb-td-cell[b-th72cog59l] {
    background: var(--hl-color-e8eaf6);
    border-bottom: 2px solid var(--hl-color-7986cb);
}

.rsb-row-all .rsb-td-cat[b-th72cog59l] {
    border-bottom: 2px solid var(--hl-color-7986cb);
    /* 他の業務区分の行（担当の色の4px左線）と同じ太さの左線 */
    border-left: 4px solid var(--hl-color-7986cb);
}

.rsb-row-all .rsb-cell-stats[b-th72cog59l] {
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    font-variant-numeric: tabular-nums;
    color: var(--hl-color-1a237e);
}

/* 区分列は所属する業務担当の色（--lappr-* は ContactCategoryStyle が inline で設定） */
.rsb-td-cat--team[b-th72cog59l] {
    background: var(--lappr-bg);
    color: var(--lappr-fg);
    border-left: 4px solid var(--lappr-accent);
}

.rsb-td-cat--team .rsb-basis[b-th72cog59l] { color: inherit; opacity: 0.7; }

.rsb-basis[b-th72cog59l] {
    display: block;
    font-size: 10px;
    font-weight: 400;
    color: var(--hl-color-78909c);
}

.rsb-check[b-th72cog59l] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
}

.rsb-manual-icon[b-th72cog59l] {
    font-size: 10px;
    opacity: .7;
}

/* ── 状態の背景 ── */
.rsb-st-warning[b-th72cog59l] { background: var(--hl-status-warning-bg); }
.rsb-st-stopped[b-th72cog59l] { background: var(--hl-status-danger-bg); }
.rsb-st-closed[b-th72cog59l]  { background: var(--hl-status-neutral-bg); color: var(--hl-color-888); }

/* 今日の列でも状態の背景色を優先する */
.rsb-td-cell.rsb-col-today.rsb-st-warning[b-th72cog59l] { background: var(--hl-status-warning-bg) !important; }
.rsb-td-cell.rsb-col-today.rsb-st-stopped[b-th72cog59l] { background: var(--hl-status-danger-bg) !important; }
.rsb-td-cell.rsb-col-today.rsb-st-closed[b-th72cog59l]  { background: var(--hl-status-neutral-bg) !important; }

/* ── ローディング ── */
.rsb-loading[b-th72cog59l] { color: var(--hl-color-888); padding: 16px; text-align: center; }

/* ── セルメニュー ── */
.rsb-backdrop[b-th72cog59l] {
    position: fixed;
    inset: 0;
    z-index: 100;
}

.rsb-menu-btn[b-th72cog59l] {
    margin-left: 4px;
    padding: 0 6px;
    border: none;
    background: none;
    cursor: pointer;
    color: var(--hl-color-78909c);
    font-size: 12px;
}

.rsb-cutoff[b-th72cog59l] {
    font-size: 10px;
    color: var(--hl-accent-dark);
}

.rsb-dd-hint[b-th72cog59l] {
    font-size: 11px;
    color: var(--hl-color-78909c);
    padding: 0 14px 4px;
}

.rsb-dropdown[b-th72cog59l] {
    position: fixed;
    top: 30%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 200;
    background: var(--hl-color-fff);
    border: 1px solid var(--hl-color-ddd);
    border-radius: 6px;
    box-shadow: 0 4px 16px var(--hl-color-000000-a15);
    min-width: 160px;
    display: flex;
    flex-direction: column;
    text-align: left;
}

.rsb-dd-item[b-th72cog59l] {
    padding: 8px 14px;
    border: none;
    background: none;
    cursor: pointer;
    font-size: 12px;
    text-align: left;
    color: var(--hl-color-333);
}

.rsb-dd-item:hover[b-th72cog59l]        { background: var(--hl-status-neutral-bg); }
.rsb-dd-item--reset[b-th72cog59l]       { color: var(--hl-color-888); font-size: 11px; }

.rsb-dd-field[b-th72cog59l] {
    padding: 6px 14px;
    font-size: 11px;
    color: var(--hl-color-546e7a);
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.rsb-dd-sep[b-th72cog59l] {
    height: 1px;
    background: var(--hl-color-eee);
    margin: 2px 0;
}

.rsb-dd-title[b-th72cog59l] {
    padding: 8px 14px 4px;
    font-size: 12px;
    font-weight: bold;
    color: var(--hl-color-546e7a);
}

/* ── 荷主・ノードのサブ行 ── */
.rsb-td-sub[b-th72cog59l] {
    padding: 4px 12px 4px 20px;
    border: 1px solid var(--hl-color-e0e0e0);
    font-size: 11px;
    color: var(--hl-color-546e7a);
    white-space: nowrap;
}

.rsb-td-sub-cell[b-th72cog59l] {
    border: 1px solid var(--hl-color-e0e0e0);
    padding: 2px 6px;
    text-align: center;
    font-size: 11px;
}

.rsb-client-btn[b-th72cog59l] {
    border: none;
    background: none;
    cursor: pointer;
    font-size: 11px;
    color: var(--hl-accent-dark);
    max-width: 140px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rsb-node-empty[b-th72cog59l] { font-size: 11px; color: var(--hl-color-78909c); }

.rsb-node-btn[b-th72cog59l] {
    margin-left: 8px;
    padding: 0 6px;
    border: 1px solid var(--hl-color-cfd8dc);
    border-radius: 3px;
    background: var(--hl-color-fff);
    cursor: pointer;
    font-size: 10px;
    color: var(--hl-color-546e7a);
}

.rsb-node-btn:hover[b-th72cog59l] { background: var(--hl-color-eceff1); }
.rsb-node-btn--danger[b-th72cog59l] { color: var(--hl-status-danger-fg); }
.rsb-node-actions[b-th72cog59l] { margin-left: 4px; white-space: nowrap; }

/* ── ノード（業務区分の下の展開部分）──
   担当の色（--lappr-*）を薄く敷き、左端の線で「どの担当の配下か」を示す。
   階層は字下げ＋つなぎ線で示し、深いほど文字を小さく・薄くする。 */
.rsb-td-node[b-th72cog59l] {
    position: relative;
    padding: 5px 12px 5px calc(16px + var(--depth, 0) * 20px);
    background: color-mix(in srgb, var(--lappr-bg, var(--hl-color-eceff1)) 28%, var(--hl-color-fff));
    border: 1px solid var(--hl-color-e0e0e0);
    border-left: 4px solid var(--lappr-accent, var(--hl-color-cfd8dc));
    white-space: nowrap;
    min-width: 150px;
}

/* 子ノードのつなぎ線（┗ の形） */
.rsb-td-node--child[b-th72cog59l]::before {
    content: "";
    position: absolute;
    left: calc(16px + (var(--depth, 1) - 1) * 20px + 4px);
    top: 0;
    width: 10px;
    height: 50%;
    border-left: 1px solid var(--hl-color-78909c);
    border-bottom: 1px solid var(--hl-color-78909c);
}

/* 子ノードの開閉ボタン。閉じていても「+件数」のバッジで子の存在が分かる */
.rsb-node-line[b-th72cog59l] {
    display: flex;
    align-items: center;
    gap: 4px;
    min-height: 18px;
}

.rsb-node-fold[b-th72cog59l] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 0 4px;
    border: 1px solid var(--hl-color-cfd8dc);
    border-radius: 999px;
    background: var(--hl-color-fff);
    cursor: pointer;
    font-size: 10px;
    line-height: 16px;
    color: var(--hl-color-546e7a);
}

.rsb-node-fold:hover[b-th72cog59l] { background: var(--hl-color-eceff1); }
.rsb-node-fold:focus:not(:focus-visible)[b-th72cog59l] { outline: none; }
.rsb-node-fold:focus-visible[b-th72cog59l] { outline: 2px solid var(--hl-accent); outline-offset: 2px; }
.rsb-node-fold-mark[b-th72cog59l] { width: 10px; text-align: center; }

.rsb-node-fold--closed[b-th72cog59l] {
    border-color: var(--lappr-accent, var(--hl-accent));
    background: var(--hl-color-fff);
    font-weight: 600;
}

.rsb-node-fold-count[b-th72cog59l] {
    padding: 0 4px;
    border-radius: 999px;
    background: var(--lappr-accent, var(--hl-accent));
    color: var(--lappr-fg-on-accent, var(--hl-color-fff));
    font-size: 10px;
    font-variant-numeric: tabular-nums;
}

.rsb-node-name[b-th72cog59l] {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: var(--lappr-fg, var(--hl-color-546e7a));
}

/* ノード名の後ろのメニュー。普段は薄く、行にポインターを乗せたとき（キーボードのフォーカス時も）にはっきり見せる */
.rsb-node-menu-wrap[b-th72cog59l] {
    position: relative;
    display: inline-flex;
    margin-left: 2px;
    opacity: .45;
}

.rsb-row-node:hover .rsb-node-menu-wrap[b-th72cog59l],
.rsb-node-menu-wrap:focus-within[b-th72cog59l] { opacity: 1; }

.rsb-node-menu-btn[b-th72cog59l] {
    padding: 0 5px;
    border: 1px solid transparent;
    border-radius: 4px;
    background: transparent;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    line-height: 16px;
    color: var(--hl-color-546e7a);
}

.rsb-node-menu-btn:hover[b-th72cog59l] { background: var(--hl-color-fff); border-color: var(--hl-color-cfd8dc); }
.rsb-node-menu-btn:focus:not(:focus-visible)[b-th72cog59l] { outline: none; }
.rsb-node-menu-btn:focus-visible[b-th72cog59l] { outline: 2px solid var(--hl-accent); outline-offset: 1px; }

/* 開いたメニューは、背面の幕(z-index:100)と下の行の固定列より前に出す */
.rsb-td-node.rsb-td-node--menu-open[b-th72cog59l] { z-index: 150; }

.rsb-node-menu[b-th72cog59l] {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 200;
    min-width: 140px;
    display: flex;
    flex-direction: column;
    background: var(--hl-color-fff);
    border: 1px solid var(--hl-color-ddd);
    border-radius: 6px;
    box-shadow: 0 4px 16px var(--hl-color-000000-a15);
    text-align: left;
    white-space: nowrap;
}

.rsb-row-node--child .rsb-node-name[b-th72cog59l] {
    font-size: 11px;
    font-weight: 500;
    color: var(--hl-color-546e7a);
}

.rsb-node-cutoff[b-th72cog59l] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-top: 1px;
    font-size: 10px;
    color: var(--hl-color-546e7a);
    font-variant-numeric: tabular-nums;
}

/* 区分・上位ノードから引き継いだ締切は薄く表示し、出どころを小さなタグで示す */
.rsb-node-cutoff--inherit[b-th72cog59l] { color: var(--hl-color-78909c); }

.rsb-tag[b-th72cog59l] {
    padding: 0 5px;
    border: 1px solid var(--hl-color-cfd8dc);
    border-radius: 3px;
    background: var(--hl-color-fff);
    font-size: 9px;
    line-height: 14px;
    color: var(--hl-color-78909c);
}

/* ノード行のセル: 数字をそろえ、チェックを控えめに。ホバーで行全体を追いやすく */
.rsb-row-node .rsb-td-cell[b-th72cog59l] {
    padding: 4px 6px;
    background: var(--hl-color-fff);
}

.rsb-row-node .rsb-cell-stats[b-th72cog59l] {
    margin-top: 2px;
    line-height: 1.35;
    font-variant-numeric: tabular-nums;
    color: var(--hl-color-546e7a);
}

.rsb-row-node:hover .rsb-td-cell:not(.rsb-st-warning):not(.rsb-st-stopped):not(.rsb-st-closed):not(.rsb-col-today)[b-th72cog59l] {
    background: var(--hl-color-fafafa);
}

.rsb-check input[type="checkbox"][b-th72cog59l] { accent-color: var(--hl-accent); cursor: pointer; }

/* ── 横スクロールしても先頭列（区分・ノード名）を見失わない ── */
.rsb-th-cat[b-th72cog59l],
.rsb-td-cat[b-th72cog59l],
.rsb-td-node[b-th72cog59l],
.rsb-row-sub > .rsb-td-sub:first-child[b-th72cog59l] {
    position: sticky;
    left: 0;
    z-index: 2;
}
.rsb-td-node[b-th72cog59l] { position: sticky; }
.rsb-td-node--child[b-th72cog59l]::before { z-index: 1; }
.rsb-row-sub > .rsb-td-sub:first-child[b-th72cog59l] { background: var(--hl-color-fff); }

/* 制限中の荷主の行も、ノード行と同じく担当の色の左線と薄い色にそろえる */
.rsb-row-sub > .rsb-td-sub--team:first-child[b-th72cog59l] {
    background: color-mix(in srgb, var(--lappr-bg, var(--hl-color-eceff1)) 28%, var(--hl-color-fff));
    border-left: 4px solid var(--lappr-accent, var(--hl-color-cfd8dc));
}

.rsb-td-cat--link[b-th72cog59l] { cursor: pointer; }
.rsb-td-cat--link:hover[b-th72cog59l] { text-decoration: underline; }

/* ── 日付の見出し行を固定（縦スクロール）。左上の「区分」は縦横どちらでも固定 ── */
.rsb-table thead th[b-th72cog59l] {
    position: sticky;
    top: 0;
    z-index: 3;
    box-shadow: 0 1px 0 var(--hl-color-cfd8dc);
}

.rsb-table thead .rsb-th-cat[b-th72cog59l] {
    left: 0;
    z-index: 4;
}

/* 罫線を重ねない方式のため、隣り合うセルの罫線が2本にならないよう、上と左の罫線を消す
   （先頭列の左線＝担当の色の4px線は残す） */
.rsb-table th[b-th72cog59l],
.rsb-table td[b-th72cog59l] { border-top-width: 0; }
.rsb-table th:not(:first-child)[b-th72cog59l],
.rsb-table td:not(:first-child)[b-th72cog59l] { border-left-width: 0; }
.rsb-table thead th[b-th72cog59l] { border-top: 1px solid var(--hl-color-cfd8dc); }

/* ── 土日の列の背景色（土=薄い青、日=薄いピンク）──
   セルの状態色（注意・停止・受付終了）と今日の列の強調は、これより優先する。全体の行は専用の色を保つ。 */
.rsb-table thead th.rsb-wk-sat[b-th72cog59l] { background: color-mix(in srgb, var(--hl-accent) 14%, var(--hl-color-eceff1)); }
.rsb-table thead th.rsb-wk-sun[b-th72cog59l] { background: color-mix(in srgb, var(--hl-status-danger-fg) 12%, var(--hl-color-eceff1)); }

/* 土日の色は背景色の上に重ねる（業務区分の行の担当色の上でも、土日だと分かる）。状態色・今日の列は background で上書きされるため、そちらが優先になる */
.rsb-table tr:not(.rsb-row-all) td.rsb-wk-sat[b-th72cog59l] { background-image: linear-gradient(color-mix(in srgb, var(--hl-accent) 8%, transparent), color-mix(in srgb, var(--hl-accent) 8%, transparent)); }
.rsb-table tr:not(.rsb-row-all) td.rsb-wk-sun[b-th72cog59l] { background-image: linear-gradient(color-mix(in srgb, var(--hl-status-danger-fg) 6%, transparent), color-mix(in srgb, var(--hl-status-danger-fg) 6%, transparent)); }

/* 業務区分の行のセルには、担当の色を薄く敷く（ノードの見出しと同じ濃さ）。担当の色が無い区分は白のまま */
.rsb-row-cat td.rsb-td-cell[b-th72cog59l] { background-color: color-mix(in srgb, var(--lappr-bg, var(--hl-color-fff)) 55%, var(--hl-color-fff)); }

.rsb-table td.rsb-td-cell.rsb-st-warning[b-th72cog59l] { background: var(--hl-status-warning-bg); }
.rsb-table td.rsb-td-cell.rsb-st-stopped[b-th72cog59l] { background: var(--hl-status-danger-bg); }
.rsb-table td.rsb-td-cell.rsb-st-closed[b-th72cog59l]  { background: var(--hl-status-neutral-bg); }

/* ── 業務区分のセルをクリックしてノードを開閉する ──
   開閉できる区分には、名称の右に「▾/▸」とノードの件数のバッジを出す（閉じていても、ノードがあると分かる） */
.rsb-td-cat--foldable[b-th72cog59l] { cursor: pointer; user-select: none; }
.rsb-td-cat--foldable:hover[b-th72cog59l] { filter: brightness(0.96); }
.rsb-td-cat--foldable:focus-visible[b-th72cog59l] { outline: 2px solid var(--hl-accent); outline-offset: -2px; }

.rsb-cat-line[b-th72cog59l] { display: flex; align-items: center; gap: 6px; }

.rsb-cat-fold[b-th72cog59l] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 0 6px 0 4px;
    border: 1px solid var(--lappr-accent, var(--hl-color-cfd8dc));
    border-radius: 999px;
    background: var(--hl-color-fff);
    font-size: 10px;
    font-weight: 600;
    line-height: 16px;
    color: var(--lappr-fg, var(--hl-color-546e7a));
}

.rsb-cat-fold-mark[b-th72cog59l] { width: 10px; text-align: center; }
.rsb-cat-fold-count[b-th72cog59l] { font-variant-numeric: tabular-nums; }

/* ── 荷主制限のバッジ（受注を止められている荷主の件数だけを出す） ── */
.rsb-client-badge[b-th72cog59l] {
    margin-left: 6px;
    padding: 0 7px;
    border: 1px solid var(--hl-status-warning-fg);
    border-radius: 999px;
    background: var(--hl-status-warning-bg);
    color: var(--hl-status-warning-fg);
    font-size: 10px;
    font-weight: 600;
    line-height: 16px;
    cursor: pointer;
    white-space: nowrap;
}

.rsb-client-badge:hover[b-th72cog59l] { background: var(--hl-color-fff); }
.rsb-client-badge:focus:not(:focus-visible)[b-th72cog59l] { outline: none; }
.rsb-client-badge:focus-visible[b-th72cog59l] { outline: 2px solid var(--hl-accent); outline-offset: 2px; }

/* ── 業務区分の行は、今日の列・受付終了のセルにも担当の色を出す（ノードの行は対象外で、従来の配色） ──
   「受付終了」の灰色と今日の列の青紫が、担当の色を隠さないようにする（受付終了はチェックの外れと文字色で分かる）。
   注意（黄）・停止（赤）は、これまでどおり状態の色を優先する。 */
.rsb-row-cat td.rsb-td-cell.rsb-st-closed:not(.rsb-col-today)[b-th72cog59l] {
    background: color-mix(in srgb, var(--lappr-bg, var(--hl-status-neutral-bg)) 35%, var(--hl-status-neutral-bg));
}

.rsb-row-cat td.rsb-td-cell.rsb-col-today:not(.rsb-st-warning):not(.rsb-st-stopped)[b-th72cog59l] {
    background: color-mix(in srgb, var(--lappr-bg, var(--hl-color-e8eaf6)) 72%, var(--hl-color-fff)) !important;
}

/* ── 担当見出しの「ノード設定」ボタン（⋯ のアイコン） ── */
.rsb-team-menu-btn[b-th72cog59l] {
    margin-left: 8px;
    padding: 0 8px;
    border: 1px solid transparent;
    border-radius: 4px;
    background: transparent;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    line-height: 16px;
    letter-spacing: 1px;
    color: var(--hl-color-546e7a);
}

/* 通常は背景も枠も透明。ホバー・フォーカスしたときだけ、薄い白を重ねてボタンだと分かるようにする */
.rsb-team-menu-btn:hover[b-th72cog59l] { background: color-mix(in srgb, var(--hl-color-fff) 45%, transparent); border-color: color-mix(in srgb, var(--hl-color-fff) 70%, transparent); }
.rsb-team-menu-btn:focus:not(:focus-visible)[b-th72cog59l] { outline: none; }
.rsb-team-menu-btn:focus-visible[b-th72cog59l] { outline: 2px solid var(--hl-accent); outline-offset: 2px; }

/* ── 荷量の文字色（上限に対する割合） ──
   70%以上=濃い黄、90%以上=赤＋太字＋▲（色だけに頼らない）。上限が無いセルは付かない（今の色のまま）。
   黄は、白・淡い黄・ピンク・担当色の背景でも文字として読める濃さ（コントラスト4.0以上）にしてある。 */
.rsb-page[b-th72cog59l] { --rsb-load-caution-fg: #8a6d00; }

.rsb-cell-stats.rsb-load-caution[b-th72cog59l] { color: var(--rsb-load-caution-fg); }

.rsb-cell-stats.rsb-load-high[b-th72cog59l] {
    color: var(--hl-status-danger-fg);
    font-weight: 700;
}

.rsb-cell-stats.rsb-load-high[b-th72cog59l]::before { content: "▲"; }
/* /Components/Pages/HinodeOperator/LocationInquiries/OperatorLocationInquiryDialog.razor.rz.scp.css */
.oli-dialog[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0 4px 8px;
}

.oli-dialog--loading[b-m335usroid] {
    min-height: 200px;
    align-items: center;
    justify-content: center;
}

.oli-spinner[b-m335usroid], .oli-error-msg[b-m335usroid] {
    color: var(--rz-text-secondary-color);
    font-size: 0.95rem;
    text-align: center;
    padding: 40px;
}

/* ── ステータスバー ── */
.oli-status-bar[b-m335usroid] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 2px;
    padding: 8px 0 12px;
    margin-bottom: 4px;
    border-bottom: 1px solid var(--rz-border-color);
}

.oli-status-arrow[b-m335usroid] {
    color: var(--rz-text-secondary-color);
    font-size: 0.8rem;
    padding: 0 2px;
}

.oli-status-step[b-m335usroid] {
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 0.8rem;
    background: var(--rz-base-200);
    color: var(--rz-text-secondary-color);
}

.oli-status-step--current[b-m335usroid] {
    background: var(--rz-primary);
    color: var(--hl-color-fff);
    font-weight: 600;
}

.oli-client-badge[b-m335usroid] {
    margin-left: auto;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--rz-primary);
    background: color-mix(in srgb, var(--rz-primary) 12%, transparent);
    padding: 2px 10px;
    border-radius: 10px;
}

/* ── グリッド（集荷先/配送先の横並び） ── */
.oli-grid[b-m335usroid] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 12px;
}

@media (max-width: 700px) {
    .oli-grid[b-m335usroid] {
        grid-template-columns: 1fr;
    }
}

/* ── セクション ── */
.oli-section[b-m335usroid] {
    border: 1px solid var(--rz-border-color);
    border-radius: 6px;
    margin-top: 12px;
    overflow: hidden;
}

.oli-section--estimate[b-m335usroid] {
    border-color: var(--rz-info);
    background: color-mix(in srgb, var(--rz-info) 5%, transparent);
}

.oli-section--register[b-m335usroid] {
    border-color: var(--rz-success);
    background: color-mix(in srgb, var(--rz-success) 5%, transparent);
}

.oli-section--done[b-m335usroid] {
    border-color: var(--rz-success);
    background: color-mix(in srgb, var(--rz-success) 8%, transparent);
}

.oli-section--cargo[b-m335usroid] {
    border-color: var(--rz-base-300);
}

.oli-section--fare[b-m335usroid] {
    border-color: var(--rz-primary);
    background: color-mix(in srgb, var(--rz-primary) 5%, transparent);
}

.oli-section-header[b-m335usroid] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 12px;
    background: var(--rz-base-200);
    border-bottom: 1px solid var(--rz-border-color);
    flex-wrap: wrap;
}

.oli-section-title[b-m335usroid] {
    font-weight: 600;
    font-size: 0.88rem;
}

.oli-help-text[b-m335usroid] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary-color);
}

/* ── 種別バッジ ── */
.oli-kind-badge[b-m335usroid] {
    font-size: 0.74rem;
    padding: 2px 8px;
    border-radius: 10px;
    font-weight: 600;
}

.oli-kind-badge--new[b-m335usroid] {
    background: color-mix(in srgb, var(--rz-warning) 20%, transparent);
    color: color-mix(in srgb, var(--rz-warning) 80%, var(--hl-color-000));
    border: 1px solid var(--rz-warning);
}

.oli-kind-badge--existing[b-m335usroid] {
    background: color-mix(in srgb, var(--rz-info) 15%, transparent);
    color: var(--rz-info);
    border: 1px solid color-mix(in srgb, var(--rz-info) 40%, transparent);
}

/* ── 情報グリッド ── */
.oli-info-grid[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 8px 12px;
}

.oli-info-row[b-m335usroid] {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 4px;
    padding: 3px 0;
    border-bottom: 1px solid var(--rz-base-200);
    align-items: baseline;
}

.oli-info-row:last-child[b-m335usroid] {
    border-bottom: none;
}

.oli-info-row--full[b-m335usroid] {
    grid-template-columns: 80px 1fr;
}

.oli-info-value--full-row[b-m335usroid] {
    grid-column: 1 / -1;
    white-space: nowrap;
}

.oli-info-label[b-m335usroid] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

.oli-info-value[b-m335usroid] {
    font-size: 0.88rem;
    color: var(--rz-text-color);
}

.oli-value--pre[b-m335usroid] {
    white-space: pre-wrap;
}

/* ── 住所録照合バッジ ── */
.oli-match-badge[b-m335usroid] {
    display: inline-block;
    font-size: 0.78rem;
    padding: 4px 8px;
    border-radius: 10px;
    font-weight: 600;
    line-height: 1.6;
}

.oli-match-badge--found[b-m335usroid] {
    background: color-mix(in srgb, var(--rz-success) 15%, transparent);
    color: color-mix(in srgb, var(--rz-success) 80%, var(--hl-color-000));
    border: 1px solid color-mix(in srgb, var(--rz-success) 40%, transparent);
    white-space: nowrap;
}

.oli-match-badge--near[b-m335usroid] {
    background: color-mix(in srgb, var(--rz-warning) 15%, transparent);
    color: color-mix(in srgb, var(--rz-warning) 80%, var(--hl-color-000));
    border: 1px solid color-mix(in srgb, var(--rz-warning) 40%, transparent);
}

.oli-match-badge--none[b-m335usroid] {
    color: var(--rz-text-secondary-color);
    font-weight: 400;
}

/* ── 荷物情報 ── */
.oli-cargo-row[b-m335usroid] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    padding: 8px 12px;
    align-items: baseline;
}

.oli-cargo-row .oli-info-label[b-m335usroid] {
    margin-right: -10px;
}

.oli-cargo-note[b-m335usroid] {
    display: flex;
    gap: 8px;
    padding: 4px 12px 8px;
    align-items: baseline;
}

/* ── フォーム ── */
.oli-form-grid[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 10px 12px;
}

.oli-form-row[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.oli-form-row--half[b-m335usroid] {
    flex-direction: row;
    gap: 16px;
}

.oli-form-row--half > div[b-m335usroid] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.oli-label[b-m335usroid] {
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
    font-weight: 500;
}

/* ── スレッド ── */
.oli-thread[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px 12px;
}

.oli-thread-item[b-m335usroid] {
    max-width: 80%;
    padding: 8px 12px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.oli-thread-item--client[b-m335usroid] {
    align-self: flex-start;
    background: color-mix(in srgb, var(--rz-primary) 10%, var(--rz-base-background-color));
    border: 1px solid color-mix(in srgb, var(--rz-primary) 25%, transparent);
}

.oli-thread-item--operator[b-m335usroid] {
    align-self: flex-end;
    background: var(--rz-base-200);
    border: 1px solid var(--rz-border-color);
}

.oli-thread-meta[b-m335usroid] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.oli-thread-poster[b-m335usroid] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--rz-text-secondary-color);
}

.oli-thread-time[b-m335usroid] {
    font-size: 0.75rem;
    color: var(--rz-text-secondary-color);
}

.oli-thread-status-badge[b-m335usroid] {
    font-size: 0.72rem;
    background: var(--rz-primary);
    color: var(--hl-color-fff);
    padding: 1px 6px;
    border-radius: 8px;
}

.oli-thread-message[b-m335usroid] {
    font-size: 0.9rem;
    white-space: pre-wrap;
}

/* ── アクション ── */
.oli-error[b-m335usroid] {
    padding: 8px 12px;
    margin-top: 12px;
    background: color-mix(in srgb, var(--rz-danger) 10%, transparent);
    border: 1px solid var(--rz-danger);
    border-radius: 4px;
    color: var(--rz-danger);
    font-size: 0.88rem;
}

/* ── 新規場所登録フォーム ── */
.oli-section--register-new[b-m335usroid] {
    border-color: var(--rz-success);
    background: color-mix(in srgb, var(--rz-success) 5%, transparent);
}

.oli-section--done[b-m335usroid] {
    border-color: var(--rz-success);
    background: color-mix(in srgb, var(--rz-success) 8%, transparent);
}

.oli-reg-grid[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 14px;
}

.oli-reg-row[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.oli-reg-row--half[b-m335usroid] {
    flex-direction: row;
    gap: 16px;
}

.oli-reg-row--half > div[b-m335usroid] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.oli-id-display[b-m335usroid] {
    flex-direction: row;
    gap: 24px;
    padding: 8px 0 4px;
}

.oli-id-item[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.oli-id-label[b-m335usroid] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary-color);
    font-weight: 500;
}

.oli-id-value[b-m335usroid] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--rz-success);
    letter-spacing: 0.02em;
}

.oli-id-value--empty[b-m335usroid] {
    font-size: 0.82rem;
    font-weight: 400;
    color: var(--rz-text-secondary-color);
    font-style: italic;
}

.oli-reg-actions[b-m335usroid] {
    display: flex;
    justify-content: flex-end;
    padding-top: 4px;
}

.oli-check-group[b-m335usroid] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
    padding-top: 22px;
}

.oli-check-item[b-m335usroid] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.88rem;
    cursor: pointer;
    user-select: none;
}

.oli-required[b-m335usroid]::after {
    content: " *";
    color: var(--rz-danger);
}

/* ── 返信欄 ── */
.oli-section--reply[b-m335usroid] {
    border-color: var(--rz-primary);
    background: color-mix(in srgb, var(--rz-primary) 4%, transparent);
}

.oli-reply-area[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px 14px;
}

.oli-reply-actions[b-m335usroid] {
    display: flex;
    justify-content: flex-end;
}

/* ── バッジ登録済 ── */
.oli-kind-badge--done[b-m335usroid] {
    background: var(--rz-success);
    color: var(--hl-color-fff);
}

/* ── チェックボックス 横一列 ── */
.oli-check-row[b-m335usroid] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 20px;
    padding-top: 4px;
}

/* ── 配送不可 + 不可理由 横並び ── */
.oli-unavail-row[b-m335usroid] {
    flex-direction: row !important;
    align-items: flex-start;
    gap: 20px;
}

.oli-unavail-check[b-m335usroid] {
    flex: 0 0 auto;
    padding-top: 26px; /* label分の高さを合わせる */
}

.oli-unavail-reason[b-m335usroid] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* ── 住所録 重複チェックパネル ── */
.oli-conflict[b-m335usroid] {
    border: 1px solid var(--rz-info);
    border-radius: 6px;
    background: color-mix(in srgb, var(--rz-info) 8%, transparent);
    padding: 10px 14px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.oli-conflict-header[b-m335usroid] {
    font-size: 0.88rem;
    font-weight: 600;
    color: color-mix(in srgb, var(--rz-info) 80%, var(--hl-color-000));
}

.oli-conflict-data[b-m335usroid] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-size: 0.85rem;
    padding: 6px 10px;
    background: var(--rz-base-background-color);
    border-radius: 4px;
    border: 1px solid var(--rz-border-color);
}

.oli-conflict-name[b-m335usroid] {
    font-weight: 600;
    color: var(--rz-text-color);
}

/* /Components/Pages/HinodeOperator/LocationInquiries/OperatorLocationInquiryIndex.razor.rz.scp.css */
.oli-page[b-hcdz35xosq] {
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ── フィルタバー ── */
.oli-filter-bar[b-hcdz35xosq] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.oli-filter-btn[b-hcdz35xosq] {
    padding: 4px 12px;
    border-radius: 14px;
    border: 1px solid var(--rz-border-color);
    background: var(--rz-base-background-color);
    color: var(--rz-text-secondary-color);
    font-size: 0.82rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: all 0.15s;
}

.oli-filter-btn:hover[b-hcdz35xosq] {
    background: var(--rz-base-200);
}

.oli-filter-btn--active[b-hcdz35xosq] {
    background: var(--rz-primary);
    color: var(--hl-color-fff);
    border-color: var(--rz-primary);
    font-weight: 600;
}

.oli-filter-badge[b-hcdz35xosq] {
    background: var(--hl-color-ffffff-a35);
    border-radius: 8px;
    padding: 0 5px;
    font-size: 0.75rem;
    font-weight: 700;
}

.oli-filter-btn--active .oli-filter-badge[b-hcdz35xosq] {
    background: var(--hl-color-ffffff-a30);
}

.oli-filter-btn--submitted[b-hcdz35xosq]  { border-color: var(--rz-warning); }
.oli-filter-btn--approved[b-hcdz35xosq]   { border-color: var(--rz-success); }
.oli-filter-btn--ng[b-hcdz35xosq],
.oli-filter-btn--declined[b-hcdz35xosq]   { border-color: var(--rz-danger); }

.oli-refresh-btn[b-hcdz35xosq] {
    margin-left: auto;
    padding: 4px 14px;
    border-radius: 4px;
    border: 1px solid var(--rz-border-color);
    background: var(--rz-base-200);
    color: var(--rz-text-secondary-color);
    font-size: 0.82rem;
    cursor: pointer;
}

.oli-refresh-btn:disabled[b-hcdz35xosq] {
    opacity: 0.5;
    cursor: default;
}

/* ── テーブル ── */
.oli-table-wrap[b-hcdz35xosq] {
    overflow-x: auto;
}

.oli-table[b-hcdz35xosq] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88rem;
}

.oli-table th[b-hcdz35xosq] {
    padding: 8px 10px;
    text-align: left;
    background: var(--rz-base-200);
    border-bottom: 2px solid var(--rz-border-color);
    font-weight: 600;
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

.oli-row[b-hcdz35xosq] {
    border-bottom: 1px solid var(--rz-base-200);
    cursor: pointer;
    transition: background 0.1s;
}

.oli-row:hover[b-hcdz35xosq] {
    background: var(--rz-base-100);
}

.oli-row--unread[b-hcdz35xosq] {
    font-weight: 600;
    background: color-mix(in srgb, var(--rz-warning) 6%, var(--rz-base-background-color));
}

.oli-row td[b-hcdz35xosq] {
    padding: 9px 10px;
    vertical-align: middle;
}

.oli-td-id[b-hcdz35xosq] {
    color: var(--rz-text-secondary-color);
    font-size: 0.8rem;
    width: 50px;
}

.oli-td-name[b-hcdz35xosq] {
    max-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.oli-td-date[b-hcdz35xosq] {
    white-space: nowrap;
    font-size: 0.82rem;
    color: var(--rz-text-secondary-color);
}

/* ── チップ ── */
.oli-kind-chip[b-hcdz35xosq] {
    font-size: 0.75rem;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--rz-base-200);
    white-space: nowrap;
}

.oli-status-chip[b-hcdz35xosq] {
    font-size: 0.75rem;
    padding: 2px 8px;
    border-radius: 10px;
    white-space: nowrap;
    font-weight: 600;
}

.oli-status-chip--submitted[b-hcdz35xosq]     { background: color-mix(in srgb, var(--rz-warning) 20%, transparent); color: color-mix(in srgb, var(--rz-warning) 80%, var(--hl-color-000)); }
.oli-status-chip--investigating[b-hcdz35xosq] { background: color-mix(in srgb, var(--rz-info) 15%, transparent); color: var(--rz-info); }
.oli-status-chip--estimated[b-hcdz35xosq]     { background: color-mix(in srgb, var(--rz-primary) 15%, transparent); color: var(--rz-primary); }
.oli-status-chip--approved[b-hcdz35xosq]      { background: color-mix(in srgb, var(--rz-success) 20%, transparent); color: color-mix(in srgb, var(--rz-success) 70%, var(--hl-color-000)); }
.oli-status-chip--ng[b-hcdz35xosq],
.oli-status-chip--declined[b-hcdz35xosq]      { background: color-mix(in srgb, var(--rz-danger) 15%, transparent); color: var(--rz-danger); }
.oli-status-chip--registered[b-hcdz35xosq]    { background: var(--rz-base-300); color: var(--rz-text-secondary-color); }

/* ── ローディング・空 ── */
.oli-loading[b-hcdz35xosq], .oli-empty[b-hcdz35xosq] {
    color: var(--rz-text-secondary-color);
    font-size: 0.9rem;
    padding: 24px 0;
    text-align: center;
}
/* /Components/Pages/HinodeOperator/OrderRequests/LocationHistorySection.razor.rz.scp.css */
.loc-hist-tiers[b-r69vzisi89] { display: flex; gap: 6px; margin-bottom: 12px; flex-wrap: wrap; }
.loc-hist-tier-btn[b-r69vzisi89] {
    padding: 5px 12px; font-size: .75rem; font-weight: 700; border-radius: 999px;
    border: 1px solid var(--hl-color-e2e8f0); cursor: pointer; background: var(--hl-color-fff); color: var(--hl-color-64748b);
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.loc-hist-tier-btn:hover[b-r69vzisi89] { background: var(--hl-color-f1f5f9); }
.loc-hist-tier-btn--active[b-r69vzisi89] { background: var(--hl-color-2563eb); color: var(--hl-color-fff); border-color: var(--hl-color-2563eb); }

.loc-hist-placeholder[b-r69vzisi89] { color: var(--hl-color-94a3b8); font-size: .82rem; }
.loc-hist-error[b-r69vzisi89] { color: var(--hl-color-dc2626); font-size: .82rem; }

.loc-hist-table[b-r69vzisi89] { width: 100%; border-collapse: collapse; font-size: .8rem; }
.loc-hist-table th[b-r69vzisi89] { padding: 8px 6px; font-weight: 700; color: var(--hl-color-64748b); border-bottom: 2px solid var(--hl-color-f1f5f9); text-align: left; white-space: nowrap; }
.loc-hist-table td[b-r69vzisi89] { padding: 6px 6px; border-bottom: 1px solid var(--hl-color-f1f5f9); white-space: nowrap; }
.loc-hist-date[b-r69vzisi89] { width: 64px; padding-left: 4px; padding-right: 4px; }
.loc-hist-client[b-r69vzisi89] { width: 60px; padding-left: 4px; padding-right: 4px; }
.loc-hist-temp[b-r69vzisi89] { width: 24px; text-align: center; padding-left: 4px; padding-right: 4px; }
.loc-hist-num[b-r69vzisi89] { width: 48px; text-align: right; padding-left: 4px; padding-right: 4px; }

/* 依頼元Client以外の行は薄いグレーで区別する */
.loc-hist-row--other td[b-r69vzisi89] { background: var(--hl-color-f1f5f9); color: var(--hl-color-94a3b8); }

/* 他Clientでも依頼と同日の実績は赤ピンク系で優先強調する */
.loc-hist-row--other-samedate td[b-r69vzisi89] { background: var(--hl-color-fee2e2); color: var(--hl-color-dc2626); }
/* /Components/Pages/HinodeOperator/OrderRequests/NearbyOrderCheckSection.razor.rz.scp.css */
.noc-placeholder[b-6xjsesvu97] { color: var(--hl-color-94a3b8); font-size: .85rem; padding: 8px 0; }
.noc-error[b-6xjsesvu97] { color: var(--hl-status-danger-fg); font-size: .85rem; }

.noc-tiers[b-6xjsesvu97] { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 8px; }
.noc-tier-group[b-6xjsesvu97] { display: flex; gap: 4px; }
.noc-tier-btn[b-6xjsesvu97] {
    border: 1px solid var(--hl-color-e2e8f0);
    background: transparent;
    border-radius: 999px;
    padding: 2px 10px;
    font-size: .8rem;
    cursor: pointer;
}
.noc-tier-btn--active[b-6xjsesvu97] { background: var(--hl-status-info-bg); color: var(--hl-status-info-fg); border-color: transparent; }

.noc-group[b-6xjsesvu97] { border-top: 1px solid var(--hl-color-e2e8f0); padding-top: 6px; margin-top: 8px; }
.noc-group:first-child[b-6xjsesvu97] { margin-top: 0; }
.noc-group-header[b-6xjsesvu97] { display: flex; gap: 8px; align-items: baseline; justify-content: space-between; font-size: .85rem; }
.noc-group-location[b-6xjsesvu97] { font-weight: 600; }
.noc-group-total[b-6xjsesvu97] { color: var(--hl-color-64748b); white-space: nowrap; }

.noc-item-table[b-6xjsesvu97] { width: 100%; font-size: .8rem; border-collapse: collapse; }
.noc-item-table th[b-6xjsesvu97] { text-align: left; font-weight: 600; color: var(--hl-color-64748b); padding: 2px 6px; }
.noc-item-table td[b-6xjsesvu97] { padding: 2px 6px; }
.noc-item-client[b-6xjsesvu97] { white-space: nowrap; }
.noc-item-date[b-6xjsesvu97] { white-space: nowrap; color: var(--hl-color-64748b); }
.noc-item-qty[b-6xjsesvu97], .noc-item-weight[b-6xjsesvu97] { white-space: nowrap; }
.noc-item-dispatch[b-6xjsesvu97] { color: var(--hl-color-64748b); }

.noc-nodes[b-6xjsesvu97] { display: flex; flex-direction: column; gap: 4px; }
.noc-node-row[b-6xjsesvu97] { display: flex; align-items: center; gap: 8px; font-size: .8rem; padding: 2px 0; }
.noc-node-row--clickable[b-6xjsesvu97] { cursor: pointer; }
.noc-node-row--clickable:hover[b-6xjsesvu97] { background: var(--hl-status-info-bg); }
.noc-node-name[b-6xjsesvu97] { flex: 1; }
.noc-node-total[b-6xjsesvu97] { white-space: nowrap; color: var(--hl-color-64748b); }
.os-gantt-empty[b-6xjsesvu97] { opacity: 0.4; }
/* /Components/Pages/HinodeOperator/OrderRequests/OrderDecisionPanel.razor.rz.scp.css */
.odp[b-y11d6ysxqs] { font-size: 13px; line-height: 1.5; }
.odp-placeholder[b-y11d6ysxqs] { padding: 12px; color: #64748b; font-size: 12px; }
.odp-error[b-y11d6ysxqs] { padding: 12px; color: #b91c1c; font-size: 12px; }

.odp-nodes[b-y11d6ysxqs] { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.odp-node[b-y11d6ysxqs] { padding: 2px 10px; border: 1px solid #cbd5e1; border-radius: 999px; background: #f8fafc; font-size: 12px; cursor: pointer; }
.odp-node--active[b-y11d6ysxqs] { border-color: #2563eb; background: #dbeafe; font-weight: 700; }

.odp-strip[b-y11d6ysxqs] { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; margin-bottom: 8px; }
.odp-day[b-y11d6ysxqs] { display: flex; flex-direction: column; align-items: center; padding: 5px 2px; border: 1px solid #e5e7eb; border-radius: 6px; background: #fff; font-size: 11px; cursor: pointer; }
.odp-day b[b-y11d6ysxqs] { font-size: 12px; }
.odp-day-date[b-y11d6ysxqs] { color: #475569; }
.odp-day--ok[b-y11d6ysxqs] { background: #dcfce7; }
.odp-day--mid[b-y11d6ysxqs] { background: #fef9c3; }
.odp-day--ng[b-y11d6ysxqs] { background: #fee2e2; }
.odp-day--selected[b-y11d6ysxqs] { outline: 3px solid #2563eb; }

.odp-summary[b-y11d6ysxqs] { border: 1px solid #e5e7eb; border-radius: 8px; padding: 10px 12px; background: #fff; margin-bottom: 8px; }
.odp-summary-title[b-y11d6ysxqs] { font-weight: 700; margin-bottom: 6px; }
.odp-bar[b-y11d6ysxqs] { display: flex; height: 14px; border-radius: 7px; background: #e5e7eb; overflow: hidden; }
.odp-bar i[b-y11d6ysxqs] { display: block; height: 100%; }
.odp-bar-booked[b-y11d6ysxqs] { background: #2563eb; }
.odp-bar-request[b-y11d6ysxqs] { background: #f97316; }
.odp-bar-expected[b-y11d6ysxqs] { background: repeating-linear-gradient(45deg, #93c5fd, #93c5fd 4px, #dbeafe 4px, #dbeafe 8px); }
.odp-legend[b-y11d6ysxqs] { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 5px; font-size: 11px; color: #475569; }
.odp-legend b[b-y11d6ysxqs] { display: inline-block; width: 10px; height: 10px; margin-right: 3px; border-radius: 2px; vertical-align: -1px; }
.odp-note[b-y11d6ysxqs] { margin-top: 4px; font-size: 11px; color: #64748b; }

.odp-tabs[b-y11d6ysxqs] { display: flex; border-bottom: 2px solid #e5e7eb; margin-bottom: 8px; }
.odp-tab[b-y11d6ysxqs] { padding: 6px 14px; border: 0; border-bottom: 3px solid transparent; margin-bottom: -2px; background: transparent; font-size: 12px; font-weight: 700; color: #64748b; cursor: pointer; }
.odp-tab--active[b-y11d6ysxqs] { color: #2563eb; border-bottom-color: #2563eb; }

.odp-table[b-y11d6ysxqs] { width: 100%; border-collapse: collapse; font-size: 12px; }
.odp-table th[b-y11d6ysxqs] { text-align: left; color: #64748b; font-weight: 400; font-size: 11px; padding: 3px 6px; }
.odp-table td[b-y11d6ysxqs] { padding: 3px 6px; border-bottom: 1px dashed #eef2f7; }
/* /Components/Pages/HinodeOperator/OrderRequests/OrderRequestDialog.razor.rz.scp.css */
.or-dialog[b-j8s4evajw9] { display: flex; flex-direction: column; gap: 20px; padding: 4px 0; font-family: inherit; height: 100%; min-height: 0; box-sizing: border-box; }
.or-dialog--loading[b-j8s4evajw9] { align-items: center; justify-content: center; min-height: 200px; }
.or-spinner[b-j8s4evajw9] { color: var(--hl-color-94a3b8); font-size: .9rem; }

/* ── 3カラムレイアウト（左: 依頼内容[コンパクト] / 中央: 拠点別実績 / 右: 現在の受注状況） ── */
.or-layout[b-j8s4evajw9] { display: flex; gap: 20px; flex: 1 1 auto; min-height: 0; align-items: stretch; }
.or-layout-left[b-j8s4evajw9] {
    flex: 1 0 20%; min-width: 240px; max-width: 360px; display: flex; flex-direction: column; gap: 20px;
    overflow-y: auto; min-height: 0; padding-right: 4px;
}
.or-layout-center[b-j8s4evajw9] {
    flex: 2 1 67.5%; min-width: 280px; max-width: 1290px; display: flex; flex-direction: column; gap: 20px;
    overflow: hidden; min-height: 0;
}
/* 中央ペイン: 上部はスクロール、フッター（コメント+アクション）は常に下部固定表示 */
.or-center-scroll[b-j8s4evajw9] {
    flex: 1 1 auto; display: flex; flex-direction: column; gap: 20px;
    overflow-y: auto; min-height: 0;
}
.or-center-footer[b-j8s4evajw9] { flex: 0 0 auto; }
.or-layout-right[b-j8s4evajw9] {
    flex: 1 1 50%; min-width: 380px;
    display: flex; flex-direction: column; gap: 20px;
    overflow-y: auto; min-height: 0;
}
@media (max-width: 1100px) {
    .or-layout[b-j8s4evajw9] { flex-direction: column; }
    .or-layout-left[b-j8s4evajw9], .or-layout-center[b-j8s4evajw9], .or-layout-right[b-j8s4evajw9] { overflow-y: visible; }
    .or-layout-right[b-j8s4evajw9] { max-width: 100%; }
}

/* 依頼内容カード内: 基本情報と明細の区切り */
.or-subsection-divider[b-j8s4evajw9] { height: 1px; background: var(--hl-color-f1f5f9); margin: 4px 0; }

/* ── 右ペイン: 輸送フロー（出庫/集荷中継/集荷/発送/発送中継/入庫）セレクタ ── */
.or-approval-selector[b-j8s4evajw9] { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.or-approval-tabs[b-j8s4evajw9] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
/* 各段の色は、C#側からCSS変数(--lappr-bg/--lappr-fg/--lappr-accent)で受け取る（担当・中継会社の色）。常に色付きで、選択中は枠で強調する */
.or-approval-tab[b-j8s4evajw9] {
    padding: 7px 16px; font-size: .8rem; font-weight: 700; border-radius: 999px;
    border: 1px solid var(--lappr-accent, transparent); cursor: pointer;
    background: var(--lappr-bg, var(--hl-color-f1f5f9)); color: var(--lappr-fg, var(--hl-color-64748b));
    transition: filter .15s ease, box-shadow .15s ease;
}
.or-approval-tab:hover[b-j8s4evajw9] { filter: brightness(.95); }
.or-approval-tab--active[b-j8s4evajw9] { box-shadow: 0 0 0 3px var(--lappr-accent, var(--hl-color-94a3b8)); }
/* 倉庫（出庫・入庫）は破線 */
.or-approval-tab--warehouseout[b-j8s4evajw9], .or-approval-tab--warehousein[b-j8s4evajw9] { border-style: dashed; }
.or-flow-arrow[b-j8s4evajw9] { color: var(--hl-color-bbb); font-size: 14px; font-weight: 700; }

/* 輸送フローの各段: 一覧カードのフッター（OrderRequestListPage.razor.css）と同じ見た目。選択中は枠で強調する */
.or-flow-btn[b-j8s4evajw9] {
    padding: 3px 8px; border: 1px solid var(--lappr-accent, var(--hl-color-ccc)); border-radius: 4px;
    font-size: 11px; font-weight: 600; white-space: nowrap; min-width: 44px; text-align: center; cursor: pointer;
    background: var(--lappr-bg); color: var(--hl-color-222);
}
.or-flow-btn--done[b-j8s4evajw9] { background: var(--lappr-accent); color: var(--lappr-fg-on-accent); }
.or-flow-btn--wh[b-j8s4evajw9] { border-style: dashed; }
.or-flow-relay[b-j8s4evajw9] {
    font-size: 12px; font-weight: 600; color: var(--lappr-fg, var(--hl-color-222));
    background: var(--lappr-bg, transparent); border: 1px solid var(--lappr-accent, transparent);
    padding: 1px 6px; border-radius: 3px; white-space: nowrap; cursor: pointer;
}
.or-flow-btn:hover[b-j8s4evajw9], .or-flow-relay:hover[b-j8s4evajw9] { filter: brightness(.92); }
.or-flow--active[b-j8s4evajw9] { box-shadow: 0 0 0 3px var(--lappr-accent, var(--hl-color-94a3b8)); }

/* 明細テーブルは狭い左カラムでも横スクロールで維持 */
.or-table-scroll[b-j8s4evajw9] { overflow-x: auto; }

/* ── 種別タブ（Material: アンダーラインインジケーター） ── */
.or-tabs[b-j8s4evajw9] { display: flex; gap: 4px; border-bottom: 1px solid var(--hl-color-e2e8f0); padding-bottom: 0; }
.or-tab[b-j8s4evajw9] {
    padding: 10px 22px; font-size: .85rem; font-weight: 600;
    border: none; border-bottom: 3px solid transparent; background: none;
    color: var(--hl-color-64748b); cursor: pointer; border-radius: 8px 8px 0 0;
    transition: color .15s ease, border-color .15s ease, background-color .15s ease;
    margin-bottom: -1px;
}
.or-tab:hover:not(:disabled)[b-j8s4evajw9] { color: var(--hl-color-2563eb); background: var(--hl-color-eff6ff); }
.or-tab--active[b-j8s4evajw9] { color: var(--hl-color-2563eb); border-bottom-color: var(--hl-color-2563eb); background: var(--hl-color-eff6ff); }
.or-tab:disabled[b-j8s4evajw9] { opacity: .4; cursor: not-allowed; }

/* ── ステータスバー（Material: ステッパー） ── */
.or-status-bar[b-j8s4evajw9] {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    padding: 14px 18px; background: var(--hl-color-fff); border-radius: 16px;
    box-shadow: 0 1px 2px var(--hl-color-0f172a-a06), 0 1px 6px var(--hl-color-0f172a-a04);
}
.or-header-left[b-j8s4evajw9] { display: flex; align-items: center; gap: 12px; min-width: 0; }
.or-header-right[b-j8s4evajw9] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.or-header-client-name[b-j8s4evajw9] {
    font-size: .92rem; font-weight: 700; color: var(--hl-color-1e293b);
    white-space: nowrap;
}
.or-status-current[b-j8s4evajw9] {
    font-size: .8rem; font-weight: 700; color: var(--hl-color-fff);
    padding: 7px 18px; border-radius: 999px; letter-spacing: .02em; white-space: nowrap;
}
.or-status-current--new[b-j8s4evajw9]     { background: var(--hl-color-2563eb); box-shadow: 0 2px 6px var(--hl-color-2563eb-a35); }
.or-status-current--change[b-j8s4evajw9]  { background: var(--hl-color-ea580c); box-shadow: 0 2px 6px var(--hl-color-ea580c-a35); }
.or-status-current--danger[b-j8s4evajw9]  { background: var(--hl-color-dc2626); box-shadow: 0 2px 6px var(--hl-color-dc2626-a35); }
.or-status-current--success[b-j8s4evajw9] { background: var(--hl-color-16a34a); box-shadow: 0 2px 6px var(--hl-color-16a34a-a35); }
.or-status-current--delete[b-j8s4evajw9]  { background: var(--hl-color-64748b); box-shadow: 0 2px 6px var(--hl-color-0f172a-a18); }
.or-status-current--draft[b-j8s4evajw9]   { background: var(--hl-color-94a3b8); }
.or-status-meta[b-j8s4evajw9] { display: grid; grid-template-columns: auto auto auto; column-gap: 8px; row-gap: 2px; justify-content: end; }
.or-status-meta-row[b-j8s4evajw9] { display: contents; }
.or-status-meta-label[b-j8s4evajw9], .or-status-meta-name[b-j8s4evajw9], .or-status-meta-time[b-j8s4evajw9] {
    font-size: .68rem; color: var(--hl-color-94a3b8); white-space: nowrap; line-height: 1.3;
}
.or-status-meta-time[b-j8s4evajw9] { text-align: right; }

/* ── セクション（Material: カード + エレベーション） ── */
.or-section[b-j8s4evajw9] {
    background: var(--hl-color-fff); border: none; border-radius: 16px; padding: 20px 22px;
    box-shadow: 0 1px 2px var(--hl-color-0f172a-a06), 0 1px 6px var(--hl-color-0f172a-a04);
}
.or-section-header[b-j8s4evajw9] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.or-section-title[b-j8s4evajw9] { font-size: .8rem; font-weight: 700; color: var(--hl-color-334155); letter-spacing: .04em; }
.or-section-title[b-j8s4evajw9]::before { content: ""; display: inline-block; width: 4px; height: 14px; background: var(--hl-color-2563eb); border-radius: 2px; margin-right: 8px; vertical-align: -1px; }
.or-section-tools[b-j8s4evajw9] { display: flex; gap: 8px; }
.or-tool-btn[b-j8s4evajw9] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 6px 14px; font-size: .76rem; font-weight: 600;
    color: var(--hl-color-2563eb); background: var(--hl-color-eff6ff); border: none;
    border-radius: 999px; cursor: pointer; transition: background-color .15s ease;
}
.or-tool-btn:hover[b-j8s4evajw9] { background: var(--hl-color-dbeafe); }
.or-tool-btn-icon[b-j8s4evajw9] { font-size: .85rem; }

/* ── フォームグリッド ── */
.or-form-grid[b-j8s4evajw9] { display: grid; grid-template-columns: 120px 1fr; gap: 14px 16px; align-items: center; }
.or-label[b-j8s4evajw9] { font-size: .82rem; font-weight: 600; color: var(--hl-color-475569); text-align: right; }
.or-placeholder-text[b-j8s4evajw9] { color: var(--hl-color-94a3b8); font-size: .82rem; }
.or-value[b-j8s4evajw9] { font-size: .83rem; color: var(--hl-color-1e293b); }
.or-value-name[b-j8s4evajw9] { font-weight: 600; }
.or-value-sub[b-j8s4evajw9] { display: flex; gap: 12px; margin-top: 2px; font-size: .78rem; color: var(--hl-color-64748b); }
.or-value-note[b-j8s4evajw9] { white-space: pre-wrap; color: var(--hl-color-475569); }

/* ── 明細テーブル ── */
.or-lines-table[b-j8s4evajw9] { width: 100%; border-collapse: collapse; font-size: .82rem; }
.or-lines-table th[b-j8s4evajw9] { padding: 10px 8px; font-weight: 700; color: var(--hl-color-64748b); border-bottom: 2px solid var(--hl-color-f1f5f9); text-align: left; white-space: nowrap; }
.or-lines-table td[b-j8s4evajw9] { padding: 8px 4px; border-bottom: 1px solid var(--hl-color-f1f5f9); vertical-align: middle; white-space: nowrap; }
.or-lines-table tbody tr[b-j8s4evajw9] { transition: background-color .12s ease; }
.or-lines-table tbody tr:hover[b-j8s4evajw9] { background: var(--hl-color-f8fafc); }
.or-th-num[b-j8s4evajw9] { width: 56px; }
.or-num[b-j8s4evajw9] { text-align: right; min-width: 56px; }

/* ── スレッド ── */
.or-thread[b-j8s4evajw9] { display: flex; flex-direction: column; gap: 10px; }
.or-thread-item[b-j8s4evajw9] { padding: 12px 16px; border-radius: 14px; }
.or-thread-item--client[b-j8s4evajw9]   { background: var(--hl-color-eff6ff); border-left: none; }
.or-thread-item--operator[b-j8s4evajw9] { background: var(--hl-color-faf5ff); border-left: none; }
.or-thread-meta[b-j8s4evajw9] { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; }
.or-thread-who[b-j8s4evajw9]  { font-size: .75rem; font-weight: 700; color: var(--hl-color-475569); }
.or-thread-time[b-j8s4evajw9] { font-size: .7rem; color: var(--hl-color-94a3b8); margin-left: auto; }
.or-thread-msg[b-j8s4evajw9]  { font-size: .82rem; color: var(--hl-color-334155); white-space: pre-wrap; line-height: 1.6; }
.or-status-badge[b-j8s4evajw9] { font-size: .68rem; font-weight: 700; padding: 2px 9px; border-radius: 999px; }
.or-status-badge--submitted[b-j8s4evajw9] { background: var(--hl-color-dbeafe); color: var(--hl-color-1d4ed8); }
.or-status-badge--ng[b-j8s4evajw9]        { background: var(--hl-color-fee2e2); color: var(--hl-color-dc2626); }
.or-status-badge--ok[b-j8s4evajw9]        { background: var(--hl-color-dcfce7); color: var(--hl-color-16a34a); }
.or-status-badge--delete[b-j8s4evajw9]    { background: var(--hl-color-ffedd5); color: var(--hl-color-c2410c); }
.or-status-badge--draft[b-j8s4evajw9]     { background: var(--hl-color-f1f5f9); color: var(--hl-color-64748b); }

/* ── コメント・ボタン（中央ペイン下部フッター） ── */
.or-center-footer[b-j8s4evajw9] { display: flex; flex-direction: column; gap: 10px; }
.or-footer-row[b-j8s4evajw9] { display: flex; align-items: center; gap: 14px; }
.or-comment-label[b-j8s4evajw9] { white-space: nowrap; line-height: 1.3; padding-top: 0; }
.or-footer-textarea-wrap[b-j8s4evajw9] { flex: 1 1 0%; min-width: 0; display: flex; }
.or-btn-row[b-j8s4evajw9] { display: flex; gap: 10px; justify-content: flex-end; flex-wrap: wrap; }
.or-footer-btns[b-j8s4evajw9] { flex: 0 0 auto; flex-wrap: nowrap; margin-left: auto; }
.or-error[b-j8s4evajw9] {
    background: var(--hl-color-fef2f2); color: var(--hl-color-b91c1c); border: none; border-radius: 12px;
    padding: 10px 16px; font-size: .82rem; box-shadow: 0 1px 2px var(--hl-color-dc2626-a08);
}

/* ── ボタン（Material: contained / outlined / text） ── */
.or-btn[b-j8s4evajw9] {
    padding: 9px 20px; font-size: .83rem; font-weight: 700; border-radius: 999px;
    border: none; cursor: pointer; transition: background-color .15s ease, box-shadow .15s ease, transform .08s ease;
}
.or-btn:active:not(:disabled)[b-j8s4evajw9] { transform: scale(.97); }
.or-btn:disabled[b-j8s4evajw9] { opacity: .5; cursor: not-allowed; }
.or-btn--primary[b-j8s4evajw9]   { background: var(--hl-color-2563eb); color: var(--hl-color-fff); box-shadow: 0 2px 6px var(--hl-color-2563eb-a30); }
.or-btn--primary:hover:not(:disabled)[b-j8s4evajw9]   { background: var(--hl-color-1d4ed8); box-shadow: 0 3px 8px var(--hl-color-2563eb-a40); }
.or-btn--secondary[b-j8s4evajw9] { background: var(--hl-color-f1f5f9); color: var(--hl-color-475569); border: 1px solid var(--hl-color-e2e8f0); }
.or-btn--secondary:hover:not(:disabled)[b-j8s4evajw9] { background: var(--hl-color-e2e8f0); }
.or-btn--danger[b-j8s4evajw9]    { background: var(--hl-color-dc2626); color: var(--hl-color-fff); box-shadow: 0 2px 6px var(--hl-color-dc2626-a30); }
.or-btn--danger:hover:not(:disabled)[b-j8s4evajw9]    { background: var(--hl-color-b91c1c); box-shadow: 0 3px 8px var(--hl-color-dc2626-a40); }
.or-btn--success[b-j8s4evajw9]   { background: var(--hl-color-16a34a); color: var(--hl-color-fff); box-shadow: 0 2px 6px var(--hl-color-16a34a-a30); }
.or-btn--success:hover:not(:disabled)[b-j8s4evajw9]   { background: var(--hl-color-15803d); box-shadow: 0 3px 8px var(--hl-color-16a34a-a40); }
.or-btn--ghost[b-j8s4evajw9]     { background: none; color: var(--hl-color-64748b); border: 1px solid var(--hl-color-e2e8f0); }
.or-btn--ghost:hover:not(:disabled)[b-j8s4evajw9]     { background: var(--hl-color-f8fafc); }

.or-seq-badge[b-j8s4evajw9] {
    font-size: .78rem;
    font-weight: 700;
    color: var(--hl-color-475569);
    background: var(--hl-color-f1f5f9);
    padding: 4px 12px;
    border-radius: 999px;
    white-space: nowrap;
}

/* 列間の余白を詰める */
.or-lines-table td[b-j8s4evajw9] { padding: 6px 4px; }

/* 列幅調整 */
.or-th-product[b-j8s4evajw9]  { min-width: 170px; }
.or-th-temp[b-j8s4evajw9]     { width: 1%; white-space: nowrap; }
.or-th-note[b-j8s4evajw9]     { min-width: 140px; }

/* 論理削除行 */
.or-line--deleted td[b-j8s4evajw9] { background: var(--hl-color-f8fafc); color: var(--hl-color-adb5bd); text-decoration: line-through; }

/* 集荷先・配送先列幅 */
.or-th-location[b-j8s4evajw9] { width: 180px; }

/* 明細行内 承認ボタン列（最大4ボタン: 出庫/集荷/配送/入庫） */
.or-th-lappr[b-j8s4evajw9]  { text-align: center; white-space: nowrap; padding: 8px 4px; min-width: 160px; }
.or-td-lappr[b-j8s4evajw9]  { text-align: center; vertical-align: middle; padding: 6px 4px; }

.or-lappr-btns[b-j8s4evajw9] {
    display: flex;
    gap: 4px;
    justify-content: center;
    flex-wrap: nowrap;
}

.or-lappr-btn[b-j8s4evajw9] {
    padding: 4px 6px;
    border: none;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: opacity .12s ease, box-shadow .12s ease;
    min-width: 34px;
    text-align: center;
}

.or-lappr-btn:disabled[b-j8s4evajw9] { cursor: not-allowed; opacity: .5; }

/* 担当区分カラー（BusinessCategory.BackgroundColor/TextColor/AccentColor をCSS変数で受け取る） */
.or-lappr-btn--cat[b-j8s4evajw9] {
    background:   var(--lappr-bg);
    color:        var(--lappr-fg);
    border: 1px solid var(--lappr-accent);
}
.or-lappr-btn--cat:hover:not(:disabled)[b-j8s4evajw9] {
    box-shadow: 0 1px 4px var(--hl-color-0f172a-a18);
}
.or-lappr-btn--cat.or-lappr-btn--done[b-j8s4evajw9] {
    background:   var(--lappr-accent);
    color:        var(--hl-color-fff);
    border-color: var(--lappr-accent);
}
.or-lappr-btn--cat.or-lappr-btn--done:hover:not(:disabled)[b-j8s4evajw9] {
    box-shadow: 0 1px 4px var(--hl-color-0f172a-a25);
}
/* 出庫・入庫は対応する集荷先・配送先の色に加えて点線枠で区別 */
.or-lappr-btn--wh[b-j8s4evajw9] {
    border-style: dashed;
}

/* 出庫から（在庫からの出庫）の明細の入庫履歴ID。読み取り専用の小さな文字。 */
.or-stock-id[b-j8s4evajw9] { margin-top: 2px; font-size: .75rem; color: var(--hl-color-64748b); }

/* 部門（子荷主）。お客様が明細ごとに選んだ子荷主を、読み取り専用で出す。 */
.or-sub-client[b-j8s4evajw9] { margin-top: 2px; font-size: .75rem; color: var(--hl-color-334155); font-weight: 700; }
/* /Components/Pages/HinodeOperator/OrderRequests/OrderRequestListPage.razor.rz.scp.css */
/* RadzenLayout は .rz-body（親のRadzenBody）をCSS Gridの残り領域いっぱいに確保し、
   overflow:auto でスクロール可能にしている。article.content（MainLayout.razor.css側でheight:100%を追加済み）
   経由でその確定した高さを受け継ぎ、ページ自体はスクロールさせず、下の .oh-scroll-area だけをスクロールさせる。
   （position: sticky はこのページの描画コンテキストではカード側に潜り込んでしまったため、
   ヘッダーとスクロール領域を明確にネストする構成に変更。100vh からの固定値の引き算は
   RadzenHeaderの実際の高さとズレて全体スクロールバーが出てしまったため使わない） */
.oh-page[b-4kohls3nd9] {
    height: 100%;
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow: hidden;
    box-sizing: border-box;
}

/* ── タブ＋ステータスフィルタ: 常に表示（スクロールしない） ── */
.oh-header-bar[b-4kohls3nd9] {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* ── カード一覧のみスクロールする領域 ── */
.oh-scroll-area[b-4kohls3nd9] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

/* ── 担当区分タブ行（タブ＋担当バッジ） ── */
.oh-tab-row[b-4kohls3nd9] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.oh-contact-tabs[b-4kohls3nd9] {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}

.oh-tab[b-4kohls3nd9] {
    padding: 6px 14px;
    border: 1px solid var(--hl-color-ccc);
    border-radius: 4px 4px 0 0;
    background: var(--hl-status-neutral-bg);
    cursor: pointer;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 6px;
    border-bottom: none;
}

.oh-tab:hover[b-4kohls3nd9] {
    background: var(--hl-color-e8e8e8);
}

.oh-tab--active[b-4kohls3nd9] {
    background: var(--hl-color-fff);
    border-color: var(--hl-accent);
    color: var(--hl-accent);
    font-weight: 600;
    border-bottom: 2px solid var(--hl-color-fff);
    margin-bottom: -1px;
}

/* カテゴリタブ（ALL以外）はC#側からCSS変数(--lappr-bg/--lappr-fg/--lappr-accent)で
   業務担当の色を受け取り、常時その色で表示する（選択有無に関わらず）。 */
.oh-tab:not(.oh-tab--all)[b-4kohls3nd9] {
    background: var(--lappr-bg);
    color: var(--lappr-fg);
    border-color: var(--lappr-accent);
}

.oh-tab:not(.oh-tab--all):hover[b-4kohls3nd9] {
    filter: brightness(0.96);
}

.oh-tab:not(.oh-tab--all).oh-tab--active[b-4kohls3nd9] {
    background: var(--lappr-bg);
    color: var(--lappr-fg);
    border-color: var(--lappr-accent);
    border-bottom-color: var(--lappr-bg);
    font-weight: 600;
}

.oh-tab-badge[b-4kohls3nd9] {
    background: var(--hl-accent);
    color: var(--hl-color-fff);
    border-radius: 10px;
    font-size: 11px;
    padding: 1px 6px;
    min-width: 18px;
    text-align: center;
}

.oh-tab--active .oh-tab-badge[b-4kohls3nd9] {
    background: var(--hl-accent);
}

/* ── ステータスバー ── */
.oh-status-bar[b-4kohls3nd9] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    padding: 6px 8px;
    background: var(--hl-color-f9f9f9);
    border: 1px solid var(--hl-color-ddd);
    border-radius: 4px;
}

.oh-status-btn[b-4kohls3nd9] {
    padding: 4px 10px;
    border: 1px solid var(--hl-color-ccc);
    border-radius: 4px;
    background: var(--hl-color-fff);
    cursor: pointer;
    font-size: 12px;
}

.oh-status-btn--active[b-4kohls3nd9], .oh-status-btn--on[b-4kohls3nd9] {
    background: var(--hl-accent);
    color: var(--hl-color-fff);
    border-color: var(--hl-accent-dark);
}

.oh-status-btn--submitted.oh-status-btn--on[b-4kohls3nd9] { background: var(--hl-status-submitted-bg); border-color: var(--hl-status-submitted-border); }
.oh-status-btn--ng.oh-status-btn--on[b-4kohls3nd9]        { background: var(--hl-status-danger-fg); border-color: var(--hl-status-danger-border); }
.oh-status-btn--ok.oh-status-btn--on[b-4kohls3nd9]        { background: var(--hl-status-ok-solid-bg); border-color: var(--hl-status-success-fg); }
.oh-status-btn--delete.oh-status-btn--on[b-4kohls3nd9]    { background: var(--hl-status-neutral-fg); border-color: var(--hl-status-delete-border); }

.oh-refresh-btn[b-4kohls3nd9] {
    margin-left: auto;
    padding: 4px 12px;
    border: 1px solid var(--hl-color-ccc);
    border-radius: 4px;
    background: var(--hl-color-fff);
    cursor: pointer;
    font-size: 12px;
}

.oh-refresh-btn:hover[b-4kohls3nd9] { background: var(--hl-color-f0f0f0); }
.oh-refresh-btn:disabled[b-4kohls3nd9] { opacity: 0.5; cursor: default; }

.oh-loading[b-4kohls3nd9], .oh-empty[b-4kohls3nd9] {
    color: var(--hl-color-888);
    padding: 16px;
    text-align: center;
}

/* ── カードグリッド ── */
.oh-card-grid[b-4kohls3nd9] {
    column-width: 380px;
    column-gap: 12px;
}

.oh-card[b-4kohls3nd9] {
    break-inside: avoid;
    margin-bottom: 12px;
    border: 1px solid var(--hl-color-ddd);
    border-radius: 8px;
    background: var(--hl-color-fff);
    overflow: hidden;
    box-shadow: 0 1px 3px var(--hl-color-000000-a08);
    display: flex;
    flex-direction: column;
}

/* ── カードヘッダー ── */
.oh-card-header[b-4kohls3nd9] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    background: var(--hl-surface-panel);
    border-bottom: 1px solid var(--hl-color-eee);
    flex-wrap: wrap;
}

.oh-card-header-right[b-4kohls3nd9] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 8px;
}

.oh-card-seq[b-4kohls3nd9] {
    font-size: 12px;
    font-weight: 700;
    color: var(--hl-color-333);
    white-space: nowrap;
}

.oh-card-client[b-4kohls3nd9] {
    font-size: 18px;
    font-weight: 700;
    color: var(--hl-color-222);
}

.oh-card-submitted[b-4kohls3nd9] {
    font-size: 11px;
    color: var(--hl-color-999);
    white-space: nowrap;
}

.oh-open-btn[b-4kohls3nd9] {
    padding: 3px 10px;
    border: 1px solid var(--hl-accent);
    border-radius: 4px;
    background: var(--hl-color-fff);
    color: var(--hl-accent);
    cursor: pointer;
    font-size: 12px;
    white-space: nowrap;
}

.oh-open-btn:hover[b-4kohls3nd9] { background: var(--hl-status-info-bg); }

/* ── カード情報エリア ── */
.oh-card-info[b-4kohls3nd9] {
    padding: 8px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    border-bottom: 1px solid var(--hl-color-f0f0f0);
}

.oh-info-row[b-4kohls3nd9] {
    display: flex;
    align-items: baseline;
    gap: 6px;
}

.oh-info-label[b-4kohls3nd9] {
    font-size: 11px;
    color: var(--hl-color-999);
    min-width: 38px;
    flex-shrink: 0;
}

.oh-info-value[b-4kohls3nd9] {
    font-size: 13px;
    font-weight: 600;
    color: var(--lappr-fg, var(--hl-color-222));
    background: var(--lappr-bg, transparent);
    padding: 1px 6px;
    border-radius: 3px;
}

/* 配送先の右に出す中継会社（マスタの色） */
.oh-info-relay[b-4kohls3nd9] {
    font-size: 12px;
    font-weight: 600;
    color: var(--lappr-fg, var(--hl-color-222));
    background: var(--lappr-bg, transparent);
    border: 1px solid var(--lappr-accent, transparent);
    padding: 1px 6px;
    border-radius: 3px;
    white-space: nowrap;
}

.oh-info-dates[b-4kohls3nd9] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 17px;
    font-weight: 700;
    color: var(--hl-color-222);
}

.oh-date-item[b-4kohls3nd9] {
    display: flex;
    align-items: baseline;
    gap: 3px;
}

.oh-date-label[b-4kohls3nd9] {
    font-size: 11px;
    font-weight: 400;
    color: var(--hl-color-999);
}

.oh-date-arrow[b-4kohls3nd9] {
    color: var(--hl-color-bbb);
    font-size: 12px;
    font-weight: 400;
}

.oh-info-note[b-4kohls3nd9] {
    font-size: 11px;
    color: var(--hl-color-777);
    margin-top: 2px;
    white-space: pre-wrap;
}

/* ── 明細リスト ── */
/* 場所 / 商品(+温度帯) / 数量 / 重量 の4列。各行は display: contents で列を親グリッドに預け、行をまたいで列幅を揃える */
.oh-card-lines[b-4kohls3nd9] {
    padding: 6px 12px;
    border-bottom: 1px solid var(--hl-color-f0f0f0);
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr) max-content max-content;
    align-items: center;
    column-gap: 10px;
    row-gap: 4px;
}

.oh-card-line[b-4kohls3nd9] {
    display: contents;
    font-size: 12px;
}

.oh-line-loccell[b-4kohls3nd9] {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* 明細の中継会社は、ヘッダーのバッジより小さく */
.oh-line-relay[b-4kohls3nd9] {
    font-size: 11px;
    padding: 1px 5px;
}

.oh-line-prodcell[b-4kohls3nd9] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.oh-line-loc[b-4kohls3nd9] {
    font-size: 11px;
    background: var(--lappr-bg, var(--hl-color-e8f0fe));
    color: var(--lappr-fg, var(--hl-accent-dark));
    padding: 1px 5px;
    border-radius: 3px;
    white-space: nowrap;
}

.oh-line-product[b-4kohls3nd9] {
    font-weight: 600;
    color: var(--hl-color-222);
}

.oh-line-temp[b-4kohls3nd9] {
    font-size: 11px;
    background: var(--hl-status-change-bg);
    color: var(--hl-status-change-fg);
    padding: 1px 5px;
    border-radius: 3px;
    white-space: nowrap;
}

.oh-line-num[b-4kohls3nd9] {
    font-size: 11px;
    color: var(--hl-color-666);
    white-space: nowrap;
    text-align: right;
}

/* 数量・重量の数値だけ目立たせる（単位は小さいまま） */
.oh-line-val[b-4kohls3nd9] {
    font-size: 15px;
    font-weight: 700;
    color: var(--hl-color-222);
}

/* ── カードフッター（承認ボタン） ── */
.oh-card-footer[b-4kohls3nd9] {
    padding: 8px 12px;
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* 受注ステータス（OrderRequestDialog.razorと同一スタイル・同一ロジック） */
.or-status-current[b-4kohls3nd9] {
    font-size: .72rem; font-weight: 700; color: var(--hl-color-fff);
    padding: 4px 12px; border-radius: 999px; letter-spacing: .02em; white-space: nowrap;
}
.or-status-current--new[b-4kohls3nd9]     { background: var(--hl-color-2563eb); }
.or-status-current--change[b-4kohls3nd9]  { background: var(--hl-color-ea580c); }
.or-status-current--danger[b-4kohls3nd9]  { background: var(--hl-color-dc2626); }
.or-status-current--success[b-4kohls3nd9] { background: var(--hl-color-16a34a); }
.or-status-current--delete[b-4kohls3nd9]  { background: var(--hl-color-64748b); }
.or-status-current--draft[b-4kohls3nd9]   { background: var(--hl-color-94a3b8); }

.oh-lappr-btns[b-4kohls3nd9] {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    align-items: center;
}

/* 輸送フローの段と段のあいだ */
.oh-flow-arrow[b-4kohls3nd9] {
    color: var(--hl-color-bbb);
    font-size: 14px;
    font-weight: 700;
}

/* ── 承認ボタン（ダイアログと同一スタイル） ── */
.or-lappr-btn[b-4kohls3nd9] {
    padding: 3px 8px;
    border: 1px solid var(--hl-color-ccc);
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    min-width: 44px;
    text-align: center;
    cursor: pointer;
}

/* 輸送フローの各段は「開く」ボタン: ホバーで少し暗く */
.or-lappr-btn:hover[b-4kohls3nd9], .oh-flow-relay:hover[b-4kohls3nd9] { filter: brightness(.92); }

.oh-flow-relay[b-4kohls3nd9] { cursor: pointer; }

/* 未承認: 業務担当の背景色 + 通常文字色（担当名を表示） */
.or-lappr-btn--cat[b-4kohls3nd9] {
    background:   var(--lappr-bg);
    color:        var(--hl-color-222);
    border-color: var(--lappr-accent);
}

/* 承認済: 業務担当のアクセントカラー + 保存された文字色（未設定ならアクセントカラーから自動計算） */
.or-lappr-btn--cat.or-lappr-btn--done[b-4kohls3nd9] {
    background:   var(--lappr-accent);
    color:        var(--lappr-fg-on-accent);
    border-color: var(--lappr-accent);
    filter: none;
}

.or-lappr-btn--wh[b-4kohls3nd9] { border-style: dashed; }
/* /Components/Pages/HinodeOperator/OrderStatus/OrderStatusDetailDialog.razor.rz.scp.css */
.osd-dialog[b-azyv78qbav] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.osd-header[b-azyv78qbav] {
    display: flex;
    gap: 12px;
    align-items: baseline;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-ddd));
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.osd-header-node[b-azyv78qbav] {
    font-weight: 600;
    font-size: 1.05rem;
}

.osd-header-condition[b-azyv78qbav] {
    color: var(--rz-text-secondary-color, var(--hl-color-666));
}

.osd-restriction-info[b-azyv78qbav] {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin: -4px 0 12px 0;
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color, var(--hl-color-666));
}

/* 該当理由の文字色はヘッダーの状態バッジ（.hl-badge--*）と揃える。
   badges.css のピル状の背景・パディングは打ち消し、文字色のみ流用する。 */
.osd-restriction-reason[b-azyv78qbav] {
    font-weight: 600;
    background: none;
    padding: 0;
    border-radius: 0;
}

.osd-restriction-reason.hl-badge--danger[b-azyv78qbav] { color: var(--hl-status-danger-fg); }
.osd-restriction-reason.hl-badge--warning[b-azyv78qbav] { color: var(--hl-status-warning-fg); }
.osd-restriction-reason.hl-badge--neutral[b-azyv78qbav] { color: var(--rz-text-secondary-color, var(--hl-color-666)); font-weight: 400; }

.osd-restriction-form[b-azyv78qbav] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 0;
    flex-wrap: wrap;
}

.osd-body[b-azyv78qbav] {
    flex: 1 1 auto;
    overflow-y: auto;
}

.osd-section + .osd-section[b-azyv78qbav] {
    margin-top: 20px;
}

.osd-section-title[b-azyv78qbav] {
    margin: 0 0 8px 0;
}

.osd-table[b-azyv78qbav] {
    border-collapse: collapse;
    width: 100%;
    /* 列幅をcolgroup（下記 nth-child）で固定し、コンテンツ量や展開状態に関わらず常に同じ列境界になるようにする。
       固定しないと、明細行の有無で実列数が変わるたびに自動レイアウトが余白の配分先を変え、温度帯・数量・重量の
       位置がずれる（このダイアログで繰り返し発生した不具合）。 */
    table-layout: fixed;
}

/* colgroupの12列は、グループ見出し行（colspan=6＋数量＋重量の8列）と、展開時の明細行（荷主/集荷日/配送日/
   Secondary/温度帯/内容_品名/数量/重量/集荷中継/集荷車番名前/配送車番名前/配送中継の12列）の両方で共有される
   列グリッド。グループ見出し行側は1つのcolspan=6セルにまとめられるため、内部の名称/都道府県/市町村区/町番地/
   電話番号スパン（.osd-group-*、合計751px）は個々のcol幅とは対応しておらず、1〜6列目の合計幅（現在940px）
   さえ確保されていれば表示は変わらない（差分189pxは温度帯・内容_品名相当の空白として末尾に残るだけ）。
   そのため1〜6列目の個々の内訳は明細行（荷主/集荷日/配送日/Secondary/温度帯/内容_品名）の実際の表示幅に
   合わせて自由に配分してよい。7列目以降（数量・重量・集荷中継等）は明細行と同じ実列なので、colspan=6が
   1〜6列目の合計と一致してさえいれば数量・重量の位置がずれることはない。 */
.osd-table colgroup col:nth-child(1)[b-azyv78qbav] { width: 140px; }
.osd-table colgroup col:nth-child(2)[b-azyv78qbav] { width: 70px; }
.osd-table colgroup col:nth-child(3)[b-azyv78qbav] { width: 70px; }
.osd-table colgroup col:nth-child(4)[b-azyv78qbav] { width: 200px; }
.osd-table colgroup col:nth-child(5)[b-azyv78qbav] { width: 70px; }
.osd-table colgroup col:nth-child(6)[b-azyv78qbav] { width: 390px; }
.osd-table colgroup col:nth-child(7)[b-azyv78qbav] { width: 55px; }
.osd-table colgroup col:nth-child(8)[b-azyv78qbav] { width: 60px; }
.osd-table colgroup col:nth-child(9)[b-azyv78qbav] { width: 85px; }
.osd-table colgroup col:nth-child(10)[b-azyv78qbav] { width: 120px; }
.osd-table colgroup col:nth-child(11)[b-azyv78qbav] { width: 120px; }
.osd-table colgroup col:nth-child(12)[b-azyv78qbav] { width: 85px; }

.osd-table th[b-azyv78qbav],
.osd-table td[b-azyv78qbav] {
    border: 1px solid var(--rz-border-color, var(--hl-color-ddd));
    padding: 4px 8px;
    font-size: 0.85rem;
    text-align: left;
    word-break: break-word;
}

.osd-table .osd-col-qty[b-azyv78qbav],
.osd-table .osd-col-weight[b-azyv78qbav] {
    text-align: right;
}

/* 見出しラベル・合計行はスクロールしても常に表示させる */
.osd-table thead th[b-azyv78qbav] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--rz-base-background-color, var(--hl-color-fff));
}

.osd-table tfoot td[b-azyv78qbav] {
    position: sticky;
    bottom: 0;
    z-index: 2;
    background: var(--rz-base-background-color, var(--hl-color-fff));
}

.osd-group-header td[b-azyv78qbav] {
    background: var(--rz-base-hover-background-color, var(--hl-color-f0f0f0));
    font-weight: 600;
}

.osd-group-header[b-azyv78qbav] {
    cursor: pointer;
}

.osd-group-header:hover td[b-azyv78qbav] {
    background: var(--rz-base-hover-background-color, var(--hl-color-e0e0e0));
}

.osd-item-header th[b-azyv78qbav] {
    background: var(--rz-base-background-color, var(--hl-color-fff));
    font-weight: 600;
    color: var(--rz-text-secondary-color, var(--hl-color-666));
}

.osd-group-toggle[b-azyv78qbav] {
    display: inline-block;
    width: 16px;
}

.osd-group-name[b-azyv78qbav],
.osd-group-prefecture[b-azyv78qbav],
.osd-group-city[b-azyv78qbav],
.osd-group-street[b-azyv78qbav],
.osd-group-phone[b-azyv78qbav] {
    display: inline-block;
    text-align: left;
    vertical-align: top;
}

.osd-group-name[b-azyv78qbav] {
    width: 140px;
}

.osd-group-prefecture[b-azyv78qbav] {
    width: 65px;
}

.osd-group-city[b-azyv78qbav] {
    width: 200px;
}

.osd-group-street[b-azyv78qbav] {
    width: 200px;
}

.osd-group-phone[b-azyv78qbav] {
    width: 130px;
}

.osd-sortable[b-azyv78qbav] {
    cursor: pointer;
    user-select: none;
}

.osd-sortable:hover[b-azyv78qbav] {
    text-decoration: underline;
}

.osd-item-row td:first-child[b-azyv78qbav] {
    padding-left: 24px;
}

.osd-total-row[b-azyv78qbav] {
    font-weight: 600;
}

.osd-total-row td:first-child[b-azyv78qbav] {
    text-align: right;
}

.osd-empty[b-azyv78qbav] {
    padding: 24px;
    text-align: center;
    color: var(--rz-text-secondary-color, var(--hl-color-666));
}

.osd-footer[b-azyv78qbav] {
    padding-top: 12px;
    display: flex;
    justify-content: flex-end;
}

.osd-dispatch-status[b-azyv78qbav] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.osd-badge[b-azyv78qbav] {
    display: inline-block;
    padding: 1px 6px;
    border-radius: 10px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.osd-dispatch-empty[b-azyv78qbav] {
    opacity: 0.4;
}
/* /Components/Pages/HinodeOperator/OrderStatus/OrderStatusFilterItemEditDialog.razor.rz.scp.css */
.osfd-wrap[b-z9ckakq0yv] {
    padding: 1rem;
}

.osfd-footer[b-z9ckakq0yv] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    margin-top: 1.25rem;
}

.osfd-inherited[b-z9ckakq0yv] {
    margin-bottom: 12px;
    padding: 8px 10px;
    border: 1px solid var(--hl-color-cfd8dc);
    border-left: 4px solid var(--hl-color-78909c);
    border-radius: 4px;
    background: var(--hl-color-eceff1);
    font-size: 12px;
}

.osfd-inherited-title[b-z9ckakq0yv] { margin-bottom: 4px; font-weight: 700; color: var(--hl-color-546e7a); }
.osfd-inherited-row[b-z9ckakq0yv] { margin: 2px 0; }
/* /Components/Pages/HinodeOperator/OrderStatus/OrderStatusListPage.razor.rz.scp.css */
.os-page[b-h1fvznimpa] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 12px 16px;
    box-sizing: border-box;
}

.os-base-date[b-h1fvznimpa] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 16px;
    flex-shrink: 0;
}

.os-range-value[b-h1fvznimpa] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.os-date-label[b-h1fvznimpa] {
    font-weight: 600;
}

.os-step-btn[b-h1fvznimpa] {
    border: 1px solid var(--rz-border-color, var(--hl-color-ccc));
    background: var(--rz-base-background-color, var(--hl-color-fff));
    border-radius: 4px;
    width: 28px;
    height: 28px;
    line-height: 1;
    cursor: pointer;
}

.os-step-btn:hover[b-h1fvznimpa] {
    background: var(--rz-base-hover-background-color, var(--hl-color-f0f0f0));
}

.os-gantt-scroll[b-h1fvznimpa] {
    flex: 1;
    min-height: 0;
    overflow-x: auto;
    overflow-y: auto;
}

.os-gantt-table[b-h1fvznimpa] {
    border-collapse: collapse;
    white-space: nowrap;
}

.os-gantt-table th[b-h1fvznimpa],
.os-gantt-table td[b-h1fvznimpa] {
    border: 1px solid var(--rz-border-color, var(--hl-color-ddd));
    padding: 4px 8px;
    font-size: 0.85rem;
}

.os-gantt-table thead th[b-h1fvznimpa] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--rz-base-background-color, var(--hl-color-fff));
}

.os-gantt-name-col[b-h1fvznimpa] {
    position: sticky;
    left: 0;
    background: var(--rz-base-background-color, var(--hl-color-fff));
    min-width: 220px;
    z-index: 1;
}

.os-gantt-table thead .os-gantt-name-col[b-h1fvznimpa] {
    z-index: 3;
}

.os-gantt-header-row[b-h1fvznimpa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.os-gantt-day-col[b-h1fvznimpa] {
    min-width: 120px;
    text-align: center;
}

.os-gantt-day-col--clickable[b-h1fvznimpa] {
    cursor: pointer;
}

.os-gantt-day-col--clickable:hover[b-h1fvznimpa] {
    background: var(--rz-base-hover-background-color, var(--hl-color-f0f0f0));
}

.os-gantt-day-col--sunday[b-h1fvznimpa] {
    background: var(--hl-color-fee2e2);
}

.os-gantt-table thead th.os-gantt-day-col--sunday[b-h1fvznimpa] {
    background: var(--hl-color-fee2e2);
}

.os-gantt-day-col--warning[b-h1fvznimpa] {
    background: var(--hl-status-warning-bg);
}

.os-gantt-day-col--restricted[b-h1fvznimpa] {
    background: var(--hl-status-danger-bg);
}

/* 受付締切超過（対象日前日の締切を過ぎた状態）。数量/重量超過の自動制限（赤）・受注過多の警告（黄）とは
   区別し、中立なグレーで「受付終了」を表す。
   --hl-status-neutral-bg(#f5f5f5)はRadzen "software" テーマの基本背景（--rz-base-background-color=#fff）
   との差がわずかで、テーブル上ではほぼ見分けがつかないため使わない。このダイアログ内のホバー背景
   （.osd-group-header:hover 等）と同じ、はっきり視認できるグレー --hl-color-e0e0e0 を使う。 */
.os-gantt-day-col--closed[b-h1fvznimpa] {
    background: var(--hl-color-e0e0e0);
}

.os-gantt-dow[b-h1fvznimpa] {
    display: block;
    font-size: 0.65rem;
    font-weight: 500;
    opacity: 0.7;
}

.os-gantt-indent[b-h1fvznimpa] {
    display: inline-block;
}

.os-gantt-toggle[b-h1fvznimpa] {
    border: none;
    background: none;
    cursor: pointer;
    width: 1.2em;
}

.os-gantt-name[b-h1fvznimpa] {
    cursor: grab;
}

.os-gantt-actions[b-h1fvznimpa] {
    margin-left: 4px;
    display: inline-flex;
    align-items: center;
}

.os-gantt-empty[b-h1fvznimpa] {
    opacity: 0.4;
}

/* ── 行の色（CSS変数はtrに設定、!importantで既定の背景を上書き） ── */
tr.os-gantt-row--colored .os-gantt-name-col[b-h1fvznimpa],
tr.os-gantt-row--colored .os-gantt-day-col[b-h1fvznimpa] {
    background: var(--os-row-color) !important;
}

tr.os-gantt-row--colored .os-gantt-day-col--restricted[b-h1fvznimpa] {
    background: var(--hl-status-danger-bg) !important;
}

tr.os-gantt-row--colored .os-gantt-day-col--warning[b-h1fvznimpa] {
    background: var(--hl-status-warning-bg) !important;
}

tr.os-gantt-row--colored .os-gantt-day-col--closed[b-h1fvznimpa] {
    background: var(--hl-color-e0e0e0) !important;
}

.os-gantt-color-tools[b-h1fvznimpa] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-left: 6px;
}

.os-gantt-color-label[b-h1fvznimpa] {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

.os-gantt-color-dot[b-h1fvznimpa] {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 1.5px solid var(--hl-color-cbd5e1);
    display: block;
    background: var(--hl-color-f1f5f9);
    transition: border-color .12s;
}

.os-gantt-color-label:hover .os-gantt-color-dot[b-h1fvznimpa] {
    border-color: var(--hl-color-94a3b8);
}

.os-gantt-color-hidden[b-h1fvznimpa] {
    position: absolute;
    width: 0;
    height: 0;
    opacity: 0;
    pointer-events: none;
}

.os-gantt-color-clear[b-h1fvznimpa] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    padding: 0;
    background: none;
    border: none;
    font-size: .65rem;
    color: var(--hl-color-94a3b8);
    cursor: pointer;
    line-height: 1;
    transition: color .12s;
}

.os-gantt-color-clear:hover[b-h1fvznimpa] {
    color: var(--hl-color-ef4444);
}

.os-filter-tree-root-drop[b-h1fvznimpa] {
    margin-top: 8px;
    padding: 8px;
    border: 1px dashed var(--rz-border-color, var(--hl-color-ccc));
    border-radius: 4px;
    text-align: center;
    font-size: 0.8rem;
    color: var(--rz-text-secondary-color, var(--hl-color-666));
}
/* /Components/Pages/HinodeOperator/OrderStatus/OrderStatusNodeManualRestrictionDialog.razor.rz.scp.css */
.onmr-dialog[b-4y67kdwmmq] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 4px;
}

.onmr-field[b-4y67kdwmmq] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.onmr-footer[b-4y67kdwmmq] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding-top: 8px;
}
/* /Components/Pages/HinodeOperator/OrderStatus/OrderStatusNodeRestrictionSettingsDialog.razor.rz.scp.css */
.onrs-dialog[b-u1l7wsmq2u] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 4px;
}

.onrs-field[b-u1l7wsmq2u] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.onrs-time-input[b-u1l7wsmq2u] {
    padding: 4px 8px;
    border: 1px solid var(--rz-border-color, var(--hl-color-ddd));
    border-radius: 4px;
}

.onrs-footer[b-u1l7wsmq2u] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding-top: 8px;
}

.onrs-cutoff[b-u1l7wsmq2u] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.onrs-hint[b-u1l7wsmq2u] {
    font-size: 11px;
    color: var(--hl-color-78909c);
}
/* /Components/Pages/HinodeOperator/Reception/ReceptionCalendarDialog.razor.rz.scp.css */
.rcd-note[b-4fp41sytbb] { margin: 0 0 8px; font-size: 12px; color: var(--hl-color-546e7a); }
/* /Components/Pages/HinodeOperator/Reception/ReceptionCalendarEditor.razor.rz.scp.css */
.rce[b-l1n1ugyv7p] { display: flex; flex-direction: column; gap: 12px; }

.rce-nav[b-l1n1ugyv7p] { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rce-nav-hint[b-l1n1ugyv7p] { font-size: 12px; color: var(--hl-color-78909c); }
.rce-nav-btn[b-l1n1ugyv7p] {
    padding: 4px 12px; font-size: 12px; border: 1px solid var(--hl-color-cfd8dc); border-radius: 4px;
    background: #fff; cursor: pointer; color: var(--hl-color-546e7a);
}
.rce-nav-btn:hover:not(:disabled)[b-l1n1ugyv7p] { background: var(--hl-color-eceff1); }
.rce-loading[b-l1n1ugyv7p] { color: var(--hl-color-78909c); font-size: 13px; }

.rce-alert[b-l1n1ugyv7p] { padding: 8px 14px; border-radius: 6px; font-size: 12px; font-weight: 500; }
.rce-alert--error[b-l1n1ugyv7p]   { background: var(--hl-color-fef2f2); color: var(--hl-color-dc2626); border: 1px solid var(--hl-color-fecaca); }
.rce-alert--success[b-l1n1ugyv7p] { background: var(--hl-color-f0fdf4); color: var(--hl-color-16a34a); border: 1px solid var(--hl-color-bbf7d0); }

.rce-calendars[b-l1n1ugyv7p] { display: flex; flex-wrap: wrap; gap: 16px; }
.rce-calendar[b-l1n1ugyv7p] {
    background: var(--hl-color-fff); border: 1px solid var(--hl-color-e2e8f0); border-radius: 10px;
    padding: 12px 14px; flex: 1 1 220px; min-width: 220px;
}
.rce-cal-month[b-l1n1ugyv7p] { font-size: 14px; font-weight: 700; color: var(--hl-color-1e293b); text-align: center; margin-bottom: 8px; }
.rce-cal-grid[b-l1n1ugyv7p] { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.rce-dow[b-l1n1ugyv7p] { text-align: center; font-size: 11px; font-weight: 700; color: var(--hl-color-64748b); padding: 4px 0; }
.rce-dow--sun[b-l1n1ugyv7p] { color: var(--hl-color-dc2626); }
.rce-dow--sat[b-l1n1ugyv7p] { color: var(--hl-color-2563eb); }

.rce-cell[b-l1n1ugyv7p] {
    text-align: center; font-size: 13px; padding: 6px 2px; border-radius: 5px; cursor: pointer;
    color: var(--hl-color-334155); transition: background .1s; user-select: none;
}
.rce-cell:hover:not(.rce-cell--empty)[b-l1n1ugyv7p] { background: var(--hl-color-f1f5f9); }
.rce-cell--empty[b-l1n1ugyv7p] { cursor: default; }
.rce-cell--sun[b-l1n1ugyv7p] { color: var(--hl-color-dc2626); }
.rce-cell--sat[b-l1n1ugyv7p] { color: var(--hl-color-2563eb); }
.rce-cell--holiday[b-l1n1ugyv7p] { background: var(--hl-color-fee2e2); color: var(--hl-color-b91c1c); font-weight: 600; }
.rce-cell--holiday:hover[b-l1n1ugyv7p] { background: var(--hl-color-fecaca); }
.rce-cell--today[b-l1n1ugyv7p] { outline: 2px solid var(--hl-color-3b82f6); outline-offset: -2px; font-weight: 700; }
.rce-cell--holiday.rce-cell--today[b-l1n1ugyv7p] { outline-color: var(--hl-color-dc2626); }

.rce-legend[b-l1n1ugyv7p] { font-size: 12px; color: var(--hl-color-64748b); display: flex; align-items: center; gap: 12px; margin: 0; }
.rce-legend-box[b-l1n1ugyv7p] { display: inline-block; width: 14px; height: 14px; border-radius: 3px; margin-right: 4px; vertical-align: middle; }
.rce-legend-box--holiday[b-l1n1ugyv7p] { background: var(--hl-color-fee2e2); border: 1px solid var(--hl-color-fca5a5); }
.rce-legend-box--today[b-l1n1ugyv7p] { outline: 2px solid var(--hl-color-3b82f6); outline-offset: -2px; background: var(--hl-color-fff); }

.rce-actions[b-l1n1ugyv7p] { display: flex; justify-content: flex-end; gap: 8px; }
.rce-save-btn[b-l1n1ugyv7p] {
    padding: 7px 22px; font-size: 13px; font-weight: 600; background: var(--hl-color-3b82f6); color: var(--hl-color-fff);
    border: none; border-radius: 7px; cursor: pointer;
}
.rce-save-btn:disabled[b-l1n1ugyv7p] { background: var(--hl-color-94a3b8); cursor: not-allowed; }
.rce-close-btn[b-l1n1ugyv7p] {
    padding: 7px 22px; font-size: 13px; border: 1px solid var(--hl-color-cfd8dc); border-radius: 7px;
    background: #fff; cursor: pointer; color: var(--hl-color-546e7a);
}
/* /Components/Pages/HinodeOperator/Reception/ReceptionClientDialog.razor.rz.scp.css */
.rcd[b-73589irvnz] { display: flex; flex-direction: column; gap: 10px; font-size: 13px; }
.rcd-note[b-73589irvnz] { color: var(--hl-color-546e7a); font-size: 12px; margin: 0; }
.rcd-table[b-73589irvnz] { border-collapse: collapse; width: 100%; }
.rcd-table th[b-73589irvnz], .rcd-table td[b-73589irvnz] { border: 1px solid var(--hl-color-e0e0e0); padding: 4px 8px; }
.rcd-table th[b-73589irvnz] { background: var(--hl-color-eceff1); }
.rcd-num[b-73589irvnz] { text-align: right; }
.rcd-limit[b-73589irvnz] { width: 90px; text-align: right; }
.rcd-stopped[b-73589irvnz] { background: var(--hl-status-danger-bg); }
.rcd-link[b-73589irvnz] { border: none; background: none; color: var(--hl-accent-dark); cursor: pointer; font-size: 11px; }
.rcd-add[b-73589irvnz] { display: flex; gap: 8px; align-items: center; }
.rcd-btn[b-73589irvnz] { padding: 4px 12px; }
.rcd-source[b-73589irvnz] { display: block; font-size: 10px; color: var(--hl-color-78909c); }
/* /Components/Pages/HinodeOperator/Reception/ReceptionClock.razor.rz.scp.css */
.rck-clock[b-cisjls6ig7] {
    display: inline-flex;
    align-items: baseline;
    gap: 12px;
    color: var(--hl-color-546e7a);
    font-variant-numeric: tabular-nums;
}

.rck-date[b-cisjls6ig7] {
    font-size: 18px;
    font-weight: 500;
}

.rck-time[b-cisjls6ig7] {
    font-size: 24px;
    font-weight: 700;
    color: var(--hl-color-1a237e);
}
/* /Components/Pages/HinodeOperator/Reception/ReceptionRuleDialog.razor.rz.scp.css */
/* ノードの閾値ダイアログ（OrderStatusNodeRestrictionSettingsDialog）と同じ見た目にそろえる */
.rrd[b-81v6qaw7yz] { display: flex; flex-direction: column; gap: 12px; padding: 4px; }
.rrd-field[b-81v6qaw7yz] { display: flex; flex-direction: column; gap: 4px; }
.rrd-cutoff[b-81v6qaw7yz] { display: flex; align-items: center; gap: 8px; }
.rrd-hint[b-81v6qaw7yz] { font-size: 11px; color: var(--hl-color-78909c); }
.rrd-time-input[b-81v6qaw7yz] {
    padding: 4px 8px;
    border: 1px solid var(--rz-border-color, var(--hl-color-ddd));
    border-radius: 4px;
}
.rrd-actions[b-81v6qaw7yz] { display: flex; justify-content: flex-end; gap: 8px; padding-top: 8px; }
/* /Components/Pages/HinodeOperator/Reception/ReceptionTeamNodeDialog.razor.rz.scp.css */
.rtn-wrap[b-00y4sqa9qv] { display: flex; flex-direction: column; gap: 12px; max-height: 70vh; overflow-y: auto; }
.rtn-note[b-00y4sqa9qv] { margin: 0; font-size: 12px; color: var(--hl-color-78909c); }
.rtn-category[b-00y4sqa9qv] { border: 1px solid var(--hl-color-cfd8dc); border-radius: 4px; padding: 8px 10px; }
.rtn-category-head[b-00y4sqa9qv] { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.rtn-category-name[b-00y4sqa9qv] { font-weight: 700; }
.rtn-empty[b-00y4sqa9qv] { margin-top: 6px; font-size: 12px; color: var(--hl-color-78909c); }
.rtn-tree[b-00y4sqa9qv] { list-style: none; margin: 6px 0 0; padding-left: 16px; }
.rtn-tree li[b-00y4sqa9qv] { margin: 4px 0; }
.rtn-node-actions[b-00y4sqa9qv] { margin-left: 8px; white-space: nowrap; }
.rtn-btn[b-00y4sqa9qv] {
    padding: 1px 8px;
    border: 1px solid var(--hl-color-cfd8dc);
    border-radius: 3px;
    background: #fff;
    cursor: pointer;
    font-size: 11px;
    color: var(--hl-color-546e7a);
}
.rtn-btn:hover[b-00y4sqa9qv] { background: var(--hl-color-eceff1); }
.rtn-btn--danger[b-00y4sqa9qv] { color: #c62828; }
.rtn-footer[b-00y4sqa9qv] { display: flex; justify-content: flex-end; }
.rtn-node-name[b-00y4sqa9qv] { cursor: grab; user-select: none; }
.rtn-node-name:hover[b-00y4sqa9qv] { background: var(--hl-color-eceff1); }
.rtn-tree .rtn-gap[b-00y4sqa9qv] { height: 6px; margin: 0; }
.rtn-tree .rtn-gap--hot[b-00y4sqa9qv] { height: 6px; background: var(--hl-accent-dark); border-radius: 3px; }
.rtn-root-cond[b-00y4sqa9qv] { margin: 4px 0 2px; font-size: 12px; color: var(--hl-color-546e7a); }
/* /Components/Pages/HinodeOperator/Reception/RelayCalendarDialog.razor.rz.scp.css */
.rcd-note[b-28dr21qwns] { margin: 0 0 8px; font-size: 12px; color: var(--hl-color-546e7a); }
.rcd-select[b-28dr21qwns] { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; font-size: 13px; }
/* /Components/Pages/Maintenances/FreightRateManager/CharterPickerDialog.razor.rz.scp.css */
/* =========================================================
   CharterPickerDialog.razor.css（CSS Isolation）
   目的: inline style を撤去してクラスに集約
   ========================================================= */

.cp-root[b-nxon6ojz8p] {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.cp-toolbar-row[b-nxon6ojz8p] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.cp-title[b-nxon6ojz8p] {
    font-weight: 800;
    white-space: nowrap;
}

.cp-search-center[b-nxon6ojz8p] {
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
}

.cp-search-320[b-nxon6ojz8p] {
    width: 320px;
}

.cp-body[b-nxon6ojz8p] {
    flex: 1 1 auto;
    min-height: 0;
}
/* /Components/Pages/Maintenances/FreightRateManager/CharterRateProfileEditDialog.razor.rz.scp.css */
body[b-vrbzypspl4] {
}
/* =========================================================
   FreightRateManager - CharterRateProfileEditDialog
   対象: CharterRateProfileEditDialog.razor
   方針:
     - inline style を撤去してクラスに集約
     - 未使用だった hl-cr-* を廃止し、実際に使うクラスだけ残す
   ========================================================= */

/* ダイアログの外枠（元: style="width:100%; max-width:1200px; overflow-x:hidden;"） */
.hl-charter-edit[b-vrbzypspl4] {
    width: 100%;
    max-width: 1200px;
    overflow-x: hidden;
}

/* =========================
   幅ユーティリティ（このダイアログ内だけ）
   ========================= */
.hl-cr-w-220[b-vrbzypspl4] {
    width: 220px;
}

.hl-cr-w-260[b-vrbzypspl4] {
    width: 260px;
}

.hl-cr-w-300[b-vrbzypspl4] {
    width: 300px;
}

/* 説明欄（可変＋最小幅） */
.hl-cr-desc[b-vrbzypspl4] {
    flex: 1 1 auto;
    min-width: 420px;
}

/* 操作エリア（右端固定気味） */
.hl-cr-actions[b-vrbzypspl4] {
    width: 260px;
    display: flex;
    flex-direction: column;
}

.hl-cr-actions-spacer[b-vrbzypspl4] {
    height: 22px;
}

.hl-cr-actions-inner[b-vrbzypspl4] {
    margin-top: auto;
}

/* Version SelectBar の見やすい配分 */
.hl-cr-version-label[b-vrbzypspl4] {
    flex: 0 0 auto;
}

.hl-cr-version-select[b-vrbzypspl4] {
    flex: 1 1 auto;
    min-width: 520px;
}

/* Version + Grid 横並びレイアウト */
.hl-cr-version-layout[b-vrbzypspl4] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.hl-cr-version-main[b-vrbzypspl4] {
    flex: 1 1 auto;
    min-width: 0;
}

/* 右サイドバー：ボタン類を縦並び */
.hl-cr-version-actions[b-vrbzypspl4] {
    flex: 0 0 150px;
    width: 150px;
    display: flex;
    flex-direction: column;
    align-self: stretch;    /* 左主エリアと同じ高さに伸ばす（margin-top:auto を効かせるため） */
    gap: 0;
    padding-top: 22px;      /* ヘッダーラベル行の高さ分オフセット */
}

/* =========================================================
   VehicleRates Grid Header Align (within CharterRateProfileEditDialog)
   ========================================================= */

/* ヘッダーを強制左寄せ（Radzenのflexヘッダー対策） */
.hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th,
.hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th * {
    text-align: left !important;
}

    .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th .rz-column-title,
    .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th .rz-column-title-content,
    .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th .rz-sortable-column,
    .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th .rz-sortable-column-content {
        justify-content: flex-start !important;
    }

        .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th .rz-column-title span,
        .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th .rz-column-title-content span {
            text-align: left !important;
        }

    /* 「有効」列だけ中央寄せに戻す */
    .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th.hl-col-active,
    .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th.hl-col-active * {
        text-align: center !important;
    }

        .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th.hl-col-active .rz-column-title,
        .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th.hl-col-active .rz-column-title-content,
        .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th.hl-col-active .rz-sortable-column,
        .hl-charter-edit[b-vrbzypspl4]  .hl-vehiclerate-grid thead th.hl-col-active .rz-sortable-column-content {
            justify-content: center !important;
        }



/* 上段Profile：FareEditDialogと同じ2段グリッド構成 */
.hl-crp-grid[b-vrbzypspl4] {
    display: grid;
    grid-template-columns: 220px 1fr 160px 160px;
    grid-template-rows: auto auto;
    gap: 10px 12px;
    align-items: end;
}

/* グリッドセル共通 */
.hl-crp-cell[b-vrbzypspl4] {
    min-width: 0; /* 1fr列を正しく伸縮させる必須 */
}

/* 2段目左：空白 */
.hl-crp-spacer[b-vrbzypspl4] {
    /* nothing */
}

/* 2段目：削除（右寄せ） */
.hl-crp-actions[b-vrbzypspl4] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    min-height: 36px;
}

/* 2段目：保存（右寄せ） */
.hl-crp-save[b-vrbzypspl4] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

/* Radzen入力系の幅保険（wrapper対策） */
.hl-crp-grid[b-vrbzypspl4]  .rz-textbox,
.hl-crp-grid[b-vrbzypspl4]  .rz-datepicker,
.hl-crp-grid[b-vrbzypspl4]  .rz-dropdown {
    width: 100%;
    box-sizing: border-box;
}

/* 狭い画面では縦積み（必要なら） */
@media (max-width: 900px) {
    .hl-crp-grid[b-vrbzypspl4] {
        grid-template-columns: 1fr;
    }

    .hl-crp-actions[b-vrbzypspl4],
    .hl-crp-save[b-vrbzypspl4] {
        justify-content: flex-start;
    }
}

/* /Components/Pages/Maintenances/FreightRateManager/CharterRateProfileGrid.razor.rz.scp.css */
body[b-sf43stzzpt] {
}
/* =========================================================
   CharterRateProfileGrid.razor.css（CSS Isolation）
   方針:
     - 選択行は Radzen 標準（tr.rz-state-highlight）
     - hover/選択色は Radzen テーマ変数
     - linked は未選択時のみ薄く
     - 内部DOMへ届かせるため ::deep を使用
   ========================================================= */


/* =========================================================
   Row Layout（カード表示）
   ※ここはそのまま使えます（選択系だけ整理）
   ========================================================= */

.hl-chartergrid .hl-charter-row[b-sf43stzzpt] {
    display: grid;
    grid-template-columns: 520px 1fr;
    gap: 12px;
    padding: 10px 12px;
}

.hl-chartergrid .hl-left[b-sf43stzzpt] {
    display: grid;
    grid-template-columns: 70px 1fr;
    grid-template-rows: auto auto auto;
    gap: 6px 10px;
    align-items: start;
}

.hl-chartergrid .hl-badge[b-sf43stzzpt] {
    grid-column: 1;
    grid-row: 1;
    width: 60px;
}

.hl-chartergrid .hl-title[b-sf43stzzpt] {
    grid-column: 2;
    grid-row: 1;
    font-weight: 900;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hl-chartergrid .hl-desc[b-sf43stzzpt] {
    grid-column: 2;
    grid-row: 2;
    color: var(--hl-color-666);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hl-chartergrid .hl-desc-empty[b-sf43stzzpt] {
    color: var(--hl-color-aaa);
}

.hl-chartergrid .hl-term[b-sf43stzzpt] {
    grid-column: 2;
    grid-row: 3;
    color: var(--hl-color-666);
    font-weight: 700;
    white-space: nowrap;
}

.hl-chartergrid .hl-state[b-sf43stzzpt] {
    grid-column: 2;
    font-size: 0.75rem;
    font-weight: 800;
    white-space: nowrap;
}

.hl-chartergrid .hl-state.active[b-sf43stzzpt] {
    color: var(--hl-color-166534);
}

.hl-chartergrid .hl-state.ended[b-sf43stzzpt] {
    color: var(--hl-color-b91c1c);
}

.hl-chartergrid .hl-right[b-sf43stzzpt] {
    display: grid;
    grid-template-columns: 170px 1fr;
    gap: 10px;
    align-items: start;
}

.hl-chartergrid .hl-apply[b-sf43stzzpt] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-top: 2px;
}

.hl-chartergrid .hl-apply-label[b-sf43stzzpt] {
    font-size: 0.75rem;
    color: var(--hl-color-777);
    font-weight: 800;
}

.hl-chartergrid .hl-apply-value[b-sf43stzzpt] {
    font-weight: 900;
    white-space: nowrap;
}

.hl-chartergrid .hl-next[b-sf43stzzpt] {
    margin-top: 8px;
    min-width: 120px;
}

.hl-chartergrid .hl-next-label[b-sf43stzzpt] {
    font-size: .75rem;
    color: var(--hl-color-6b7280);
}

.hl-chartergrid .hl-next-value[b-sf43stzzpt] {
    font-weight: 800;
    white-space: nowrap;
}

.hl-chartergrid .hl-detail[b-sf43stzzpt] {
    display: grid;
    grid-template-columns: 200px 120px 120px 120px;
    row-gap: 6px;
    column-gap: 10px;
    align-items: center;
}

.hl-chartergrid .hl-dh[b-sf43stzzpt] {
    font-size: 0.75rem;
    color: var(--hl-color-777);
    font-weight: 800;
}

.hl-chartergrid .hl-cell[b-sf43stzzpt] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hl-chartergrid .hl-num[b-sf43stzzpt] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.hl-chartergrid .hl-empty[b-sf43stzzpt] {
    grid-column: 1 / -1;
    color: var(--hl-color-888);
    padding: 6px 0;
}


/* 次回変更あり：行全体に“気づき”を付与（選択色と喧嘩しない） */
.hl-chartergrid .hl-charter-row.hl-has-next[b-sf43stzzpt] {
    border-left: 4px solid var(--hl-color-f59e0b); /* amber */
    padding-left: 8px; /* 左ボーダー分の調整 */
    background: linear-gradient(90deg, var(--hl-color-f59e0b-a10), transparent 40%);
    border-radius: 8px;
}

.hl-chartergrid .hl-charter-row.hl-ended[b-sf43stzzpt] {
    border-left: 4px solid var(--hl-color-dc2626);
    padding-left: 8px;
    background: linear-gradient(90deg, var(--hl-color-dc2626-a10), transparent 40%);
    border-radius: 8px;
}

/* 次回変更の見出しを“バッジ化” */
.hl-chartergrid .hl-next-head[b-sf43stzzpt] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.hl-chartergrid .hl-next-badge[b-sf43stzzpt] {
    display: inline-block;
    font-size: .70rem;
    font-weight: 900;
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--hl-color-f59e0b-a18);
    border: 1px solid var(--hl-color-f59e0b-a35);
    color: var(--hl-color-92400e);
    white-space: nowrap;
}

.hl-chartergrid .hl-next-date[b-sf43stzzpt] {
    font-weight: 900;
    white-space: nowrap;
}

.hl-chartergrid .hl-next-sub[b-sf43stzzpt] {
    margin-top: 2px;
    font-size: .75rem;
    color: var(--hl-color-6b7280);
    font-weight: 700;
}


/* 左のバッジを縦積みにする */
.hl-badges[b-sf43stzzpt] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
}

/* /Components/Pages/Maintenances/FreightRateManager/DeliveryFreightLinkGrid.razor.rz.scp.css */
body[b-8ry43yapi4] {
}


/* =========================================================
   FreightRateManager - DeliveryFreightLinkGrid
   対象: DeliveryFreightLinkGrid.razor
   目的: location cell（集荷先/配送先）の表示を整える
   ========================================================= */

.hl-loc[b-8ry43yapi4] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    width: 100%; /* ★セル幅いっぱいを使う */
}

.hl-loc-top[b-8ry43yapi4] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    min-width: 0;
    width: 100%; /* ★これが無いと右寄せが効きにくい */
}

.hl-loc-short[b-8ry43yapi4] {
    font-weight: 700;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hl-loc-phone[b-8ry43yapi4] {
    margin-left: auto; /* ★右へ押し出す（space-betweenより確実） */
    text-align: right;
    white-space: nowrap;
    color: var(--rz-text-secondary);
    font-variant-numeric: tabular-nums;
}

/* 下段：住所（左）+ ID（右）の横並び */
.hl-loc-bottom[b-8ry43yapi4] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    min-width: 0;
    width: 100%;
}

.hl-loc-addr[b-8ry43yapi4] {
    color: var(--rz-text-secondary);
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

a.hl-loc-addr-link[b-8ry43yapi4] {
    text-decoration: underline;
    text-decoration-style: dotted;
    text-underline-offset: 2px;
    cursor: pointer;
}

a.hl-loc-addr-link:hover[b-8ry43yapi4] {
    text-decoration-style: solid;
    color: var(--rz-primary);
}

.hl-loc-id[b-8ry43yapi4] {
    flex: 0 0 auto;
    margin-left: auto;
    text-align: right;
    white-space: nowrap;
    color: var(--rz-text-secondary);
    font-variant-numeric: tabular-nums;
    font-size: 0.8em;
    opacity: 0.7;
}

.hl-dfl-badges[b-8ry43yapi4] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
    width: 100%;
    min-width: 0;
}

/* バッジが列幅を超えないよう制限 */
.hl-dfl-badges[b-8ry43yapi4]  .rz-badge {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
}

.hl-dfl-new-badge[b-8ry43yapi4] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.02em;
    background: var(--hl-color-fff4d6);
    color: var(--hl-color-9a5b00);
    border: 1px solid var(--hl-color-e4b64f);
    box-shadow: 0 1px 2px var(--hl-color-9a5b00-a08);
}

.hl-dfl-new-panel[b-8ry43yapi4] {
    padding: 6px 8px;
    border-radius: 8px;
    border: 1px dashed var(--hl-color-e4b64f);
    background: linear-gradient(90deg, var(--hl-color-fff9e8) 0%, var(--hl-color-fffdf5) 100%);
    /* 選択行（白テキスト継承）でも文字が見えるよう明示指定 */
    color: var(--hl-color-444) !important;
}

.hl-dfl-new-panel span[b-8ry43yapi4] {
    color: var(--hl-color-444) !important;
}

.hl-dfl-new-panel .rz-text-muted[b-8ry43yapi4] {
    color: var(--hl-color-888) !important;
}

.hl-dfl-delegated-group[b-8ry43yapi4] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-left: auto;
    flex: 0 0 auto;
}

.hl-dfl-delegated-badge[b-8ry43yapi4] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    background: var(--hl-color-e8f0fe);
    color: var(--hl-color-1a56db);
    border: 1px solid var(--hl-color-93b4f7);
    white-space: nowrap;
}

.hl-dfl-required-badge[b-8ry43yapi4] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    background: var(--hl-color-fde8e8);
    color: var(--hl-color-c81e1e);
    border: 1px solid var(--hl-color-f7a0a0);
    white-space: nowrap;
}

/* 連携運賃セル（元: style="width:100%; min-width:0; gap:8px;"） */
.hl-dfl-fare-row[b-8ry43yapi4] {
    width: 100%;
    min-width: 0;
    gap: 8px;
}

/* 元: style="min-width:0;" */
.hl-dfl-minw0[b-8ry43yapi4] {
    min-width: 0;
}

/* ステータスサフィックス（元: style="margin-left:6px;"） */
.hl-dfl-suffix[b-8ry43yapi4] {
    margin-left: 6px;
}

/* /Components/Pages/Maintenances/FreightRateManager/EstimateDialog.razor.rz.scp.css */
body[b-3q3nt9x3ds] {
}
/* =========================
   Root layout
========================= */
.hl-estimate-dialog[b-3q3nt9x3ds] {
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 8px;
    min-width: 0;
    min-height: 0;
    /* ★列幅をここで一元管理（全ブロック共通） */
    --col1: 110px; /* ①カテゴリ/ルール */
    --col2: 220px; /* ②条件 */
    --col3: 80px; /* ③単位/車格 */
    --col4: 180px; /* ④レンジ */
    --col5: 80px; /* ⑤単価/金額 */
    --col6: 60px; /*⑥適用列*/
    --col8: 140px; /* ⑧金額（右固定） */
    --gap: 12px;
}

    /* box sizing を揃える（幅ズレ防止） */
    .hl-estimate-dialog[b-3q3nt9x3ds],
    .hl-estimate-dialog *[b-3q3nt9x3ds] {
        box-sizing: border-box;
    }

/* =========================
   Header
========================= */
.hl-est-header[b-3q3nt9x3ds] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.hl-est-title[b-3q3nt9x3ds] {
    font-weight: 800;
    font-size: 20px;
    letter-spacing: 0.02em;
}

/* =========================
   Toolbar
========================= */

.hl-est-toolbar-row[b-3q3nt9x3ds] {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 10px;
}

/* 計算式：改行を活かす（元: style="white-space:pre-line;"） */
.hl-est-pre-line[b-3q3nt9x3ds] {
    white-space: pre-line;
}

/* 下段カード群の横並びラップ（元: style="gap:10px;"） */
.hl-est-gap10[b-3q3nt9x3ds] {
    gap: 10px;
}

/* デバッグテーブル（元: style="width:100%;"） */
.hl-est-table-full[b-3q3nt9x3ds] {
    width: 100%;
}

.hl-est-th-110[b-3q3nt9x3ds] {
    width: 110px;
}

.hl-est-th-260[b-3q3nt9x3ds] {
    width: 260px;
}

.hl-est-th-130[b-3q3nt9x3ds] {
    width: 130px;
}

.hl-est-th-90[b-3q3nt9x3ds] {
    width: 90px;
}

/* 簡易JSONダンプ（元: style="white-space:pre-wrap; font-size:12px; margin:0;"） */
.hl-est-pre-dump[b-3q3nt9x3ds] {
    white-space: pre-wrap;
    font-size: 12px;
    margin: 0;
}

.hl-est-field[b-3q3nt9x3ds] {
    min-width: 0;
}

.hl-w-220[b-3q3nt9x3ds] {
    min-width: 220px;
}

.hl-w-180[b-3q3nt9x3ds] {
    min-width: 180px;
}

.hl-est-relayflag[b-3q3nt9x3ds] {
    min-width: 220px;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* =========================
   Blocks
========================= */
.hl-est-blocks[b-3q3nt9x3ds] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* =========================
   7-column shared grid (ALL blocks)
   ①カテゴリ/ルール
   ②条件
   ③単位（チャーターは車格）
   ④レンジ
   ⑤単価（チャーターは金額）
   ⑥適用列
   ⑦計算式（可変）
   ⑧金額（右寄せ固定）
========================= */
.hl-est-grid7[b-3q3nt9x3ds] {
    display: grid;
    grid-template-columns: var(--col1) var(--col2) var(--col3) var(--col4) var(--col5) var(--col6) 1fr var(--col8);
    column-gap: var(--gap);
    align-items: start;
    min-width: 0;
    width: 100%;
}

.hl-est-cell[b-3q3nt9x3ds] {
    min-width: 0;
}

/* ① */
.hl-est-cat[b-3q3nt9x3ds] {
    font-weight: 800;
    font-size: 16px;
    line-height: 1.2;
}

.hl-est-rule[b-3q3nt9x3ds] {
    font-size: 12px;
    font-weight: 500;
    color: var(--rz-text-secondary, var(--hl-color-666));
    margin-top: 3px;
}

/* ② */
.hl-est-cond-title[b-3q3nt9x3ds] {
    font-size: 11px;
    font-weight: 600;
    color: var(--rz-text-secondary, var(--hl-color-666));
}

.hl-est-cond-body[b-3q3nt9x3ds] {
    margin-top: 2px;
    font-size: 13px;
}

/* ⑥ */
.hl-est-formula-label[b-3q3nt9x3ds] {
    font-size: 11px;
    font-weight: 600;
    color: var(--rz-text-secondary, var(--hl-color-666));
}

.hl-est-formula-body[b-3q3nt9x3ds] {
    margin-top: 4px;
    font-size: 13px;
}

/* ⑦ */
.hl-est-adopt[b-3q3nt9x3ds] {
    text-align: right;
}

.hl-est-adopt-label[b-3q3nt9x3ds] {
    font-size: 11px;
    font-weight: 600;
    color: var(--rz-text-secondary, var(--hl-color-666));
}

.hl-est-adopt-amount[b-3q3nt9x3ds] {
    margin-top: 4px;
    font-weight: 800;
    font-size: 16px;
    font-variant-numeric: tabular-nums;
}

.hl-est-muted[b-3q3nt9x3ds] {
    color: var(--rz-text-secondary, var(--hl-color-666));
}

/* =========================
   ③④⑤ “一体”テーブル（subgrid 不使用で安定化）
   - 親の③④⑤と同じ列幅に固定（変数参照）
   - ③ foreach の中に ④⑤ foreach をネストしても崩れない
========================= */
.hl-est-upr[b-3q3nt9x3ds] {
    grid-column: 3 / 7; /* ③〜⑤をまたぐ */
    min-width: 0;
}

/* ③④⑤の中身：常に同じ列幅で固定（＝どのブロックも必ず揃う） */
.hl-est-upr-gap[b-3q3nt9x3ds] {
    display: grid;
    grid-template-columns: var(--col3) var(--col4) var(--col5) var(--col6); /* ★4列に */
    column-gap: var(--gap);
    row-gap: 6px;
    min-width: 0;
    align-items: start;
}

/* 見出し：列に直置き */
.hl-est-upr-head[b-3q3nt9x3ds] {
    display: contents;
}

    .hl-est-upr-head > div[b-3q3nt9x3ds] {
        font-size: 11px;
        font-weight: 600;
        color: var(--rz-text-secondary, var(--hl-color-666));
        padding-bottom: 2px;
    }

/* 1行（③④⑤）を同じ foreach で出すため */
.hl-est-upr-row[b-3q3nt9x3ds] {
    display: contents;
}

/* ③単位/車格 */
.hl-est-upr-unit[b-3q3nt9x3ds] {
    font-weight: 700;
    font-size: 13px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

/* 2行目以降の単位欄：背景を生かすため visibility を使わない */
.hl-est-upr-unit-blank[b-3q3nt9x3ds] {
    visibility: visible; /* 念のため明示 */
    color: transparent; /* 文字だけ消す */
}

/* ④レンジ */
.hl-est-upr-range[b-3q3nt9x3ds] {
    font-size: 12px;
    color: var(--rz-text-secondary, var(--hl-color-666));
    white-space: nowrap;
}

/* ⑤単価/金額 */
.hl-est-upr-price[b-3q3nt9x3ds] {
    font-weight: 700;
    font-size: 13px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    text-align: right; /* 要望：左位置固定 */
}



/* ⑥適用列（中身は後で使う） */
.hl-est-apply[b-3q3nt9x3ds] {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* =========================
   Charter（条件欄のタイトル/説明）
========================= */
.hl-est-ch-title[b-3q3nt9x3ds] {
    font-weight: 700;
    font-size: 13px;
    line-height: 1.2;
}

.hl-est-ch-desc[b-3q3nt9x3ds] {
    margin-top: 2px;
    font-size: 12px;
    line-height: 1.2;
}

/* =========================
   Bottom
========================= */
.hl-est-bottom[b-3q3nt9x3ds] {
    flex: 0 0 auto;
    padding: 6px;
}

    .hl-est-bottom[b-3q3nt9x3ds]  .rz-card-content {
        padding: 6px;
    }


/* =========================
   適用強調（セル塗り方式）
   - display: contents のため「行」背景ではなくセルに塗る
   - 既存クラスは変更せず、追加クラスのみ
========================= */
.hl-est-applied-cell[b-3q3nt9x3ds] {
    background: var(--hl-color-22c55e-a12);
    border-radius: 6px;
    padding: 2px 6px;
}

/* 条件欄の適用強調 */
.hl-est-applied-cond[b-3q3nt9x3ds] {
    background: var(--hl-color-22c55e-a10);
    border-radius: 6px;
    padding: 4px 6px;
    white-space: pre-line; /* \n 改行を効かせる */
}

/* =========================
   適用強調：条件OFF時の “選択行” を薄グレーに
========================= */
.hl-est-blocked-cell[b-3q3nt9x3ds] {
    background: var(--hl-color-94a3b8-a18); /* 薄グレー */
    border-radius: 6px;
    padding: 2px 6px;
}

/* 条件行：1行ずつ（①/②の別色対応） */
.hl-est-cond-line[b-3q3nt9x3ds] {
    padding: 2px 6px;
    border-radius: 6px;
    white-space: pre-line;
    margin-top: 4px;
}

/* 条件OFF時（グレー） */
.hl-est-blocked-cond[b-3q3nt9x3ds] {
    background: var(--hl-color-94a3b8-a18);
}








/* 見出し：基本の左上見出し相当（フォントサイズ/太さを合わせる） */
.hl-est-bottom-title[b-3q3nt9x3ds] {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
    margin: 0; /* ←詰める */
}

/* 金額：「採用金額」と同等の強さ */
.hl-est-bottom-amount[b-3q3nt9x3ds] {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

/* ==== 通行料：1行（左=表題 / 右=金額） ==== */
.hl-est-tollrow[b-3q3nt9x3ds] {
    display: flex;
    align-items: flex-start; /* 表題上揃え */
    justify-content: space-between;
    gap: 12px;
}

/* ==== 計算結果（結果比較） ==== */
/* 3カラム×2行、左見出しは2行span（表題は上揃え） */
.hl-est-resultgrid[b-3q3nt9x3ds] {
    display: grid;
    grid-template-columns: 90px 1fr 140px;
    grid-template-rows: auto auto;
    column-gap: 14px;
    row-gap: 6px; /* ←詰める */
    align-items: start; /* ←上揃え（重要） */
}

.hl-est-resulttitle[b-3q3nt9x3ds] {
    grid-row: 1 / span 2; /* 2行ぶん縦にまたがる */
    align-self: start; /* ←上揃え */
    font-weight: 600; /* 基本の表題と同格に寄せるなら 600 */
    font-size: 16px; /* ←「基本」と揃える */
    line-height: 1.2;
    white-space: nowrap;
    margin: 0;
}

.hl-est-rowlabel[b-3q3nt9x3ds] {
    font-size: 13px; /* 少し小さめで詰める */
    line-height: 1.2;
    white-space: nowrap;
    margin: 0;
}

.hl-est-amount[b-3q3nt9x3ds] {
    text-align: right;
    font-weight: 700;
    font-size: 18px; /* ←採用金額と揃える */
    line-height: 1.2;
    white-space: nowrap;
}

/* ==== 合計運賃 ==== */
.hl-est-totalgrid[b-3q3nt9x3ds] {
    min-height: 0;
}

/* 1行目：合計運賃（左）/ 方式（右） */
.hl-est-totalhead[b-3q3nt9x3ds] {
    display: flex;
    align-items: flex-start; /* 表題上揃え */
    justify-content: space-between;
    gap: 12px;
}

.hl-est-totalmethod[b-3q3nt9x3ds] {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    margin: 0;
    margin-right: 100px;
}

/* 2行目：金額（ちょっと大きめ） */
.hl-est-totalamount[b-3q3nt9x3ds] {
    margin-top: 6px; /* ←詰める */
    font-size: 22px;
    font-weight: 800;
    line-height: 1.1;
    white-space: nowrap;
    text-align: right;
    margin-right: 100px;
}












/* /Components/Pages/Maintenances/FreightRateManager/FareConditionCategoryEditDialog.razor.rz.scp.css */
/* =========================================================
   FareConditionCategoryEditDialog.razor.css（CSS Isolation）
   目的: inline style を撤去してクラスに集約
   ========================================================= */

.fc-w-160[b-1lewf641d3] {
    width: 160px;
}

.fc-flex-auto[b-1lewf641d3] {
    flex: 1 1 auto;
}
/* /Components/Pages/Maintenances/FreightRateManager/FareEditDialog.razor.rz.scp.css */
body[b-buhu7u5j1x] {
}

/* =========================================================
   FreightRateManager - FareEditDialog (Scroll Reset)
   対象: FareEditDialog.razor
   方針:
     - このCSS内のスクロール要素(overflow auto/scroll)を全撤去
     - 不要CSSを削除
   ========================================================= */

.hl-fe-dialog-header[b-buhu7u5j1x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 4px 8px;
}

.hl-fe-dialog-title[b-buhu7u5j1x] {
    font-weight: 700;
}


/* =========================
   ダイアログ本体（ルート）
========================= */
.hl-fare-edit-dialog[b-buhu7u5j1x] {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
}

    /* dropdownが背面に潜る対策 */
    .hl-fare-edit-dialog[b-buhu7u5j1x]  .rz-dropdown-panel {
        z-index: 30000;
    }

/* 折り返し前提 */
.hl-fe-wrap[b-buhu7u5j1x] {
    flex-wrap: wrap;
}

/* 幅ユーティリティ（このダイアログ内だけ） */
.hl-fe-w-260[b-buhu7u5j1x] {
    width: 260px;
}

.hl-fe-w-300[b-buhu7u5j1x] {
    width: 300px;
}

/* 説明欄（可変＋最小幅） */
.hl-fe-desc[b-buhu7u5j1x] {
    flex: 1 1 auto;
    min-width: 420px;
}

/* 操作エリア */
.hl-fe-actions[b-buhu7u5j1x] {
    width: 320px;
    display: flex;
    flex-direction: column;
}

.hl-fe-actions-spacer[b-buhu7u5j1x] {
    height: 22px;
}

.hl-fe-actions-inner[b-buhu7u5j1x] {
    margin-top: auto;
}

/* 削除済バッジ */
.hl-required-mark[b-buhu7u5j1x] {
    color: var(--hl-color-e53935);
    font-weight: 800;
    margin-left: 3px;
}

.hl-badge-deleted[b-buhu7u5j1x] {
    display: inline-flex;
    align-items: center;
    padding: 2px 10px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 800;
    background: var(--hl-color-f2f2f2);
    color: var(--hl-color-666);
    border: 1px solid var(--hl-color-ddd);
}

/* 条件区分：タイトル＋SelectBarは1行 */
.hl-fe-condleft[b-buhu7u5j1x] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
}

/* SelectBar：スクロールさせない（リセット） */
.hl-fe-condselect[b-buhu7u5j1x] {
    display: inline-flex;
    min-width: 0;
}

    .hl-fe-condselect[b-buhu7u5j1x]  .rz-selectbar {
        width: 100%;
        min-width: 0;
    }

    /* 各アイテムは折り返さない（見た目維持） */
    .hl-fe-condselect[b-buhu7u5j1x]  .rz-selectbar-item,
    .hl-fe-condselect[b-buhu7u5j1x]  .rz-selectbar-item span {
        white-space: nowrap;
    }

/* 中段行（.hl-fe-midrow / .hl-fe-history / .hl-fe-condcard）・条件タイトル・アイコン・履歴SelectBar は
   RadzenStack/RadzenCard/RadzenSelectBar 自体に付けておりスコープ付きCSSが効かなかったため、
   共有値は wwwroot/css/layout-utils.css、画面固有値は razor 側の Style= に移した。 */

/* =========================
   ミニ表（表示専用）
========================= */
.hl-mini-table[b-buhu7u5j1x] {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 12px;
    line-height: 1.2;
}

    .hl-mini-table td[b-buhu7u5j1x] {
        padding: 4px 6px;
        border-top: 1px solid var(--rz-base-300, var(--hl-color-e5e7eb));
        vertical-align: top;
    }

.hl-mini-range[b-buhu7u5j1x] {
    width: 70%;
    text-align: left;
    white-space: normal;
    word-break: break-word;
}

.hl-mini-price[b-buhu7u5j1x] {
    width: 30%;
    text-align: right;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.hl-mini-table tfoot td[b-buhu7u5j1x] {
    border-top: 1px solid var(--rz-base-400, var(--hl-color-d1d5db));
    padding-top: 6px;
}

.hl-mini-min-label[b-buhu7u5j1x] {
    text-align: left;
    font-weight: 700;
    white-space: nowrap;
}

.hl-mini-min-value[b-buhu7u5j1x] {
    text-align: right;
    white-space: nowrap;
}

.hl-mini-min-amount[b-buhu7u5j1x] {
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.hl-mini-min-unit[b-buhu7u5j1x] {
    margin-left: 6px;
    opacity: 0.8;
}

.hl-mini-unit[b-buhu7u5j1x] {
    margin-left: 6px;
    opacity: 0.75;
    font-size: 12px;
}

.hl-mini-none[b-buhu7u5j1x] {
    opacity: 0.75;
}

/* =========================
   中継・割増：条件入力（スクロールなし）
========================= */
.hl-relay-condtext[b-buhu7u5j1x],
.hl-surcharge-condtext[b-buhu7u5j1x] {
    font-size: 12px;
    overflow-wrap: anywhere;
}

.hl-field .hl-label[b-buhu7u5j1x] {
    font-size: 12px;
    color: var(--rz-text-secondary-color);
    margin-bottom: 4px;
    line-height: 1.1;
    white-space: nowrap;
}

.hl-relay-condinputs[b-buhu7u5j1x],
.hl-surcharge-condinputs[b-buhu7u5j1x] {
    margin-top: 10px;
    display: grid;
    gap: 10px;
    width: 100%;
    align-items: end;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
        "unit upper"
        "judge judge";
}

.hl-surcharge-condinputs[b-buhu7u5j1x] {
    grid-template-areas:
        "unit lower"
        "judge judge";
}

    .hl-relay-condinputs > *[b-buhu7u5j1x],
    .hl-surcharge-condinputs > *[b-buhu7u5j1x] {
        min-width: 0;
    }

.hl-relay-cond-unit[b-buhu7u5j1x] {
    grid-area: unit;
}

.hl-relay-cond-upper[b-buhu7u5j1x] {
    grid-area: upper;
}

.hl-relay-cond-judge[b-buhu7u5j1x] {
    grid-area: judge;
}

.hl-surcharge-cond-unit[b-buhu7u5j1x] {
    grid-area: unit;
}

.hl-surcharge-cond-lower[b-buhu7u5j1x] {
    grid-area: lower;
}

.hl-surcharge-cond-judge[b-buhu7u5j1x] {
    grid-area: judge;
}

    .hl-relay-cond-judge[b-buhu7u5j1x]  .rz-selectbar,
    .hl-surcharge-cond-judge[b-buhu7u5j1x]  .rz-selectbar {
        width: 100%;
    }

/* OFF時 */
.hl-relay-condinputs.is-off[b-buhu7u5j1x],
.hl-surcharge-condinputs.is-off[b-buhu7u5j1x] {
    grid-template-columns: 1fr;
    grid-template-areas: "unit";
}

    .hl-relay-condinputs.is-off .hl-relay-cond-upper[b-buhu7u5j1x],
    .hl-relay-condinputs.is-off .hl-relay-cond-judge[b-buhu7u5j1x],
    .hl-surcharge-condinputs.is-off .hl-surcharge-cond-lower[b-buhu7u5j1x],
    .hl-surcharge-condinputs.is-off .hl-surcharge-cond-judge[b-buhu7u5j1x] {
        display: none;
    }

.hl-relay-condhint[b-buhu7u5j1x] {
    margin-top: 6px;
    font-size: 11px;
    opacity: 0.8;
}

@media (max-width: 900px) {
    .hl-relay-condinputs[b-buhu7u5j1x] {
        grid-template-columns: 1fr;
        grid-template-areas:
            "unit"
            "upper"
            "judge";
        align-items: stretch;
    }

    .hl-surcharge-condinputs[b-buhu7u5j1x] {
        grid-template-columns: 1fr;
        grid-template-areas:
            "unit"
            "lower"
            "judge";
        align-items: stretch;
    }
}

/* =========================
   単量割増（スクロールなし）
========================= */
.hl-unitws-head[b-buhu7u5j1x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 6px;
}

.hl-unitws-grid[b-buhu7u5j1x] {
    margin-top: 8px;
    display: grid;
    gap: 10px;
    width: 100%;
    align-items: end;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    grid-template-areas:
        "base round"
        "rate rate";
}

    .hl-unitws-grid > *[b-buhu7u5j1x] {
        min-width: 0;
    }

.hl-unitws-base[b-buhu7u5j1x] {
    grid-area: base;
}

.hl-unitws-round[b-buhu7u5j1x] {
    grid-area: round;
}

.hl-unitws-rate[b-buhu7u5j1x] {
    grid-area: rate;
}

.hl-unitws-hint[b-buhu7u5j1x] {
    margin-top: 6px;
    font-size: 12px;
    opacity: 0.8;
    white-space: nowrap;
    line-height: 1.1;
    color: var(--rz-text-secondary-color);
}

@media (max-width: 900px) {
    .hl-unitws-grid[b-buhu7u5j1x] {
        grid-template-columns: 1fr;
        grid-template-areas:
            "base"
            "round"
            "rate";
        align-items: stretch;
    }
}

/* =========================
   下段：3カラム（独立スクロール撤去＝単なるレイアウト枠）
========================= */

.fare-lower-layout[b-buhu7u5j1x] {
    height: 100%;
    display: flex;
    gap: 10px;
    align-items: stretch;
    min-width: 0;
}

.fare-col[b-buhu7u5j1x] {
    height: 100%;
    min-width: 0;
    display: flex;
}

/* ★スクロールを持たせない（リセット） */
.fare-col-scroll[b-buhu7u5j1x] {
    height: 100%;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

/* 左：日付（固定幅） */
.fare-col-date[b-buhu7u5j1x] {
    flex: 0 0 220px;
}

/* 中：メイン（可変幅） */
.fare-col-main[b-buhu7u5j1x] {
    flex: 1 1 auto;
}

.fare-col-main-stack[b-buhu7u5j1x] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* 右：高速＋設定（固定幅） */
.fare-col-right[b-buhu7u5j1x] {
    flex: 0 0 280px;
}

/* エリアカード */
.fare-area[b-buhu7u5j1x] {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

    .fare-area *[b-buhu7u5j1x] {
        min-width: 0;
    }

/* 4列レイアウト */
.fare-area-body4[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr) 200px 200px;
    gap: 10px;
    align-items: start;
    min-width: 0;
}

.fare-area-col[b-buhu7u5j1x] {
    min-width: 0;
}

.fare-area-colhead[b-buhu7u5j1x] {
    display: none;
}

/* 適用ルールDropDownを短く */
.fare-applyrule-dd[b-buhu7u5j1x]  .rz-dropdown {
    width: 170px !important;
    min-width: 170px !important;
}

/* 単位ブロック */
.fare-units-stack[b-buhu7u5j1x] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.fare-unit-tablewrap[b-buhu7u5j1x] {
    flex: 1 1 auto;
    min-width: 0;
}

/* 条件カード */
.fare-condcard[b-buhu7u5j1x] {
    background: var(--rz-base-50, var(--hl-color-fafafa));
    border: 1px solid var(--rz-base-300, var(--hl-color-e5e7eb));
    border-radius: 6px;
    padding: 8px;
    min-width: 0;
}

    .fare-condcard .fare-condtitle[b-buhu7u5j1x] {
        font-weight: 800;
        font-size: 12px;
        margin-bottom: 6px;
    }

@media (max-width: 1200px) {
    .fare-area-body4[b-buhu7u5j1x] {
        grid-template-columns: 220px minmax(0, 1fr);
        grid-auto-rows: auto;
    }
}

@media (max-width: 900px) {
    .fare-area-body4[b-buhu7u5j1x] {
        grid-template-columns: 1fr;
    }
}

/* 単位行 */
.fare-unit-row[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr) 34px;
    gap: 10px;
    align-items: start;
    min-width: 0;
}

    .fare-unit-row.is-empty[b-buhu7u5j1x] {
        grid-template-columns: 62px 34px minmax(0, 1fr);
        gap: 6px;
    }

.fare-unit-name[b-buhu7u5j1x] {
    font-weight: 900;
    font-size: 14px;
    line-height: 1.2;
    padding-top: 2px;
    white-space: nowrap;
}

.fare-unit-btn[b-buhu7u5j1x] {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}

.fare-unit-btn-inline[b-buhu7u5j1x] {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}

.fare-unit-emptyhint[b-buhu7u5j1x] {
    font-size: 12px;
    color: var(--rz-text-secondary-color);
    padding-top: 3px;
    white-space: nowrap;
    opacity: 0.9;
}

/* =========================
   チャーター表示（見切れは維持：スクロールではない）
========================= */
.hl-charter-selected[b-buhu7u5j1x] {
    background: var(--rz-base-50, var(--hl-color-fafafa));
    border: 1px solid var(--rz-base-300, var(--hl-color-e5e7eb));
    border-radius: 8px;
    padding: 10px;
    font-size: 12px;
    line-height: 1.15;
}

.hl-charter-row[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: 340px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.hl-left[b-buhu7u5j1x], .hl-right[b-buhu7u5j1x] {
    min-width: 0;
}

.hl-left[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    grid-template-areas:
        "badge title"
        "badge desc"
        "badge term";
    gap: 6px 10px;
}

.hl-right[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    min-width: 0;
}

.hl-badge[b-buhu7u5j1x] {
    grid-area: badge;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding-top: 2px;
    width: 60px;
}

.hl-title[b-buhu7u5j1x] {
    grid-area: title;
    font-weight: 800;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hl-desc[b-buhu7u5j1x] {
    grid-area: desc;
    color: var(--rz-text-secondary-color);
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.hl-desc-empty[b-buhu7u5j1x] {
    opacity: 0.6;
}

.hl-term[b-buhu7u5j1x] {
    grid-area: term;
    font-size: 12px;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hl-apply[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 2px 8px;
    align-items: baseline;
    margin-top: 2px;
}

.hl-apply-label[b-buhu7u5j1x], .hl-next-label[b-buhu7u5j1x] {
    font-size: 11px;
}

.hl-apply-value[b-buhu7u5j1x], .hl-next-value[b-buhu7u5j1x] {
    font-weight: 800;
    font-size: 13px;
}

.hl-next[b-buhu7u5j1x] {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 2px 8px;
    margin-top: 4px;
}

.hl-detail[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: minmax(120px, 1.2fr) minmax(72px, 0.8fr) minmax(64px, 0.7fr) minmax(84px, 0.9fr);
    column-gap: 8px;
    row-gap: 4px;
    align-items: center;
    min-width: 0;
}

.hl-dh[b-buhu7u5j1x] {
    font-size: 12px;
    font-weight: 700;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

.hl-cell[b-buhu7u5j1x] {
    font-size: 13.5px;
    line-height: 1.25;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hl-detail > .hl-cell:nth-child(4n + 1)[b-buhu7u5j1x] {
    font-weight: 700;
    text-align: left;
}

.hl-detail > .hl-cell:nth-child(4n + 2)[b-buhu7u5j1x] {
    text-align: right;
    font-variant-numeric: tabular-nums;
    font-weight: 400;
}

.hl-detail > .hl-cell:nth-child(4n + 3)[b-buhu7u5j1x] {
    text-align: left;
}

.hl-detail > .hl-cell:nth-child(4n + 4)[b-buhu7u5j1x] {
    text-align: right;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.hl-detail > .hl-dh:nth-child(4n + 2)[b-buhu7u5j1x],
.hl-detail > .hl-dh:nth-child(4n + 4)[b-buhu7u5j1x] {
    text-align: right;
}

.hl-empty[b-buhu7u5j1x] {
    grid-column: 1 / -1;
    font-size: 11px;
    opacity: 0.8;
    text-align: right;
}

@media (max-width: 1100px) {
    .hl-charter-row[b-buhu7u5j1x] {
        grid-template-columns: 1fr;
    }

    .hl-apply[b-buhu7u5j1x] {
        grid-template-columns: 70px 1fr;
    }

    .hl-detail[b-buhu7u5j1x] {
        grid-template-columns: 140px 80px 80px 100px;
    }
}

/* 2段グリッド：
   [担当区分][タイトル(伸びる)][開始日][終了日]
   [スペース][説明(伸びる)][復活削除][保存]
*/
.hl-fe-grid[b-buhu7u5j1x] {
    display: grid;
    grid-template-columns: 220px 220px 1fr 160px 160px;
    grid-template-rows: auto auto;
    gap: 10px 12px; /* row-gap, col-gap */
    align-items: end;
}

/* 各セル */
.hl-fe-cell[b-buhu7u5j1x] {
    min-width: 0; /* これが無いと 1fr が縮まない/はみ出すことがある */
}

/* タイトル/説明は伸びる列のセル。見た目調整があればここで */
.hl-fe-title[b-buhu7u5j1x], .hl-fe-desc[b-buhu7u5j1x] {
    min-width: 0;
}

.hl-fe-title[b-buhu7u5j1x] {
    grid-column: 2 / 4;
}

.hl-fe-desc[b-buhu7u5j1x] {
    grid-column: 3 / 4;
}

/* 2段目左：空白 */
.hl-fe-spacer[b-buhu7u5j1x] {
    /* 何も置かない */
}

/* 2段目：復活削除 は右寄せにしたければ */
.hl-fe-actions[b-buhu7u5j1x] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
    min-height: 36px;
}

/* 2段目：保存ボタンは右端固定 */
.hl-fe-save[b-buhu7u5j1x] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

/* RadzenTextBox/DatePicker の幅保険 */
.hl-fe-grid[b-buhu7u5j1x]  .rz-textbox,
.hl-fe-grid[b-buhu7u5j1x]  .rz-datepicker {
    width: 100%;
    box-sizing: border-box;
}

/* 画面が狭いときは2段 → 縦積みに落とす（任意） */
@media (max-width: 900px) {
    .hl-fe-grid[b-buhu7u5j1x] {
        grid-template-columns: 1fr;
    }

    .hl-fe-actions[b-buhu7u5j1x], .hl-fe-save[b-buhu7u5j1x] {
        justify-content: flex-start;
    }
}



.hl-audit[b-buhu7u5j1x] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.hl-audit-row[b-buhu7u5j1x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.hl-audit-label[b-buhu7u5j1x] {
    min-width: 64px; /* ラベル幅を固定して詰める */
    font-size: 12px;
    color: var(--rz-text-secondary-color);
    white-space: nowrap;
}

/* =========================================================
   デバッグ表示用（元 inline style）
   ========================================================= */

.hl-fe-nowrap[b-buhu7u5j1x] {
    white-space: nowrap;
}

/* デバッグテーブル（元: style="width:100%;"） */
.hl-fe-table-full[b-buhu7u5j1x] {
    width: 100%;
}

.hl-fe-th-110[b-buhu7u5j1x] {
    width: 110px;
}

.hl-fe-th-260[b-buhu7u5j1x] {
    width: 260px;
}

.hl-fe-th-130[b-buhu7u5j1x] {
    width: 130px;
}

.hl-fe-th-90[b-buhu7u5j1x] {
    width: 90px;
}

/* 簡易JSONダンプ（元: style="white-space:pre-wrap; font-size:12px; margin:0;"） */
.hl-fe-pre-dump[b-buhu7u5j1x] {
    white-space: pre-wrap;
    font-size: 12px;
    margin: 0;
}
/* /Components/Pages/Maintenances/FreightRateManager/FareGrid.razor.rz.scp.css */
body[b-cjdozy77qf] {
}

/* =========================
   重要：Template(td)の中で右端が消えないように
   横スクロールは外側ラッパーに持たせる
   ========================= */
.fare-row-wrap[b-cjdozy77qf] {
    overflow-x: auto; /* 行全体の横スクロール */
    overflow-y: hidden;
}

/* Fare row（1行）
   - 最低幅 + 余裕があれば伸びる
   - 狭ければ fare-row-wrap が横スクロール
*/
.fare-row[b-cjdozy77qf] {
    display: inline-grid; /* ★ここが肝：td内でも “内容幅” を保てる */
    grid-template-columns: minmax(72px, 72px) /* badge */
    minmax(200px, 200px) /* info */
    minmax(560px, 4fr) /* conditions */
    minmax(120px,120px) /* pickups */
    minmax(120px,120px); /* deliveries */
    gap: 6px;
    padding: 6px 8px;
    align-items: stretch;
    min-width: max-content; /* ★5列の合計が最小幅を下回らない */
}

.fare-col[b-cjdozy77qf] {
    min-width: 0;
}

    /* ① バッジ */
    .fare-col.badge[b-cjdozy77qf] {
        display: flex;
        justify-content: left;
        align-items: flex-start;
        padding-left: 2px;
        padding-right: 4px;
    }

        .fare-col.badge[b-cjdozy77qf]  .rz-badge {
            font-size: 0.70rem;
            padding: 2px 6px;
            border-radius: 6px;
        }

    /* ② 運賃情報 */
    .fare-col.info[b-cjdozy77qf] {
        display: flex;
        flex-direction: column;
        gap: 2px;
    }

.fare-title[b-cjdozy77qf], .fare-desc[b-cjdozy77qf], .fare-billing-posting-date-category[b-cjdozy77qf], .fare-period[b-cjdozy77qf] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fare-title[b-cjdozy77qf] {
    font-weight: 800;
}

.fare-desc[b-cjdozy77qf] {
    font-size: 0.78rem;
    color: var(--rz-text-secondary);
}

.fare-period[b-cjdozy77qf] {
    font-size: 0.72rem;
    color: var(--rz-text-secondary);
}

.fare-billing-posting-date-category[b-cjdozy77qf] {
    font-size: 0.72rem;
    color: var(--rz-text-secondary);
}

/* ③ 条件区分エリア */
.fare-col.conditions[b-cjdozy77qf] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

/* 条件区分 1行（必ず横並び・行内スクロール禁止） */
.cc-row[b-cjdozy77qf] {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 6px;
    padding: 4px 0;
    border-top: 1px solid var(--rz-border-normal);
    overflow: hidden; /* ★cc-row単体の横スクロールは禁止 */
}

    .cc-row:first-child[b-cjdozy77qf] {
        border-top: none;
    }

/* 条件区分の境界線（複数時に視認性を出す） */
.fare-col.conditions .cc-row[b-cjdozy77qf] {
    border-top: 1px solid var(--hl-color-dcdfe3); /* ← rz-border-normal より少し薄め */
    padding-top: 6px;
    margin-top: 4px;
}

    /* 先頭行は線を出さない */
    .fare-col.conditions .cc-row:first-child[b-cjdozy77qf] {
        border-top: none;
        padding-top: 0;
        margin-top: 0;
    }




.cc-cell[b-cjdozy77qf] {
    min-width: 0;
}

/* 左①②（固定） */
.cc-name[b-cjdozy77qf] {
    flex: 0 0 96px;
    min-width: 96px;
    font-weight: 800;
}

.cc-dates[b-cjdozy77qf] {
    flex: 0 0 84px;
    min-width: 84px;
}
/* yyyy/MM/dd ギリ */

/* 右側カード（固定） */
.cc-base[b-cjdozy77qf] {
    flex: 0 0 180px;
    min-width: 180px;
}

.cc-relay[b-cjdozy77qf] {
    flex: 0 0 180px;
    min-width: 180px;
}

.cc-surcharge[b-cjdozy77qf] {
    flex: 0 0 180px;
    min-width: 180px;
}

.cc-charter[b-cjdozy77qf] {
    flex: 0 0 200px;
    min-width: 200px;
    max-width: 200px;
}

.cc-title[b-cjdozy77qf] {
    font-size: 0.74rem;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cc-status[b-cjdozy77qf] {
    font-size: 0.68rem;
    line-height: 1.1;
}

    .cc-status.active[b-cjdozy77qf] {
        color: var(--rz-success);
    }

    .cc-status.inactive[b-cjdozy77qf] {
        color: var(--rz-text-secondary);
    }

    .cc-status.ended[b-cjdozy77qf] {
        color: var(--hl-color-b91c1c);
        font-weight: 800;
    }

.date-stack[b-cjdozy77qf] {
    display: grid;
    grid-auto-rows: min-content;
    row-gap: 1px;
}

.date-label[b-cjdozy77qf] {
    font-size: 0.62rem;
    line-height: 1.05;
    color: var(--rz-text-secondary);
    white-space: nowrap;
}

.date-value[b-cjdozy77qf] {
    font-size: 0.68rem;
    line-height: 1.05;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.date-muted[b-cjdozy77qf] {
    font-size: 0.68rem;
    line-height: 1.05;
    color: var(--rz-text-secondary);
    white-space: nowrap;
}

/* 共通枠 */
.base-area[b-cjdozy77qf],
.relay-area[b-cjdozy77qf] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 4px 6px;
    border: 1px solid var(--rz-border-normal);
    border-radius: 6px;
    min-width: 0;
}

.base-head[b-cjdozy77qf] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    font-size: 0.70rem;
    line-height: 1.05;
}

.base-title[b-cjdozy77qf] {
    font-weight: 800;
    white-space: nowrap;
}

.base-rule[b-cjdozy77qf] {
    flex: 1;
    text-align: right;
    color: var(--rz-text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.base-muted[b-cjdozy77qf] {
    font-size: 0.68rem;
    color: var(--rz-text-secondary);
}

/* 単価表 */
.base-units[b-cjdozy77qf] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.unit-row[b-cjdozy77qf] {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 8px;
    align-items: start;
}

.unit-name[b-cjdozy77qf] {
    font-weight: 700;
    font-size: 0.70rem;
    line-height: 1.05;
    white-space: nowrap;
}

.unit-prices[b-cjdozy77qf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.price-row[b-cjdozy77qf] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px;
    font-size: 0.68rem;
    line-height: 1.05;
}

.price-range[b-cjdozy77qf] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.price-value[b-cjdozy77qf] {
    white-space: nowrap;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.price-per[b-cjdozy77qf] {
    padding: 0 2px;
    color: var(--rz-text-secondary);
}

.price-row.muted[b-cjdozy77qf] {
    color: var(--rz-text-secondary);
}

.min-row[b-cjdozy77qf] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px;
    font-size: 0.68rem;
    line-height: 1.05;
    margin-top: 2px;
}

.min-label[b-cjdozy77qf] {
    color: var(--rz-text-secondary);
    white-space: nowrap;
}

.min-value[b-cjdozy77qf] {
    white-space: nowrap;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

/* 中継 下段 */
.relay-foot[b-cjdozy77qf] {
    margin-top: 4px;
    padding-top: 3px;
    border-top: 1px dashed var(--rz-border-normal);
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.relay-condline[b-cjdozy77qf] {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 6px;
    font-size: 0.66rem;
    line-height: 1.05;
}

.relay-condlabel[b-cjdozy77qf] {
    color: var(--rz-text-secondary);
    white-space: nowrap;
}

.relay-condvalue[b-cjdozy77qf] {
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-variant-numeric: tabular-nums;
    text-align: right;
}

/* チャーター表 */
.charter-table[b-cjdozy77qf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: 4px;
}

.charter-row[b-cjdozy77qf] {
    display: grid;
    grid-template-columns: 32px 1fr auto;
    gap: 6px;
    font-size: 0.72rem;
    line-height: 1.1;
    white-space: nowrap;
}

.charter-vc[b-cjdozy77qf] {
    width: 32px;
    min-width: 32px;
    max-width: 32px;
    text-align: center;
    font-weight: 700;
}

.charter-range[b-cjdozy77qf] {
    overflow: hidden;
    text-overflow: ellipsis;
}

.charter-price[b-cjdozy77qf] {
    font-variant-numeric: tabular-nums;
    text-align: right;
}

/* ④⑤ 集荷先/配送先：行高を増やさない（中身は absolute で逃がす） */
.fare-col.pickups[b-cjdozy77qf],
.fare-col.deliveries[b-cjdozy77qf] {
    position: relative; /* absolute の基準 */
    min-height: 0; /* flex/grid で潰れないための必須 */
}

    /* side-box を absolute 化して “高さ計算に参加させない” */
    .fare-col.pickups .side-box[b-cjdozy77qf],
    .fare-col.deliveries .side-box[b-cjdozy77qf] {
        position: absolute;
        inset: 0; /* 上下左右 0 でセルいっぱい */
        min-height: 0;
        display: flex;
        flex-direction: column;
    }

.side-box[b-cjdozy77qf] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    border: 1px solid var(--rz-border-normal);
    border-radius: 6px;
    padding: 4px 6px;
}

.side-title[b-cjdozy77qf] {
    font-weight: 800;
    font-size: 0.70rem;
    white-space: nowrap;
    margin-bottom: 2px;
}

.side-scroll[b-cjdozy77qf] {
    flex: 1 1 auto;
    min-height: 0; /* ★これがないと最後が見切れたりする */
    overflow-y: auto; /* ★縦スクロール */
    overflow-x: hidden;
    padding-right: 2px;
}

.side-muted[b-cjdozy77qf] {
    font-size: 0.70rem;
    color: var(--rz-text-secondary);
}

.side-item[b-cjdozy77qf] {
    font-size: 0.72rem;
    line-height: 1.15;
    padding: 2px 0;
    border-top: 1px dashed var(--rz-border-normal);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

    .side-item:first-child[b-cjdozy77qf] {
        border-top: none;
    }

/* 割増（単量割増など）の Key/Value 行：他の base-head/price-row と同じ粒度に */
.base-kv[b-cjdozy77qf] {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 6px;
    align-items: baseline;
    font-size: 0.68rem; /* price-row と同等 */
    line-height: 1.05;
}

    .base-kv .kv-label[b-cjdozy77qf] {
        color: var(--rz-text-secondary);
        white-space: nowrap;
    }

    .base-kv .kv-value[b-cjdozy77qf] {
        text-align: right;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        font-variant-numeric: tabular-nums;
    }


/* 次回変更あり：条件区分行を軽く強調（うるさくない程度） */
.cc-row.cc-has-next[b-cjdozy77qf] {
    border-left: 4px solid var(--hl-color-f59e0b); /* amber */
    padding-left: 6px;
    border-radius: 6px;
    background: linear-gradient(90deg, var(--hl-color-f59e0b-a10), transparent 45%);
}

/* 次回変更：小さめのバッジ＋日数 */
.date-next[b-cjdozy77qf] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-top: 1px;
}

.date-next-badge[b-cjdozy77qf] {
    display: inline-block;
    font-size: 0.62rem;
    font-weight: 900;
    padding: 1px 6px;
    border-radius: 999px;
    background: var(--hl-color-f59e0b-a18);
    border: 1px solid var(--hl-color-f59e0b-a35);
    color: var(--hl-color-92400e);
    white-space: nowrap;
}

.date-next-sub[b-cjdozy77qf] {
    font-size: 0.62rem;
    font-weight: 800;
    color: var(--hl-color-6b7280);
    white-space: nowrap;
}

/* 次回変更日（yyyy/MM/dd） */
.date-next-value[b-cjdozy77qf] {
    font-size: 0.68rem;
    line-height: 1.05;
    font-weight: 900; /* ここは少し強め */
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.date-ended-value[b-cjdozy77qf] {
    font-size: 0.68rem;
    line-height: 1.05;
    font-weight: 900;
    color: var(--hl-color-b91c1c);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.fare-badges[b-cjdozy77qf] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: flex-start;
}

.cc-row.cc-ended[b-cjdozy77qf] {
    border-left: 4px solid var(--hl-color-dc2626);
    padding-left: 6px;
    border-radius: 6px;
    background: linear-gradient(90deg, var(--hl-color-dc2626-a10), transparent 45%);
}




/* /Components/Pages/Maintenances/FreightRateManager/FarePickerDialog.razor.rz.scp.css */
/* =========================================================
   FarePickerDialog.razor.css（CSS Isolation）
   目的: inline style を撤去してクラスに集約
   ========================================================= */

.fp-toolbar-row[b-m1erujfgua] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.fp-title[b-m1erujfgua] {
    font-weight: 800;
    white-space: nowrap;
}

.fp-search-center[b-m1erujfgua] {
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}
/* /Components/Pages/Maintenances/FreightRateManager/FareRateEditDialog.razor.rz.scp.css */
/* =========================================================
   FareRateEditDialog.razor.css（CSS Isolation）
   目的: inline style を撤去してクラスに集約
   ========================================================= */

.fre-spacer-60[b-6bni7l6ch9] {
    width: 60px;
}

.fre-unit-label[b-6bni7l6ch9] {
    min-width: 70px;
    padding-bottom: 6px;
}

.fre-check-row[b-6bni7l6ch9] {
    padding-bottom: 6px;
}
/* /Components/Pages/Maintenances/FreightRateManager/Home.razor.rz.scp.css */
body[b-tc0uoh0u23] {
}

/* =========================================================
   inline style 撤去分（元 Home.razor の style="..."）
   ========================================================= */

.hd-filter-520[b-tc0uoh0u23] {
    min-width: 520px;
}

.hd-filter-240[b-tc0uoh0u23] {
    min-width: 240px;
}

.hd-filter-420[b-tc0uoh0u23] {
    min-width: 420px;
}

.hd-flex-auto[b-tc0uoh0u23] {
    flex: 1 1 auto;
    min-width: 0;
}

.hd-full-width[b-tc0uoh0u23] {
    width: 100%;
}

.hd-label-70[b-tc0uoh0u23] {
    min-width: 70px;
}

.hd-ellipsis[b-tc0uoh0u23] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hd-filter-220[b-tc0uoh0u23] {
    min-width: 220px;
}

.hd-loading-row[b-tc0uoh0u23] {
    display: flex;
    justify-content: center;
    padding: 60px 0;
}

.hd-toolbar-row[b-tc0uoh0u23] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.hd-toolbar-title[b-tc0uoh0u23] {
    font-weight: 800;
    white-space: nowrap;
}

.hd-search-center[b-tc0uoh0u23] {
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}

.hd-search-center-simple[b-tc0uoh0u23] {
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
}

.hd-search-240[b-tc0uoh0u23] {
    width: 240px;
}

.hd-search-320[b-tc0uoh0u23] {
    width: 320px;
}

.hd-btn-row[b-tc0uoh0u23] {
    display: flex;
    gap: 8px;
}

/* =========================================================
   Home Tabs: タブ側はスクロールさせない（スクロールはGrid側）
   ========================================================= */

.hl-home-tabs[b-tc0uoh0u23] {
    height: calc(100vh - 210px);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

    /* RadzenTabs 自体を伸ばす */
    .hl-home-tabs[b-tc0uoh0u23]  .rz-tabview {
        flex: 1 1 auto;
        min-height: 0;
        display: flex;
        flex-direction: column;
    }

    /* パネル領域（タブ本文側）はスクロール禁止 */
    .hl-home-tabs[b-tc0uoh0u23]  .rz-tabview-panels {
        flex: 1 1 auto;
        min-height: 0;
        overflow: hidden;
    }

    /* 各タブ本文も高さを受け取れるように */
    .hl-home-tabs[b-tc0uoh0u23]  .rz-tabview-panel {
        height: 100%;
        min-height: 0;
    }

/* タブ内：ツールバー + Grid領域 の縦レイアウト */
.hl-tab-body[b-tc0uoh0u23] {
    position: relative; /* 読み込み中の重ね表示（.hl-positioning-overlay）の基準 */
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

/* ①の読み込み中表示（データ取得中と、URL指定の該当行の選択・スクロール中に表を覆う）。
   padding を .hl-tab-body に合わせ、②③の .hd-loading-row と同じ位置にスピナーを出す */
.hl-positioning-overlay[b-tc0uoh0u23] {
    position: absolute;
    inset: 0;
    z-index: 10;
    padding: inherit;
    background: var(--rz-base-background-color, #fff);
}

/* ★Grid領域：ここが “残り全部” を取る。Tab側スクロールは禁止。 */
.hl-tab-content[b-tc0uoh0u23] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
}

/* 横はみ出し保険 */
.hl-home-tabs[b-tc0uoh0u23],
.hl-home-tabs[b-tc0uoh0u23]  .rz-tabview,
.hl-home-tabs[b-tc0uoh0u23]  .rz-tabview-panels {
    max-width: 100%;
    overflow-x: hidden;
}


/* /Components/Pages/Maintenances/FreightRateManager/OperatorSelectionDialog.razor.rz.scp.css */
/* =========================================================
   OperatorSelectionDialog.razor.css（CSS Isolation）
   目的: inline style を撤去してクラスに集約
   ========================================================= */

.os-root[b-4kdtdc5whx] {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.os-footer[b-4kdtdc5whx] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}
/* /Components/Pages/Maintenances/Masters/ClientUserEditDialog.razor.rz.scp.css */
.cued-related-heading[b-0htj8cku5a] {
    margin-bottom: 4px;
}
/* /Components/Pages/Maintenances/Masters/ClientUserIndex.razor.rz.scp.css */
/* このファイルは使用していません。
   旧cui-*クラスはRadzenCard/RadzenDataGrid（子コンポーネント）に適用しており、
   Blazorのスコープ付きCSSは子コンポーネントのルート要素には効かないため常に無効だった
   （グリッドの高さが確保されずページが縦に伸び、水平スクロールバーが画面外に出る原因）。
   実体を持つ同名の値は wwwroot/css/layout-utils.css の .hl-index-card-tall / .hl-fill-grid
   （グローバルCSSのため子コンポーネントにも効く）に統合済み。2026-09-12。 */
/* /Components/Pages/Maintenances/Masters/Index.razor.rz.scp.css */
.section-title[b-9i5uy78mzd] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--hl-color-374151);
    margin-bottom: 10px;
}

.tile-title[b-9i5uy78mzd] {
    font-weight: 700;
    color: var(--hl-color-1f2937);
    display: flex;
    align-items: center;
}

.tile-description[b-9i5uy78mzd] {
    color: var(--hl-color-64748b);
    font-size: 0.84rem;
    min-height: 34px;
}
/* /Components/Pages/Maintenances/Masters/RelayCompanyEditDialog.razor.rz.scp.css */
.rce-wrapper[b-2q13p4in49] {
    padding: 1rem;
    overflow-y: auto;
    max-height: 80vh;
}

.rce-footer[b-2q13p4in49] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    margin-top: 1.25rem;
}
/* /Components/Pages/Maintenances/Masters/RelayCompanyIndex.razor.rz.scp.css */
.rci-toolbar[b-u25gy2b3ae] {
    padding: 0.25rem 0.5rem 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
/* /Components/Pages/Schedules/EditDialog.razor.rz.scp.css */
body[b-8s5dtsh62a] {
}

/* =========================================
   Schedule EditDialog (final clean)
========================================= */

/* ヘッダー右側のボタン列 */
.hl-sch-ed-actions[b-8s5dtsh62a] {
    gap: 8px;
}

/* 終日行・既読行（ラベル横のスイッチ/チェックボックス列） */
.hl-ed-allday-row[b-8s5dtsh62a] {
    gap: 8px;
    height: 32px;
}

.hl-ed-read-row[b-8s5dtsh62a] {
    gap: 10px;
    height: 32px;
}

/* span3用（インラインの grid-column を減らしてCSSに寄せる） */
.hl-sch-ed-span3[b-8s5dtsh62a] {
    grid-column: 1 / span 3;
    min-width: 0;
}

/* PC: row2 wrapperは“透明化”して親gridを壊さない */
.hl-sch-ed-row2[b-8s5dtsh62a] {
    display: contents;
}

/* PC: 指定の並び */
.hl-ed-startdate[b-8s5dtsh62a] {
    grid-column: 1;
    grid-row: 2;
}

.hl-ed-starttime[b-8s5dtsh62a] {
    grid-column: 2;
    grid-row: 2;
}

.hl-ed-allday[b-8s5dtsh62a] {
    grid-column: 3;
    grid-row: 2;
    align-self: end;
}

.hl-ed-enddate[b-8s5dtsh62a] {
    grid-column: 1;
    grid-row: 3;
}

.hl-ed-endtime[b-8s5dtsh62a] {
    grid-column: 2;
    grid-row: 3;
}

/* はみ出し保険 */
.hl-sch-ed-grid[b-8s5dtsh62a] {
    display: grid;
    grid-template-columns: 1fr 1.2fr 160px;
    gap: 10px 14px;
    align-items: end;
    min-width: 0;
}

    .hl-sch-ed-grid > div[b-8s5dtsh62a] {
        min-width: 0;
    }


/* =========================================
   Mobile
========================================= */
@media (max-width: 768px) {

    /* Header sticky */
    .hl-sch-ed-header[b-8s5dtsh62a] {
        position: sticky;
        top: 0;
        z-index: 10;
        background: var(--rz-base-background-color);
        padding: 8px 0;
        border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
        /* 見た目 */
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .hl-sch-ed-actions[b-8s5dtsh62a] {
        width: 100%;
        justify-content: flex-end;
        flex-wrap: wrap;
    }

    /* メインは1列化（インラインを確実に潰す） */
    .hl-sch-ed-grid[b-8s5dtsh62a] {
        grid-template-columns: 1fr !important;
    }

    /* span3解除（1列化で崩れないように） */
    .hl-sch-ed-span3[b-8s5dtsh62a] {
        grid-column: auto;
    }

    /* row2 wrapperをスマホでは“2列グリッド”として復活 */
    .hl-sch-ed-row2[b-8s5dtsh62a] {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 10px 14px;
        align-items: end;
        grid-column: 1 / -1;
    }

    /* かなり狭い端末の保険 */
    @media (max-width: 380px) {
        .hl-sch-ed-row2[b-8s5dtsh62a] {
            grid-template-columns: 1fr;
        }
    }

    /* 開始/終了/終日は、スマホでは通常フローに戻す（縦崩壊防止） */
    .hl-ed-startdate[b-8s5dtsh62a],
    .hl-ed-starttime[b-8s5dtsh62a],
    .hl-ed-allday[b-8s5dtsh62a],
    .hl-ed-enddate[b-8s5dtsh62a],
    .hl-ed-endtime[b-8s5dtsh62a] {
        grid-column: auto !important;
        grid-row: auto !important;
    }

    /* 内容(TextArea)は可変 */
    .hl-sch-ed-body[b-8s5dtsh62a]  textarea,
    .hl-sch-ed-body[b-8s5dtsh62a]  .rz-textarea {
        height: auto !important;
        min-height: 140px;
    }
}
/* /Components/Pages/Schedules/EmployeeScheduleList.razor.rz.scp.css */
.hl-esl-root[b-cnro1dxx56] {
    height: calc(100vh - 85px);
    min-height: 640px;
}

.hl-esl-toolbar[b-cnro1dxx56] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.hl-esl-nav[b-cnro1dxx56] {
    display: flex;
    gap: 8px;
}

.hl-esl-filters[b-cnro1dxx56] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    align-items: center;
}

.hl-esl-filter-desktop[b-cnro1dxx56] {
    display: block;
}

.hl-esl-filter-mobile[b-cnro1dxx56] {
    display: none;
    gap: 4px;
    flex-wrap: wrap;
    align-items: center;
}

/* テキスト付きピルボタン（スマホ用フィルター） */
.hl-esl-filter-iconbtn[b-cnro1dxx56] {
    min-width: 28px;
    height: 24px;
    border-radius: 12px;
    border: 2px solid var(--filter-color, var(--hl-color-64748b));
    background: transparent;
    cursor: pointer;
    padding: 0 5px;
    flex-shrink: 0;
    transition: background 0.15s, color 0.15s;
    font-size: 11px;
    font-weight: 700;
    color: var(--filter-color, var(--hl-color-64748b));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.hl-esl-filter-iconbtn.is-active[b-cnro1dxx56] {
    background: var(--filter-color, var(--hl-color-64748b));
    color: var(--hl-color-ffffff);
}

.hl-esl-period[b-cnro1dxx56] {
    min-width: 0;
}

.hl-esl-period-main[b-cnro1dxx56] {
    font-weight: 700;
    text-align: right;
}

.hl-esl-period-sub[b-cnro1dxx56] {
    font-size: 12px;
    color: var(--hl-color-64748b);
    text-align: right;
}

.hl-esl-loading[b-cnro1dxx56] {
    padding: 20px;
    color: var(--hl-color-64748b);
}

.hl-esl-table-host[b-cnro1dxx56] {
    position: relative;
}

.hl-esl-table-wrap[b-cnro1dxx56] {
    position: relative;
    isolation: isolate;
    border: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    border-radius: 8px;
    overflow: auto;
    max-height: calc(100vh - 180px);
}

.hl-esl-loading-overlay[b-cnro1dxx56] {
    position: absolute;
    inset: 0;
    background: var(--hl-color-ffffff-a58);
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.hl-esl-header[b-cnro1dxx56],
.hl-esl-row[b-cnro1dxx56] {
    display: grid;
    grid-template-columns: 220px minmax(900px, 1fr) 44px;
    align-items: stretch;
}

.hl-esl-header[b-cnro1dxx56] {
    position: sticky;
    top: 0;
    z-index: 30;
    background: var(--hl-color-f8fafc);
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
}

.hl-esl-row[b-cnro1dxx56] {
    position: relative;
    z-index: 1;
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
}

.hl-esl-col-employee[b-cnro1dxx56],
.hl-esl-col-detail[b-cnro1dxx56] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border-right: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    white-space: nowrap;
}

.hl-esl-col-employee[b-cnro1dxx56] {
    justify-content: flex-start;
    font-weight: 600;
}

.hl-esl-col-days[b-cnro1dxx56] {
    min-width: 900px;
}

.hl-esl-header .hl-esl-col-days[b-cnro1dxx56] {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
}

.hl-esl-header .hl-esl-col-employee[b-cnro1dxx56],
.hl-esl-header .hl-esl-col-days[b-cnro1dxx56],
.hl-esl-header .hl-esl-col-detail[b-cnro1dxx56] {
    position: relative;
    z-index: 31;
    background: var(--hl-color-f8fafc);
}

.hl-esl-day[b-cnro1dxx56] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 4px;
    border-right: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    font-size: 12px;
    font-weight: 700;
}

.hl-esl-day:last-child[b-cnro1dxx56] {
    border-right: none;
}

.hl-esl-day.is-today[b-cnro1dxx56] {
    background: var(--hl-color-fff7cc);
    color: var(--hl-color-7c2d12);
    box-shadow: inset 0 -2px 0 var(--hl-color-f59e0b);
}

.hl-esl-gantt[b-cnro1dxx56] {
    position: relative;
    height: 48px;
    background:
        repeating-linear-gradient(
            to right,
            var(--hl-color-94a3b8-a14) 0,
            var(--hl-color-94a3b8-a14) calc(100% / 384),
            transparent calc(100% / 384),
            transparent calc(200% / 384)
        ),
        repeating-linear-gradient(
            to right,
            var(--hl-color-94a3b8-a35) 0,
            var(--hl-color-94a3b8-a35) 1px,
            transparent 1px,
            transparent calc(100% / 8)
        );
}

.hl-esl-click-grid[b-cnro1dxx56] {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    z-index: 0;
}

.hl-esl-day-hit[b-cnro1dxx56] {
    border: none;
    background: transparent;
    padding: 0;
    margin: 0;
    cursor: pointer;
}

.hl-esl-gantt.has-today[b-cnro1dxx56]::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(var(--today-day-index) * (100% / 8));
    width: calc(100% / 8);
    background: var(--hl-color-f59e0b-a14);
    pointer-events: none;
    z-index: 1;
}

.hl-esl-bar[b-cnro1dxx56] {
    position: absolute;
    top: 8px;
    height: 32px;
    border-radius: 6px;
    border: 1px solid var(--hl-color-64748b-a45);
    padding: 0 8px;
    display: flex;
    align-items: center;
    overflow: hidden;
    min-width: 2px;
    z-index: 2;
}

.hl-esl-bar.is-editable[b-cnro1dxx56] {
    cursor: pointer;
}

.hl-esl-bar.is-readonly[b-cnro1dxx56] {
    cursor: default;
}

.hl-esl-bar-text[b-cnro1dxx56] {
    font-size: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hl-esl-detail-link[b-cnro1dxx56] {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    color: var(--hl-color-0f766e);
    text-decoration: none;
    background: var(--hl-color-e6f4f1);
    font-size: 16px;
}

.hl-esl-detail-link[b-cnro1dxx56]  .rz-icon {
    font-size: 14px;
    line-height: 1;
}

.hl-esl-detail-link:hover[b-cnro1dxx56],
.hl-esl-detail-link:focus-visible[b-cnro1dxx56] {
    background: var(--hl-color-d6eeea);
    outline: none;
}

@media (max-width: 900px) {
    .hl-esl-header[b-cnro1dxx56],
    .hl-esl-row[b-cnro1dxx56] {
        grid-template-columns: 160px minmax(720px, 1fr) 40px;
    }
}

@media (max-width: 768px) {
    .hl-esl-root[b-cnro1dxx56] {
        height: auto;
        min-height: 0;
    }

    /* ツールバーを横一列に（折り返しあり） */
    .hl-esl-toolbar[b-cnro1dxx56] {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        gap: 4px 6px;
    }

    /* ナビボタン：コンパクトにアイコンのみ */
    .hl-esl-nav[b-cnro1dxx56] {
        flex: 0 0 auto;
        display: flex;
        gap: 4px;
        width: auto;
    }

    .hl-esl-nav[b-cnro1dxx56]  .rz-button-text {
        display: none;
    }

    /* フィルターエリア */
    .hl-esl-filters[b-cnro1dxx56] {
        flex: 0 0 auto;
        flex-direction: row;
        align-items: center;
        gap: 4px;
        width: auto;
    }

    .hl-esl-filter-desktop[b-cnro1dxx56] {
        display: none;
    }

    .hl-esl-filter-mobile[b-cnro1dxx56] {
        display: flex !important;
    }

    /* 期間：横一列 */
    .hl-esl-period[b-cnro1dxx56] {
        flex: 1 0 100%;
        display: flex;
        flex-direction: row;
        align-items: baseline;
        flex-wrap: wrap;
        gap: 4px 12px;
    }

    .hl-esl-period-main[b-cnro1dxx56] {
        font-weight: 700;
        white-space: nowrap;
        text-align: left;
    }

    .hl-esl-period-sub[b-cnro1dxx56] {
        white-space: nowrap;
        text-align: left;
    }

    .hl-esl-table-wrap[b-cnro1dxx56] {
        max-height: calc(100vh - 250px);
    }

    .hl-esl-header[b-cnro1dxx56],
    .hl-esl-row[b-cnro1dxx56] {
        grid-template-columns: 80px minmax(560px, 1fr) 36px;
        min-width: calc(80px + 560px + 36px);
    }

    .hl-esl-col-employee[b-cnro1dxx56] {
        width: 80px;
        min-width: 80px;
        max-width: 80px;
        box-sizing: border-box;
        font-size: 10px;
    }

    .hl-esl-col-detail[b-cnro1dxx56] {
        width: 36px;
        min-width: 36px;
        max-width: 36px;
        box-sizing: border-box;
    }

    .hl-esl-col-days[b-cnro1dxx56] {
        min-width: 560px;
        position: relative;
        z-index: 1;
    }

    .hl-esl-col-employee[b-cnro1dxx56],
    .hl-esl-col-detail[b-cnro1dxx56] {
        padding: 6px;
    }

    .hl-esl-header .hl-esl-col-employee[b-cnro1dxx56],
    .hl-esl-row .hl-esl-col-employee[b-cnro1dxx56] {
        position: sticky;
        inset-inline-start: 0;
        left: 0;
        z-index: 70;
        background: var(--hl-color-f8fafc);
        box-shadow: 1px 0 0 var(--rz-border-color, var(--hl-color-e5e7eb));
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .hl-esl-row .hl-esl-col-employee[b-cnro1dxx56] {
        z-index: 71;
        background: var(--hl-color-ffffff);
    }

    .hl-esl-header .hl-esl-col-detail[b-cnro1dxx56],
    .hl-esl-row .hl-esl-col-detail[b-cnro1dxx56] {
        position: sticky;
        inset-inline-end: 0;
        right: 0;
        z-index: 70;
        background: var(--hl-color-f8fafc);
        border-left: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    }

    .hl-esl-row .hl-esl-col-detail[b-cnro1dxx56] {
        z-index: 71;
        background: var(--hl-color-ffffff);
    }

    .hl-esl-detail-link[b-cnro1dxx56] {
        width: 22px;
        height: 22px;
        font-size: 14px;
    }

    .hl-esl-detail-link[b-cnro1dxx56]  .rz-icon {
        font-size: 12px;
    }

    .hl-esl-day[b-cnro1dxx56] {
        font-size: 11px;
        padding: 6px 2px;
    }

    .hl-esl-gantt[b-cnro1dxx56] {
        height: 42px;
    }

    .hl-esl-bar[b-cnro1dxx56] {
        top: 6px;
        height: 30px;
        padding: 0 6px;
    }

    .hl-esl-bar-text[b-cnro1dxx56] {
        font-size: 11px;
    }
}

@media (max-width: 480px) {
    .hl-esl-header[b-cnro1dxx56],
    .hl-esl-row[b-cnro1dxx56] {
        grid-template-columns: 72px minmax(520px, 1fr) 34px;
        min-width: calc(72px + 520px + 34px);
    }

    .hl-esl-col-days[b-cnro1dxx56] {
        min-width: 520px;
    }

    .hl-esl-col-employee[b-cnro1dxx56] {
        width: 72px;
        min-width: 72px;
        max-width: 72px;
        font-size: 9px;
    }

    .hl-esl-col-detail[b-cnro1dxx56] {
        width: 34px;
        min-width: 34px;
        max-width: 34px;
    }

    .hl-esl-period-main[b-cnro1dxx56] {
        font-size: 13px;
    }
}
/* /Components/Pages/Schedules/Home.razor.rz.scp.css */
body[b-htn5bq1t22] {
}


/* =========================================
   Schedules page
   - インラインStyleを尊重（Radzen優先）
   - 使っているclassだけ残す
========================================= */

/* -------------------------
   ページ全体の骨格（旧インラインstyle）
------------------------- */
.hl-sch-root[b-htn5bq1t22] {
    height: calc(100vh - 85px);
    min-height: 720px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.hl-sch-toprow[b-htn5bq1t22] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.hl-sch-monthnav[b-htn5bq1t22] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.hl-sch-filter[b-htn5bq1t22] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Scheduler読み込み中のオーバーレイ */
.hl-sch-loading-overlay[b-htn5bq1t22] {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
    background: var(--hl-color-ffffff-a58);
}

/* -------------------------
   Body split (PC: 左2 / 右1)
------------------------- */
.hl-sch-body-split[b-htn5bq1t22] {
    display: flex;
    gap: 10px;
    height: 100%;
    min-height: 0;
}

.hl-sch-left[b-htn5bq1t22] {
    flex: 2 1 0;
    min-width: 0;
    height: 100%;
    min-height: 0;
}

.hl-sch-right[b-htn5bq1t22] {
    flex: 1 1 0;
    min-width: 420px;
    max-width: 40%;
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

/* -------------------------
   Right panel
------------------------- */
.hl-sch-rightgrid[b-htn5bq1t22] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    border: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    border-radius: 6px;
}

    .hl-sch-rightgrid > *[b-htn5bq1t22] {
        max-width: 100%;
    }

.hl-sch-rightheader[b-htn5bq1t22] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 4px 8px 6px;
    gap: 8px;
}

.hl-sch-rightday[b-htn5bq1t22] {
    font-size: 13px;
    font-weight: 600;
    color: var(--rz-text-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* -------------------------
   Grid cell formatting
------------------------- */
.hl-grid-subject[b-htn5bq1t22] {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hl-grid-unread-icon[b-htn5bq1t22] {
    font-size: 10px;
    line-height: 1;
    color: var(--hl-color-f59e0b);
}

.hl-grid-unread-text[b-htn5bq1t22] {
    font-weight: 700;
}

.hl-grid-period[b-htn5bq1t22] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 12px;
    color: var(--hl-color-475569);
}

/* カテゴリ列 */
.hl-catcell[b-htn5bq1t22] {
    display: flex;
    align-items: center;
    padding-left: 6px;
    height: 100%;
}

/* -------------------------
   カテゴリフィルター切り替え
   PC: SelectBar / スマホ: アイコンボタン行
------------------------- */
.hl-sch-filter-desktop[b-htn5bq1t22] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}

.hl-sch-filter-mobile[b-htn5bq1t22] {
    display: none;
    gap: 2px;
    flex-wrap: wrap;
    align-items: center;
}


/* =========================
   Mobile (<= 768px)
========================= */
.hl-sch-mobile-add[b-htn5bq1t22] {
    display: none;
}

@media (max-width: 768px) {

    /* 横スクロール防止 */
    .hl-sch-root[b-htn5bq1t22],
    .hl-sch-toprow[b-htn5bq1t22],
    .hl-sch-monthnav[b-htn5bq1t22],
    .hl-sch-filter[b-htn5bq1t22],
    .hl-sch-body-split[b-htn5bq1t22],
    .hl-sch-left[b-htn5bq1t22] {
        min-width: 0;
    }

    /* ===== 上段：横一列のまま（flex-directionは変えない） ===== */
    .hl-sch-toprow[b-htn5bq1t22] {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        min-width: 0 !important;
    }

    /* 年月ナビ：コンパクト固定 */
    .hl-sch-monthnav[b-htn5bq1t22] {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
    }

    /* カテゴリフィルター：コンパクト固定 */
    .hl-sch-filter[b-htn5bq1t22] {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
    }

        .hl-sch-filter[style][b-htn5bq1t22] {
            min-width: 0 !important;
        }

    /* ===== 社員一覧/車両一覧ボタンを非表示 ===== */
    .hl-sch-navbtns[b-htn5bq1t22] {
        display: none !important;
    }

    /* ===== PC SelectBar を非表示 → アイコンボタン行を表示 ===== */
    .hl-sch-filter-desktop[b-htn5bq1t22] {
        display: none !important;
    }

    .hl-sch-filter-mobile[b-htn5bq1t22] {
        display: flex !important;
    }

    /* ===== 下段：右グリッドを消して1カラム ===== */
    .hl-sch-right[b-htn5bq1t22] {
        display: none !important;
    }

    .hl-sch-body-split[b-htn5bq1t22] {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
    }

    /* ===== スマホ用：新規追加を下に出す ===== */
    .hl-sch-mobile-add[b-htn5bq1t22] {
        display: flex !important;
        justify-content: flex-end !important;
        margin-top: 10px !important;
    }

}
/* /Components/Pages/Schedules/ResourceScheduleMonthDialog.razor.rz.scp.css */
body[b-nbyjdzrd7g] {
}


.hl-rsm-header[b-nbyjdzrd7g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    position: sticky;
    top: 0;
    background: var(--rz-base-background-color, var(--hl-color-fff));
    z-index: 5;
    padding: 8px 12px;
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
}

.hl-rsm-header-right[b-nbyjdzrd7g] {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.hl-rsm-meta[b-nbyjdzrd7g] {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    flex-wrap: nowrap !important;
}

.hl-rsm-meta-item[b-nbyjdzrd7g] {
    display: flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    white-space: nowrap;
}



.hl-rsm-root[b-nbyjdzrd7g] {
    padding: 8px;
}

.hl-rsm-header[b-nbyjdzrd7g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    position: sticky;
    top: 0;
    background: var(--rz-base-background-color, var(--hl-color-fff));
    z-index: 5;
    padding: 8px 12px;
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
}

.hl-rsm-header-right[b-nbyjdzrd7g] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.hl-rsm-weekdays[b-nbyjdzrd7g] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    font-weight: 600;
    padding: 8px 0;
}

.hl-rsm-calendar[b-nbyjdzrd7g] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.hl-rsm-week[b-nbyjdzrd7g] {
    border: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    border-radius: 10px;
    overflow: hidden;
    background: var(--hl-color-fff);
}

.hl-rsm-daynums[b-nbyjdzrd7g] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    background: var(--hl-color-f8fafc);
}

.hl-rsm-daynum[b-nbyjdzrd7g] {
    padding: 6px 8px;
    border-right: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    font-weight: 600;
    color: inherit;
}

    .hl-rsm-daynum:last-child[b-nbyjdzrd7g] {
        border-right: none;
    }

    .hl-rsm-daynum.is-out[b-nbyjdzrd7g] {
        color: var(--hl-color-94a3b8);
    }

.hl-rsm-ganttwrap[b-nbyjdzrd7g] {
    padding: 6px 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* ★ここが “ズレない” 本体：336列を横幅に自動フィット */
.hl-rsm-gantt[b-nbyjdzrd7g] {
    display: grid;
    grid-template-columns: repeat(336, minmax(0, 1fr));
    height: 28px;
    border-radius: 10px;
    position: relative;
    background: repeating-linear-gradient( to right, var(--hl-color-94a3b8-a25) 0, var(--hl-color-94a3b8-a25) 1px, transparent 1px, transparent calc(100% / 336) );
}

.hl-rsm-click-grid[b-nbyjdzrd7g] {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    z-index: 1;
}

.hl-rsm-day-hit[b-nbyjdzrd7g] {
    border: none;
    background: transparent;
    padding: 0;
    margin: 0;
    cursor: pointer;
}

    /* 日境界（48slotごと）を少し濃く見せる */
    .hl-rsm-gantt[b-nbyjdzrd7g]::before {
        content: "";
        position: absolute;
        inset: 0;
        background: repeating-linear-gradient( to right, var(--hl-color-94a3b8-a55) 0, var(--hl-color-94a3b8-a55) 2px, transparent 2px, transparent calc(100% / 7) );
        pointer-events: none;
        opacity: .35;
    }

.hl-rsm-gantt-empty[b-nbyjdzrd7g] {
    opacity: .6;
}

.hl-rsm-bar[b-nbyjdzrd7g] {
    align-self: center;
    height: 24px;
    border-radius: 8px;
    border: 1px solid var(--hl-color-94a3b8-a60);
    background: var(--hl-color-3b82f6-a10);
    display: flex;
    align-items: center;
    padding: 0 8px;
    min-width: 0;
    overflow: hidden;
    position: relative;
    z-index: 2;
}

.hl-rsm-bartext[b-nbyjdzrd7g] {
    font-size: 12px;
    color: inherit;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* ===== 既存CSSはそのまま ===== */

/* ★週またぎ：角丸を落とす（丸み自体は維持） */
.hl-rsm-bar.clip-left[b-nbyjdzrd7g] {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.hl-rsm-bar.clip-right[b-nbyjdzrd7g] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.hl-rsm-bar.is-editable[b-nbyjdzrd7g] {
    cursor: pointer;
}

.hl-rsm-bar.is-readonly[b-nbyjdzrd7g] {
    cursor: default;
}

/* /Components/Pages/Schedules/VehicleScheduleList.razor.rz.scp.css */
.hl-esl-root[b-ryd46px6cj] {
    height: calc(100vh - 85px);
    min-height: 640px;
}

.hl-esl-toolbar[b-ryd46px6cj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.hl-esl-nav[b-ryd46px6cj] {
    display: flex;
    gap: 8px;
}

.hl-esl-filters[b-ryd46px6cj] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    align-items: center;
}

.hl-esl-filter-desktop[b-ryd46px6cj] {
    display: block;
}

.hl-esl-filter-mobile[b-ryd46px6cj] {
    display: none;
    gap: 4px;
    flex-wrap: wrap;
    align-items: center;
}

/* テキスト付きピルボタン（スマホ用フィルター） */
.hl-esl-filter-iconbtn[b-ryd46px6cj] {
    min-width: 28px;
    height: 24px;
    border-radius: 12px;
    border: 2px solid var(--filter-color, var(--hl-color-64748b));
    background: transparent;
    cursor: pointer;
    padding: 0 5px;
    flex-shrink: 0;
    transition: background 0.15s, color 0.15s;
    font-size: 11px;
    font-weight: 700;
    color: var(--filter-color, var(--hl-color-64748b));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.hl-esl-filter-iconbtn.is-active[b-ryd46px6cj] {
    background: var(--filter-color, var(--hl-color-64748b));
    color: var(--hl-color-ffffff);
}

.hl-esl-period[b-ryd46px6cj] {
    min-width: 0;
}

.hl-esl-period-main[b-ryd46px6cj] {
    font-weight: 700;
    text-align: right;
}

.hl-esl-period-sub[b-ryd46px6cj] {
    font-size: 12px;
    color: var(--hl-color-64748b);
    text-align: right;
}

.hl-esl-loading[b-ryd46px6cj] {
    padding: 20px;
    color: var(--hl-color-64748b);
}

.hl-esl-table-host[b-ryd46px6cj] {
    position: relative;
}

.hl-esl-table-wrap[b-ryd46px6cj] {
    position: relative;
    isolation: isolate;
    border: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    border-radius: 8px;
    overflow: auto;
    max-height: calc(100vh - 180px);
}

.hl-esl-loading-overlay[b-ryd46px6cj] {
    position: absolute;
    inset: 0;
    background: var(--hl-color-ffffff-a58);
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.hl-esl-header[b-ryd46px6cj],
.hl-esl-row[b-ryd46px6cj] {
    display: grid;
    grid-template-columns: 220px minmax(900px, 1fr) 44px;
    align-items: stretch;
}

.hl-esl-header[b-ryd46px6cj] {
    position: sticky;
    top: 0;
    z-index: 30;
    background: var(--hl-color-f8fafc);
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
}

.hl-esl-row[b-ryd46px6cj] {
    position: relative;
    z-index: 1;
    border-bottom: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
}

.hl-esl-col-employee[b-ryd46px6cj],
.hl-esl-col-detail[b-ryd46px6cj] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border-right: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    white-space: nowrap;
}

.hl-esl-col-employee[b-ryd46px6cj] {
    justify-content: flex-start;
    font-weight: 600;
}

.hl-esl-col-days[b-ryd46px6cj] {
    min-width: 900px;
}

.hl-esl-header .hl-esl-col-days[b-ryd46px6cj] {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
}

.hl-esl-header .hl-esl-col-employee[b-ryd46px6cj],
.hl-esl-header .hl-esl-col-days[b-ryd46px6cj],
.hl-esl-header .hl-esl-col-detail[b-ryd46px6cj] {
    position: relative;
    z-index: 31;
    background: var(--hl-color-f8fafc);
}

.hl-esl-day[b-ryd46px6cj] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 4px;
    border-right: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    font-size: 12px;
    font-weight: 700;
}

.hl-esl-day:last-child[b-ryd46px6cj] {
    border-right: none;
}

.hl-esl-day.is-today[b-ryd46px6cj] {
    background: var(--hl-color-fff7cc);
    color: var(--hl-color-7c2d12);
    box-shadow: inset 0 -2px 0 var(--hl-color-f59e0b);
}

.hl-esl-gantt[b-ryd46px6cj] {
    position: relative;
    height: 48px;
    background:
        repeating-linear-gradient(
            to right,
            var(--hl-color-94a3b8-a14) 0,
            var(--hl-color-94a3b8-a14) calc(100% / 384),
            transparent calc(100% / 384),
            transparent calc(200% / 384)
        ),
        repeating-linear-gradient(
            to right,
            var(--hl-color-94a3b8-a35) 0,
            var(--hl-color-94a3b8-a35) 1px,
            transparent 1px,
            transparent calc(100% / 8)
        );
}

.hl-esl-click-grid[b-ryd46px6cj] {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    z-index: 0;
}

.hl-esl-day-hit[b-ryd46px6cj] {
    border: none;
    background: transparent;
    padding: 0;
    margin: 0;
    cursor: pointer;
}

.hl-esl-gantt.has-today[b-ryd46px6cj]::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(var(--today-day-index) * (100% / 8));
    width: calc(100% / 8);
    background: var(--hl-color-f59e0b-a14);
    pointer-events: none;
    z-index: 1;
}

.hl-esl-bar[b-ryd46px6cj] {
    position: absolute;
    top: 8px;
    height: 32px;
    border-radius: 6px;
    border: 1px solid var(--hl-color-64748b-a45);
    padding: 0 8px;
    display: flex;
    align-items: center;
    overflow: hidden;
    min-width: 2px;
    z-index: 2;
}

.hl-esl-bar.is-editable[b-ryd46px6cj] {
    cursor: pointer;
}

.hl-esl-bar.is-readonly[b-ryd46px6cj] {
    cursor: default;
}

.hl-esl-bar-text[b-ryd46px6cj] {
    font-size: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hl-esl-detail-link[b-ryd46px6cj] {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    color: var(--hl-color-0f766e);
    text-decoration: none;
    background: var(--hl-color-e6f4f1);
    font-size: 16px;
}

.hl-esl-detail-link[b-ryd46px6cj]  .rz-icon {
    font-size: 14px;
    line-height: 1;
}

.hl-esl-detail-link:hover[b-ryd46px6cj],
.hl-esl-detail-link:focus-visible[b-ryd46px6cj] {
    background: var(--hl-color-d6eeea);
    outline: none;
}

@media (max-width: 900px) {
    .hl-esl-header[b-ryd46px6cj],
    .hl-esl-row[b-ryd46px6cj] {
        grid-template-columns: 160px minmax(720px, 1fr) 40px;
    }
}

@media (max-width: 768px) {
    .hl-esl-root[b-ryd46px6cj] {
        height: auto;
        min-height: 0;
    }

    /* ツールバーを横一列に（折り返しあり） */
    .hl-esl-toolbar[b-ryd46px6cj] {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        gap: 4px 6px;
    }

    /* ナビボタン：コンパクトにアイコンのみ */
    .hl-esl-nav[b-ryd46px6cj] {
        flex: 0 0 auto;
        display: flex;
        gap: 4px;
        width: auto;
    }

    .hl-esl-nav[b-ryd46px6cj]  .rz-button-text {
        display: none;
    }

    /* フィルターエリア */
    .hl-esl-filters[b-ryd46px6cj] {
        flex: 0 0 auto;
        flex-direction: row;
        align-items: center;
        gap: 4px;
        width: auto;
    }

    .hl-esl-filter-desktop[b-ryd46px6cj] {
        display: none;
    }

    .hl-esl-filter-mobile[b-ryd46px6cj] {
        display: flex !important;
    }

    /* 期間：横一列 */
    .hl-esl-period[b-ryd46px6cj] {
        flex: 1 0 100%;
        display: flex;
        flex-direction: row;
        align-items: baseline;
        flex-wrap: wrap;
        gap: 4px 12px;
    }

    .hl-esl-period-main[b-ryd46px6cj] {
        font-weight: 700;
        white-space: nowrap;
        text-align: left;
    }

    .hl-esl-period-sub[b-ryd46px6cj] {
        white-space: nowrap;
        text-align: left;
    }

    .hl-esl-table-wrap[b-ryd46px6cj] {
        max-height: calc(100vh - 250px);
    }

    .hl-esl-header[b-ryd46px6cj],
    .hl-esl-row[b-ryd46px6cj] {
        grid-template-columns: 80px minmax(560px, 1fr) 36px;
        min-width: calc(80px + 560px + 36px);
    }

    .hl-esl-col-employee[b-ryd46px6cj] {
        width: 80px;
        min-width: 80px;
        max-width: 80px;
        box-sizing: border-box;
        font-size: 10px;
    }

    .hl-esl-col-detail[b-ryd46px6cj] {
        width: 36px;
        min-width: 36px;
        max-width: 36px;
        box-sizing: border-box;
    }

    .hl-esl-col-days[b-ryd46px6cj] {
        min-width: 560px;
        position: relative;
        z-index: 1;
    }

    .hl-esl-col-employee[b-ryd46px6cj],
    .hl-esl-col-detail[b-ryd46px6cj] {
        padding: 6px;
    }

    .hl-esl-header .hl-esl-col-employee[b-ryd46px6cj],
    .hl-esl-row .hl-esl-col-employee[b-ryd46px6cj] {
        position: sticky;
        inset-inline-start: 0;
        left: 0;
        z-index: 70;
        background: var(--hl-color-f8fafc);
        box-shadow: 1px 0 0 var(--rz-border-color, var(--hl-color-e5e7eb));
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .hl-esl-row .hl-esl-col-employee[b-ryd46px6cj] {
        z-index: 71;
        background: var(--hl-color-ffffff);
    }

    .hl-esl-header .hl-esl-col-detail[b-ryd46px6cj],
    .hl-esl-row .hl-esl-col-detail[b-ryd46px6cj] {
        position: sticky;
        inset-inline-end: 0;
        right: 0;
        z-index: 70;
        background: var(--hl-color-f8fafc);
        border-left: 1px solid var(--rz-border-color, var(--hl-color-e5e7eb));
    }

    .hl-esl-row .hl-esl-col-detail[b-ryd46px6cj] {
        z-index: 71;
        background: var(--hl-color-ffffff);
    }

    .hl-esl-detail-link[b-ryd46px6cj] {
        width: 22px;
        height: 22px;
        font-size: 14px;
    }

    .hl-esl-detail-link[b-ryd46px6cj]  .rz-icon {
        font-size: 12px;
    }

    .hl-esl-day[b-ryd46px6cj] {
        font-size: 11px;
        padding: 6px 2px;
    }

    .hl-esl-gantt[b-ryd46px6cj] {
        height: 42px;
    }

    .hl-esl-bar[b-ryd46px6cj] {
        top: 6px;
        height: 30px;
        padding: 0 6px;
    }

    .hl-esl-bar-text[b-ryd46px6cj] {
        font-size: 11px;
    }
}

@media (max-width: 480px) {
    .hl-esl-header[b-ryd46px6cj],
    .hl-esl-row[b-ryd46px6cj] {
        grid-template-columns: 72px minmax(520px, 1fr) 34px;
        min-width: calc(72px + 520px + 34px);
    }

    .hl-esl-col-days[b-ryd46px6cj] {
        min-width: 520px;
    }

    .hl-esl-col-employee[b-ryd46px6cj] {
        width: 72px;
        min-width: 72px;
        max-width: 72px;
        font-size: 9px;
    }

    .hl-esl-col-detail[b-ryd46px6cj] {
        width: 34px;
        min-width: 34px;
        max-width: 34px;
    }

    .hl-esl-period-main[b-ryd46px6cj] {
        font-size: 13px;
    }
}
/* /Components/Pages/Settings/Applications/Detail.razor.rz.scp.css */
.apd-page-header[b-2edgsqd3in] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .75rem;
}

.apd-title[b-2edgsqd3in] {
    font-size: 1.25rem;
    font-weight: 600;
}

.apd-loading-box[b-2edgsqd3in] {
    padding: .75rem 0;
}

.apd-loading-text[b-2edgsqd3in] {
    margin-top: .5rem;
    color: var(--hl-color-666);
}

/* ---- 申込の内容と荷主マスタの枠を、横に並べる ---- */
.apd-layout[b-2edgsqd3in] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 12px;
}

@media (max-width: 800px) {
    .apd-layout[b-2edgsqd3in] {
        grid-template-columns: 1fr;
    }
}

.apd-card[b-2edgsqd3in] {
    padding: .75rem 1rem;
    border: 1px solid var(--hl-color-ddd);
    border-radius: .375rem;
    background: var(--hl-color-fff);
}

.apd-master-box[b-2edgsqd3in] {
    border-color: var(--hl-color-3b82f6);
    background: var(--hl-color-eff6ff);
}

.apd-card-title[b-2edgsqd3in] {
    margin: 0 0 .5rem;
    font-size: 1rem;
    font-weight: 600;
}

.apd-reject-title[b-2edgsqd3in] {
    margin-top: 1.25rem;
}

.apd-dl[b-2edgsqd3in] {
    display: grid;
    grid-template-columns: 8rem 1fr;
    gap: .375rem .75rem;
    margin: 0;
}

.apd-dl dt[b-2edgsqd3in] {
    color: var(--hl-color-64748b);
    font-size: .8125rem;
}

.apd-dl dd[b-2edgsqd3in] {
    margin: 0;
    overflow-wrap: anywhere;
}

.apd-note[b-2edgsqd3in] {
    white-space: pre-wrap;
}

.apd-muted[b-2edgsqd3in] {
    margin: 0;
    color: var(--hl-color-666);
}

/* ---- 承認の入力 ---- */
.apd-grid[b-2edgsqd3in] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.apd-field--wide[b-2edgsqd3in] {
    grid-column: 1 / -1;
}

.apd-hint[b-2edgsqd3in] {
    margin-top: .25rem;
    color: var(--hl-color-666);
    font-size: .8125rem;
}

.apd-buttons[b-2edgsqd3in] {
    display: flex;
    gap: .5rem;
    margin-top: .75rem;
}

.apd-inuse-badge[b-2edgsqd3in] {
    display: inline-block;
    margin: 0 0 .75rem;
    padding: .25rem .75rem;
    border-radius: .75rem;
    font-weight: 600;
    background: var(--hl-status-warning-bg);
    color: var(--hl-status-warning-fg);
}

/* ---- 状態の印 ---- */
.apd-status[b-2edgsqd3in] {
    display: inline-block;
    padding: .125rem .5rem;
    border-radius: .75rem;
    font-size: .75rem;
    font-weight: 600;
}

.apd-status--pending[b-2edgsqd3in] {
    background: var(--hl-status-warning-bg);
    color: var(--hl-status-warning-fg);
}

.apd-status--approved[b-2edgsqd3in] {
    background: var(--hl-status-success-bg);
    color: var(--hl-status-success-fg);
}

.apd-status--rejected[b-2edgsqd3in],
.apd-status--expired[b-2edgsqd3in] {
    background: var(--hl-status-neutral-bg);
    color: var(--hl-status-neutral-fg);
}
/* /Components/Pages/Settings/Applications/Index.razor.rz.scp.css */
.apl-loading-box[b-poqjnd6jmv] {
    padding: .75rem 0;
}

.apl-loading-text[b-poqjnd6jmv] {
    margin-top: .5rem;
    color: var(--hl-color-666);
}

/* ---- 状態での絞り込み ---- */
.apl-filter[b-poqjnd6jmv] {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
    margin: 0 0 .75rem;
}

.apl-chip[b-poqjnd6jmv] {
    display: inline-flex;
    align-items: center;
    padding: .2rem .7rem;
    border: 1px solid var(--hl-color-ddd);
    border-radius: 999px;
    background: var(--hl-color-fff);
    color: var(--hl-color-475569);
    font-size: .8125rem;
    cursor: pointer;
}

.apl-chip:hover[b-poqjnd6jmv] {
    background: var(--hl-color-eff6ff);
}

.apl-chip--on[b-poqjnd6jmv] {
    background: var(--hl-color-dbeafe);
    border-color: var(--hl-color-3b82f6);
    color: var(--hl-color-2563eb);
    font-weight: 600;
}

/* ---- 表 ---- */
.apl-table[b-poqjnd6jmv] {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.apl-thead-row[b-poqjnd6jmv] {
    text-align: left;
    border-bottom: 1px solid var(--hl-color-ddd);
}

.apl-col-date[b-poqjnd6jmv] {
    padding: .5rem;
    width: 10rem;
}

.apl-col-status[b-poqjnd6jmv] {
    padding: .5rem;
    width: 6rem;
}

.apl-col-company[b-poqjnd6jmv] {
    padding: .5rem;
    width: 28%;
}

.apl-col-contact[b-poqjnd6jmv] {
    padding: .5rem;
    width: 18%;
}

.apl-col-email[b-poqjnd6jmv] {
    padding: .5rem;
    width: 28%;
}

.apl-col-actions[b-poqjnd6jmv] {
    padding: .5rem;
    width: 6.5rem;
}

.apl-row[b-poqjnd6jmv] {
    border-bottom: 1px solid var(--hl-color-f0f0f0);
}

.apl-cell[b-poqjnd6jmv] {
    padding: .5rem;
    white-space: nowrap;
}

.apl-cell-ellipsis[b-poqjnd6jmv] {
    padding: .5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apl-empty[b-poqjnd6jmv] {
    padding: 1rem .5rem;
    color: var(--hl-color-666);
}

/* ---- 状態の印 ---- */
.apl-status[b-poqjnd6jmv] {
    display: inline-block;
    padding: .125rem .5rem;
    border-radius: .75rem;
    font-size: .75rem;
    font-weight: 600;
    white-space: nowrap;
}

.apl-status--pending[b-poqjnd6jmv] {
    background: var(--hl-status-warning-bg);
    color: var(--hl-status-warning-fg);
}

.apl-status--approved[b-poqjnd6jmv] {
    background: var(--hl-status-success-bg);
    color: var(--hl-status-success-fg);
}

.apl-status--rejected[b-poqjnd6jmv],
.apl-status--expired[b-poqjnd6jmv] {
    background: var(--hl-status-neutral-bg);
    color: var(--hl-status-neutral-fg);
}
/* /Components/Pages/Settings/FreightRate/BillingBranchCheck.razor.rz.scp.css */
/* .sbc-card（RadzenCard）はスコープ付きCSSが効かないため、razor 側の Style= に移行した。 */
/* /Components/Pages/Settings/FreightRate/LegacyFareConvert.razor.rz.scp.css */
.lfc-full-width[b-gjavj2fikg] {
    width: 100%;
}

.lfc-field-420[b-gjavj2fikg] {
    min-width: 420px;
}

.lfc-field-320[b-gjavj2fikg] {
    min-width: 320px;
}

.lfc-field-170[b-gjavj2fikg] {
    min-width: 170px;
}

.lfc-field-220[b-gjavj2fikg] {
    min-width: 220px;
}

.lfc-field-260[b-gjavj2fikg] {
    min-width: 260px;
}

.lfc-field-280[b-gjavj2fikg] {
    min-width: 280px;
}

.lfc-actions-row[b-gjavj2fikg] {
    margin-left: auto;
    display: flex;
    gap: 8px;
    align-items: flex-end;
}

.lfc-id-col[b-gjavj2fikg] {
    min-width: 70px;
}

.lfc-truncate[b-gjavj2fikg] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lfc-push-right[b-gjavj2fikg] {
    margin-left: auto;
}
/* /Components/Pages/Settings/JitsuunsouTaisei/Index.razor.rz.scp.css */
/* ページ全体はスクロールさせず、検索条件（.jt-header-bar）を上部に固定して一覧（.jt-scroll-area）だけを
   スクロールさせる。受注依頼一覧（OrderRequestListPage.razor.css の .oh-page）と同じ構成：
   article.content（MainLayout側でheight:100%）の高さを受け継ぐ。position: sticky は
   RadzenBodyのスクロールコンテキストで効かないケースがあったため使わない。 */
.jt-page[b-hd63o57cxt] {
    height: 100%;
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow: hidden;
    box-sizing: border-box;
}

.jt-header-bar[b-hd63o57cxt] {
    flex-shrink: 0;
}

.jt-scroll-area[b-hd63o57cxt] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

/* ヘッダー行 > 明細行 > 区間 の階層をインデント＋左罫線で視覚化する */

.jt-indent-1[b-hd63o57cxt] {
    margin-left: 1.5rem;
    padding-left: 0.75rem;
    border-left: 3px solid #c8d0d9;
}

.jt-indent-2[b-hd63o57cxt] {
    margin-top: 0.25rem;
    margin-left: 1.5rem;
    padding-left: 0.75rem;
    border-left: 3px solid #e2e6eb;
}

/* ヘッダーテーブルはcolgroupの列幅を固定して尊重させる */
.jt-header-table[b-hd63o57cxt] {
    table-layout: fixed;
    width: auto;
}

.jt-header-table th[b-hd63o57cxt],
.jt-header-table td[b-hd63o57cxt] {
    white-space: normal;
    word-break: break-word;
    padding: 0.5rem 0.75rem;
}

/* 区間テーブルは「実運送事業者」列の文言が可変長（要確認メッセージ等）なため、
   table-layoutをautoにして内容に応じて列幅が伸び、折り返さず1行で表示されるようにする。
   はみ出した分は親の table-responsive の横スクロールで見られる。 */
.jt-leg-table[b-hd63o57cxt] {
    table-layout: auto;
    width: auto;
}

.jt-leg-table th[b-hd63o57cxt],
.jt-leg-table td[b-hd63o57cxt] {
    padding: 0.5rem 0.75rem;
    white-space: nowrap;
}

.jt-leg-table th:nth-child(2)[b-hd63o57cxt],
.jt-leg-table td:nth-child(2)[b-hd63o57cxt],
.jt-leg-table th:nth-child(3)[b-hd63o57cxt],
.jt-leg-table td:nth-child(3)[b-hd63o57cxt] {
    white-space: normal;
    word-break: break-word;
}
/* /Components/Pages/Settings/Roles/Index.razor.rz.scp.css */
.sri-loading-box[b-vy95b9xtwf] {
    padding: .75rem 0;
}

.sri-loading-text[b-vy95b9xtwf] {
    margin-top: .5rem;
    color: var(--hl-color-666);
}

.sri-form-grid[b-vy95b9xtwf] {
    grid-template-columns: 1fr auto;
    gap: 12px;
    align-items: end;
}

.sri-table[b-vy95b9xtwf] {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.sri-thead-row[b-vy95b9xtwf] {
    text-align: left;
    border-bottom: 1px solid var(--hl-color-ddd);
}

.sri-col-roleid[b-vy95b9xtwf] {
    padding: .5rem;
    width: 400px;
}

.sri-col-actions[b-vy95b9xtwf] {
    padding: .5rem;
    width: 260px;
}

.sri-row[b-vy95b9xtwf] {
    border-bottom: 1px solid var(--hl-color-f0f0f0);
}

.sri-cell-roleid[b-vy95b9xtwf] {
    padding: .5rem;
    width: 400px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sri-cell[b-vy95b9xtwf] {
    padding: .5rem;
}
/* /Components/Pages/Settings/UnsouJutakubo/Index.razor.rz.scp.css */
/* ページ全体はスクロールさせず、検索条件（.uj-header-bar）を上部に固定して一覧（.uj-scroll-area）だけを
   スクロールさせる。実運送体制管理簿（JitsuunsouTaisei/Index.razor.css）と同じ構成。 */
.uj-page[b-h6o67dr8gv] {
    height: 100%;
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow: hidden;
    box-sizing: border-box;
}

.uj-header-bar[b-h6o67dr8gv] {
    flex-shrink: 0;
}

.uj-scroll-area[b-h6o67dr8gv] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

/* 見出し > 明細 の階層をインデント＋左罫線で視覚化する */
.uj-indent-1[b-h6o67dr8gv] {
    margin-left: 1.5rem;
    padding-left: 0.75rem;
    border-left: 3px solid #c8d0d9;
}

.uj-header-table[b-h6o67dr8gv] {
    table-layout: fixed;
    width: auto;
}

.uj-header-table th[b-h6o67dr8gv],
.uj-header-table td[b-h6o67dr8gv] {
    white-space: normal;
    word-break: break-word;
    padding: 0.5rem 0.75rem;
}

.uj-line-table[b-h6o67dr8gv] {
    table-layout: auto;
    width: auto;
}

.uj-line-table th[b-h6o67dr8gv],
.uj-line-table td[b-h6o67dr8gv] {
    padding: 0.4rem 0.75rem;
    white-space: nowrap;
}

.uj-amount[b-h6o67dr8gv] {
    text-align: right;
}

.uj-total[b-h6o67dr8gv] {
    font-weight: bold;
}

/* 未確定・連携なし（実運送体制管理簿の「要確認」と同じ色） */
.uj-attention[b-h6o67dr8gv] {
    color: #9a5c00;
    font-weight: bold;
}
/* /Components/Pages/Settings/Users/Edit.razor.rz.scp.css */
.sue-page-header[b-3w983tyqsh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .75rem;
}

.sue-title[b-3w983tyqsh] {
    font-size: 1.25rem;
    font-weight: 600;
}

.sue-actions[b-3w983tyqsh] {
    display: flex;
    gap: .5rem;
}

.sue-loading-box[b-3w983tyqsh] {
    padding: .75rem 0;
}

.sue-loading-text[b-3w983tyqsh] {
    margin-top: .5rem;
    color: var(--hl-color-666);
}

.sue-grid-2col[b-3w983tyqsh] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.sue-grid-1col[b-3w983tyqsh] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.sue-field-row[b-3w983tyqsh] {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 12px;
    align-items: center;
}

.sue-inline-flex[b-3w983tyqsh] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.sue-hint-text[b-3w983tyqsh] {
    font-size: 12px;
}

.sue-required-text[b-3w983tyqsh] {
    color: var(--hl-color-b45309);
}

.sue-role-grid[b-3w983tyqsh] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 8px;
}

.sue-role-label[b-3w983tyqsh] {
    gap: 8px;
}

.sue-error-list[b-3w983tyqsh] {
    margin: .25rem 0 0;
    padding-left: 1.25rem;
}
/* /Components/Pages/Settings/Users/Index.razor.rz.scp.css */
.sui-loading-box[b-wxfou8o0fj] {
    padding: .75rem 0;
}

.sui-loading-text[b-wxfou8o0fj] {
    margin-top: .5rem;
    color: var(--hl-color-666);
}

/* ---- ロールでの絞り込み ---- */
.sui-role-filter[b-wxfou8o0fj] {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
    margin: 0 0 .75rem;
}

.sui-chip[b-wxfou8o0fj] {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    padding: .2rem .7rem;
    border: 1px solid var(--hl-color-ddd);
    border-radius: 999px;
    background: var(--hl-color-fff);
    color: var(--hl-color-475569);
    font-size: .8125rem;
    cursor: pointer;
}

.sui-chip:hover[b-wxfou8o0fj] {
    background: var(--hl-color-eff6ff);
}

.sui-chip--on[b-wxfou8o0fj] {
    background: var(--hl-color-dbeafe);
    border-color: var(--hl-color-3b82f6);
    color: var(--hl-color-2563eb);
    font-weight: 600;
}

.sui-chip-count[b-wxfou8o0fj] {
    color: var(--hl-color-64748b);
    font-size: .75rem;
    font-weight: 400;
}

/* ---- 表 ---- */
.sui-table[b-wxfou8o0fj] {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.sui-thead-row[b-wxfou8o0fj] {
    text-align: left;
    border-bottom: 1px solid var(--hl-color-ddd);
}

.sui-col-username[b-wxfou8o0fj] {
    padding: .5rem;
    width: 24%;
}

.sui-col-displayname[b-wxfou8o0fj] {
    padding: .5rem;
    width: 13%;
}

.sui-col-ids[b-wxfou8o0fj] {
    padding: .5rem;
    width: 25%;
}

.sui-col-roles[b-wxfou8o0fj] {
    padding: .5rem;
    width: 28%;
}

.sui-col-actions[b-wxfou8o0fj] {
    padding: .5rem;
    width: 6.5rem;
}

.sui-row[b-wxfou8o0fj] {
    border-bottom: 1px solid var(--hl-color-f0f0f0);
}

.sui-cell-ellipsis[b-wxfou8o0fj] {
    padding: .5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sui-cell[b-wxfou8o0fj] {
    padding: .5rem;
    white-space: nowrap;
}

.sui-empty[b-wxfou8o0fj] {
    padding: 1rem .5rem;
    color: var(--hl-color-666);
}

/* ---- ID（担当者／荷主／社員／提携会社）: 1つの欄に小さく並べる ---- */
.sui-cell-ids[b-wxfou8o0fj] {
    padding: .5rem;
    font-size: .8125rem;
}

.sui-id[b-wxfou8o0fj] {
    display: inline-block;
    margin-right: .75rem;
    white-space: nowrap;
}

.sui-id-label[b-wxfou8o0fj] {
    margin-right: .25rem;
    color: var(--hl-color-64748b);
    font-size: .75rem;
}

.sui-id--unset[b-wxfou8o0fj] {
    color: var(--hl-color-999);
}

/* ---- ロール: 持っているものだけをバッジで並べる（Hinode系=青、EC系=緑、その他=灰色） ---- */
.sui-cell-roles[b-wxfou8o0fj] {
    padding: .5rem;
}

.sui-role-badge[b-wxfou8o0fj] {
    display: inline-block;
    margin: 0 .25rem .25rem 0;
    padding: .125rem .5rem;
    border-radius: .75rem;
    font-size: .75rem;
    font-weight: 600;
    white-space: nowrap;
}

.sui-role-badge--info[b-wxfou8o0fj] {
    background: var(--hl-status-info-bg);
    color: var(--hl-status-info-fg);
}

.sui-role-badge--success[b-wxfou8o0fj] {
    background: var(--hl-status-success-bg);
    color: var(--hl-status-success-fg);
}

.sui-role-badge--neutral[b-wxfou8o0fj] {
    background: var(--hl-status-neutral-bg);
    color: var(--hl-status-neutral-fg);
}

.sui-role-none[b-wxfou8o0fj] {
    color: var(--hl-color-999);
    font-size: .75rem;
}

/* ---- 招待中: パスワードをまだ設定していないユーザー ---- */
.sui-invited-badge[b-wxfou8o0fj] {
    display: inline-block;
    margin-left: .5rem;
    padding: .125rem .5rem;
    border-radius: .75rem;
    font-size: .75rem;
    font-weight: 600;
    white-space: nowrap;
    background: var(--hl-status-warning-bg);
    color: var(--hl-status-warning-fg);
}

/* ---- 未処理の利用申込のお知らせ ---- */
.sui-pending-notice[b-wxfou8o0fj] {
    display: inline-block;
    margin: 0 0 .75rem;
    padding: .375rem .75rem;
    border-radius: .375rem;
    font-weight: 600;
    background: var(--hl-status-warning-bg);
    color: var(--hl-status-warning-fg);
}

.sui-pending-notice a[b-wxfou8o0fj] {
    color: inherit;
}
/* /Components/Pages/Settings/Users/New.razor.rz.scp.css */
.sue-page-header[b-4fjb00qnne] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .75rem;
}

.sue-title[b-4fjb00qnne] {
    font-size: 1.25rem;
    font-weight: 600;
}

.sue-actions[b-4fjb00qnne] {
    display: flex;
    gap: .5rem;
}

.sue-loading-box[b-4fjb00qnne] {
    padding: .75rem 0;
}

.sue-loading-text[b-4fjb00qnne] {
    margin-top: .5rem;
    color: var(--hl-color-666);
}

.sue-grid-2col[b-4fjb00qnne] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.sue-grid-1col[b-4fjb00qnne] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.sue-field-row[b-4fjb00qnne] {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 12px;
    align-items: center;
}

.sue-inline-flex[b-4fjb00qnne] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.sue-hint-text[b-4fjb00qnne] {
    font-size: 12px;
}

.sue-required-text[b-4fjb00qnne] {
    color: var(--hl-color-b45309);
}

.sue-role-grid[b-4fjb00qnne] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 8px;
}

.sue-role-label[b-4fjb00qnne] {
    gap: 8px;
}

.sue-error-list[b-4fjb00qnne] {
    margin: .25rem 0 0;
    padding-left: 1.25rem;
}
/* /Components/Shared/PrintPreviewDialog.razor.rz.scp.css */
.ppd-wrap[b-8ybc5iqkaz] {
    display: flex;
    flex-direction: column;
    height: 100%;
    gap: 0;
}

.ppd-toolbar[b-8ybc5iqkaz] {
    flex: 0 0 auto;
    padding: 6px 0 8px 0;
}

.ppd-iframe[b-8ybc5iqkaz] {
    width: 100%;
    height: calc(100vh - 130px);
    border: 1px solid var(--hl-color-ddd);
    border-radius: 4px;
    display: block;
}
