
/* 全体レイアウト */
.ant-layout {
    background-color: #fcfbfa !important;
}

/* メニューヘッダ */
.ant-layout-header,
.ant-menu {
    background-color: #e3ecf2 !important;
    font-weight: 500;
}

/* グリッド項目を左寄せ */
.ant-col {
    text-align: left;
}

/* 展開式パネルヘッダ */
.ant-collapse-header {
    background-color: #0070c0;
    color: white !important;
    font-weight: bold;
}

/* チェックボックスの上下間隔 */
.ant-checkbox-wrapper {
    margin: 3px 0px !important;
}

/* Table Header */
.ant-table-thead .ant-table-cell {
    background-color: #e3ecf2;
}

/* Panel Label */
.panel-label {
    font-weight: bold;
    color: #444;
    padding: 2px 6px;
    border-radius: 3px;
}

/* Button Group */
.button-group .ant-btn:not(:first-child) {
    margin-left: -1px;
}

.button-group .ant-btn:not(:last-child):not(.ant-btn-primary) {
    border-right-color: transparent;
}

.button-group .ant-btn:first-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.button-group .ant-btn:last-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.button-group .ant-btn:not(:first-child):not(:last-child) {
    border-radius: 0;
}


/* Disabled controls 視認性 */
input[readonly],
textarea[readonly]{
    background-color: #f0f0f0;
}

.ant-input-number.ant-input-number-disabled,
.ant-picker.ant-picker-disabled .ant-picker-input > input[disabled] {
    color: #1f2937 !important;
}

.ant-checkbox-disabled + span {
    color: #1f2937 !important;
}

.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner::after {
    border-color: #1f2937 !important;
}

.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector {
    color: #1f2937;
}

/* バリデーションエラーメッセージの高さ調整 */
.ant-form-item-explain-error {
    min-height: 28px;    /* 1行時のガタつき防止 */
    height: auto;        /* 複数行は伸ばす */
    line-height: 1.4;    /* 読みやすさ */
    white-space: normal; /* 折り返し許可 */
    word-break: break-word;
}

/* ステータス表示 */
.report-undone {
    background-color: #ffa940;
    padding: 4px 10px;
    border-radius: 10px;
    font-weight: 500;
}

.report-done {
    background-color: #52c41a;
    padding: 4px 10px;
    border-radius: 10px;
    font-weight:500;
}

.invoice-status0 {
    border: solid 1px #1f2937;
    padding: 4px 10px;
    border-radius: 10px;
}

.invoice-status1 {
    background-color: #ffa940;
    padding: 4px 10px;
    border-radius: 10px;
    font-weight: 500;
}

.invoice-status2 {
    background-color: yellow;
    padding: 4px 10px;
    border-radius: 10px;
    font-weight: 500;
}

.invoice-status3 .invoice-status4 {
    background-color: #52c41a;
    padding: 4px 10px;
    border-radius: 10px;
    font-weight: 500;
}

/* 共有部品 */
.message-panel {
    background-color: #fff2cc;
    border: 1px solid #ffeb3b;
    border-radius: 4px;
    padding: 10px;
    margin-top: 5px;
    margin-bottom: 10px;
}

.required {
    color: red;
    margin-left: 2px;
}

/* 単位のラベル */
.unit-label {
    color: lightgray;
    font-weight: 500;
}

.btn-selected {
    background-color: #ffe8d6 !important;
    font-weight: bold;
}


