/* /Components/BasicData/CompanySettingsCrud.razor.rz.scp.css */
.dialog-mask[b-kdd34397el] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.dialog-card[b-kdd34397el] {
    background: #ffffff;
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 16px 30px rgba(15, 23, 42, 0.2);
}

.relation-card[b-kdd34397el] {
    width: 560px;
    max-width: calc(100vw - 24px);
}

.dialog-card h3[b-kdd34397el] {
    margin: 0 0 14px;
    color: #0f2c5f;
}

.form-row[b-kdd34397el] {
    margin-bottom: 12px;
}

.form-row label[b-kdd34397el] {
    display: block;
    color: #334155;
    font-size: 14px;
    margin-bottom: 6px;
}

    .form-row input[type="text"][b-kdd34397el],
    .form-row input:not([type])[b-kdd34397el],
    .form-row input:not([type="checkbox"]):disabled[b-kdd34397el] {
        width: 100%;
        height: 44px;
        border: 1px solid #dce6f5;
        border-radius: 10px;
        padding: 0 14px;
        font-size: 14px;
        background: #ffffff;
        color: #1e293b;
        box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
    }

.alert[b-kdd34397el] {
    margin-bottom: 10px;
    background: #fff1f2;
    color: #b42318;
    border: 1px solid #fecdd3;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
}

.field-error[b-kdd34397el] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-kdd34397el] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

.relation-inline-row[b-kdd34397el] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.relation-selector[b-kdd34397el] {
    flex: 1;
}

.relation-add-btn[b-kdd34397el] {
    min-width: 112px;
    margin-top: 26px; /* ��������򣬶����Ƕ�����������ײ� */
}

.btn[b-kdd34397el] {
    border: none;
    border-radius: 8px;
    padding: 9px 14px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.btn-primary[b-kdd34397el] {
    background: #2f74d0;
    color: #ffffff;
}

.btn-secondary[b-kdd34397el] {
    background: #e2e8f0;
    color: #1e293b;
}

.relation-add-btn[b-kdd34397el] {
    min-width: 112px;
}

.relation-list[b-kdd34397el] {
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    max-height: 280px;
    overflow-y: auto;
    background: #f8fbff;
}

.relation-item[b-kdd34397el],
.empty-relation[b-kdd34397el] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-bottom: 1px solid #e7edf7;
}

.relation-item:last-child[b-kdd34397el] {
    border-bottom: none;
}

.empty-relation[b-kdd34397el] {
    color: #64748b;
    justify-content: center;
}

.dialog-actions[b-kdd34397el] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 14px;
}

@media (max-width: 768px) {
    .relation-inline-row[b-kdd34397el] {
        flex-direction: column;
        align-items: stretch;
    }

    .relation-add-btn[b-kdd34397el] {
        width: 100%;
    }
}
/* /Components/BasicData/NamedSettingsCrud.razor.rz.scp.css */
.basic-crud-panel[b-ym5gkw0u4e] {
    border-radius: 0 18px 18px 18px;
    padding: 16px;
    min-height: 520px;
}

.toolbar[b-ym5gkw0u4e] {
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.keyword-input[b-ym5gkw0u4e] {
    width: 280px;
    max-width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 9px 12px;
    font-size: 14px;
}

.btn[b-ym5gkw0u4e] {
    border: none;
    border-radius: 8px;
    padding: 9px 14px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.btn:disabled[b-ym5gkw0u4e],
.keyword-input:disabled[b-ym5gkw0u4e] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-ym5gkw0u4e] {
    background: #2f74d0;
    color: #ffffff;
}

.btn-secondary[b-ym5gkw0u4e] {
    background: #e2e8f0;
    color: #1e293b;
}

.alert[b-ym5gkw0u4e] {
    margin-bottom: 10px;
    background: #fff1f2;
    color: #b42318;
    border: 1px solid #fecdd3;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
}

.loading[b-ym5gkw0u4e] {
    color: #64748b;
    font-size: 14px;
    padding: 8px 2px;
}

.dialog-mask[b-ym5gkw0u4e] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}

.dialog-card[b-ym5gkw0u4e] {
    width: 420px;
    max-width: calc(100vw - 24px);
    background: #ffffff;
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 16px 30px rgba(15, 23, 42, 0.2);
}

.dialog-card h3[b-ym5gkw0u4e] {
    margin: 0 0 14px;
    color: #0f2c5f;
}

.form-row[b-ym5gkw0u4e] {
    margin-bottom: 12px;
}

.form-row label[b-ym5gkw0u4e] {
    display: block;
    color: #334155;
    font-size: 14px;
    margin-bottom: 6px;
}

    .form-row input[type="text"][b-ym5gkw0u4e],
    .form-row input:not([type])[b-ym5gkw0u4e],
    .form-row input:not([type="checkbox"]):disabled[b-ym5gkw0u4e] {
        width: 100%;
        height: 44px;
        border: 1px solid #dce6f5;
        border-radius: 10px;
        padding: 0 14px;
        font-size: 14px;
        background: #ffffff;
        color: #1e293b;
        box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
    }

.form-row.inline label[b-ym5gkw0u4e] {
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.dialog-actions[b-ym5gkw0u4e] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 14px;
}

.field-error[b-ym5gkw0u4e] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-ym5gkw0u4e] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

@media (max-width: 768px) {
    .basic-crud-panel[b-ym5gkw0u4e] {
        min-height: 420px;
        padding: 12px;
    }
}
/* /Components/BasicData/ProvinceCityDistrictSettingsSection.razor.rz.scp.css */
.province-panel[b-1gnsb6bfxf] {
    border-radius: 0 18px 18px 18px;
    padding: 16px;
    min-height: 520px;
}

.toolbar[b-1gnsb6bfxf] {
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.keyword-input[b-1gnsb6bfxf] {
    width: 280px;
    max-width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    padding: 9px 12px;
    font-size: 14px;
}

.level-select[b-1gnsb6bfxf],
.form-row select[b-1gnsb6bfxf] {
    height: 44px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 0 42px 0 14px;
    font-size: 14px;
    background-color: #ffffff;
    color: #1e293b;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.toolbar > .level-select[b-1gnsb6bfxf] {
    width: 120px;
}

.btn[b-1gnsb6bfxf] {
    border: none;
    border-radius: 8px;
    padding: 9px 14px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.btn-primary[b-1gnsb6bfxf] {
    background: #2f74d0;
    color: #ffffff;
}

.btn-secondary[b-1gnsb6bfxf] {
    background: #e2e8f0;
    color: #1e293b;
}

.alert[b-1gnsb6bfxf] {
    margin-bottom: 10px;
    background: #fff1f2;
    color: #b42318;
    border: 1px solid #fecdd3;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
}

.loading[b-1gnsb6bfxf] {
    color: #64748b;
    font-size: 14px;
    padding: 8px 2px;
}

.dialog-mask[b-1gnsb6bfxf] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}

.dialog-card[b-1gnsb6bfxf] {
    width: 420px;
    max-width: calc(100vw - 24px);
    background: #ffffff;
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 16px 30px rgba(15, 23, 42, 0.2);
}

.dialog-card h3[b-1gnsb6bfxf] {
    margin: 0 0 14px;
    color: #0f2c5f;
}

.form-row[b-1gnsb6bfxf] {
    margin-bottom: 12px;
}

.form-row label[b-1gnsb6bfxf] {
    display: block;
    color: #334155;
    font-size: 14px;
    margin-bottom: 6px;
}

    .form-row input[type="text"][b-1gnsb6bfxf],
    .form-row input:not([type])[b-1gnsb6bfxf],
    .form-row input:not([type="checkbox"]):disabled[b-1gnsb6bfxf] {
        width: 100%;
        height: 44px;
        border: 1px solid #dce6f5;
        border-radius: 10px;
        padding: 0 14px;
        font-size: 14px;
        background: #ffffff;
        color: #1e293b;
        box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
    }

.form-row.inline label[b-1gnsb6bfxf] {
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.dialog-actions[b-1gnsb6bfxf] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 14px;
}

.field-error[b-1gnsb6bfxf] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-1gnsb6bfxf] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}
/* /Components/Common/CommonAutocomplete.razor.rz.scp.css */
.common-autocomplete[b-fulae1ggkm] {
    position: relative;
}

.common-autocomplete[b-fulae1ggkm]::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid #64748b;
    border-bottom: 2px solid #64748b;
    transform: translateY(-65%) rotate(45deg);
    pointer-events: none;
    transition: transform 0.18s ease;
}

.common-autocomplete.is-open[b-fulae1ggkm]::after {
    transform: translateY(-25%) rotate(-135deg);
}

.common-autocomplete-input[b-fulae1ggkm] {
    width: 100%;
    height: 44px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 0 36px 0 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
    outline: none;
}

.common-autocomplete-input:focus[b-fulae1ggkm] {
    border-color: #9db8eb;
    box-shadow: 0 0 0 3px rgba(57, 121, 234, 0.12);
}

.common-autocomplete-input:disabled[b-fulae1ggkm] {
    background: #f8fafc;
    color: #94a3b8;
    cursor: not-allowed;
}

.common-autocomplete-panel[b-fulae1ggkm] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 1200;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.12);
    max-height: 240px;
    overflow-y: auto;
}

.common-autocomplete-item[b-fulae1ggkm] {
    width: 100%;
    border: none;
    border-bottom: 1px solid #eef2fb;
    background: #ffffff;
    color: #1e293b;
    text-align: left;
    padding: 10px 12px;
    font-size: 14px;
    cursor: pointer;
}

.common-autocomplete-item:last-child[b-fulae1ggkm] {
    border-bottom: none;
}

.common-autocomplete-item:hover[b-fulae1ggkm] {
    background: #f3f7ff;
}

.common-autocomplete-empty[b-fulae1ggkm] {
    padding: 10px 12px;
    color: #94a3b8;
    font-size: 13px;
}
/* /Components/Common/CommonMultiSelect.razor.rz.scp.css */
.common-multi-select[b-eltkn1m1oe] {
    position: relative;
}

.common-multi-select.is-open[b-eltkn1m1oe] {
    z-index: 1300;
}

.common-multi-select.field-invalid .common-multi-select-trigger[b-eltkn1m1oe] {
    border-color: #f0a2a2;
    background-color: #fff8f8;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08);
}

.common-multi-select[b-eltkn1m1oe]::after {
    content: "";
    position: absolute;
    right: 14px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid #64748b;
    border-bottom: 2px solid #64748b;
    transform: translateY(-65%) rotate(45deg);
    pointer-events: none;
    transition: transform 0.18s ease;
}

.common-multi-select.is-open[b-eltkn1m1oe]::after {
    transform: translateY(-25%) rotate(-135deg);
}

.common-multi-select-trigger[b-eltkn1m1oe] {
    width: 100%;
    height: 44px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 0 36px 0 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
    outline: none;
    text-align: left;
    cursor: pointer;
}

.common-multi-select-trigger:focus[b-eltkn1m1oe] {
    border-color: #9db8eb;
    box-shadow: 0 0 0 3px rgba(57, 121, 234, 0.12);
}

.common-multi-select-trigger:disabled[b-eltkn1m1oe] {
    background: #f8fafc;
    color: #94a3b8;
    cursor: not-allowed;
}

.common-multi-select-value[b-eltkn1m1oe] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.common-multi-select-value.is-placeholder[b-eltkn1m1oe] {
    color: #94a3b8;
}

.common-multi-select-panel[b-eltkn1m1oe] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 1200;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.12);
    max-height: 240px;
    overflow-y: auto;
    padding-top: 2px;
}

.common-multi-select-item[b-eltkn1m1oe] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    border: none;
    background: transparent;
    padding: 10px 12px;
    border-bottom: 1px solid #eef2fb;
    color: #1e293b;
    font-size: 14px;
    cursor: pointer;
    text-align: left;
}

.common-multi-select-item:last-child[b-eltkn1m1oe] {
    border-bottom: none;
}

.common-multi-select-item.is-selected[b-eltkn1m1oe] {
    background: #eef4ff;
}

.common-multi-select-item:hover[b-eltkn1m1oe] {
    background: #f3f7ff;
}

.common-multi-select-check[b-eltkn1m1oe] {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    border: 1.5px solid #b7c4d8;
    border-radius: 4px;
    background: #ffffff;
    position: relative;
}

.common-multi-select-check.is-selected[b-eltkn1m1oe] {
    border-color: #3979ea;
    background: #3979ea;
}

.common-multi-select-check.is-selected[b-eltkn1m1oe]::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border-right: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    transform: rotate(45deg);
}

.common-multi-select-empty[b-eltkn1m1oe] {
    padding: 10px 12px;
    color: #94a3b8;
    font-size: 13px;
}

.common-multi-select-backdrop[b-eltkn1m1oe] {
    position: fixed;
    inset: 0;
    z-index: 1190;
    background: transparent;
}

.common-multi-select-panel[b-eltkn1m1oe] {
    z-index: 1200;
}
/* /Components/Common/CommonTable.razor.rz.scp.css */
.common-table-wrap[b-k5lu2f8x35] {
    width: 100%;
    background: #ffffff;
    border: 1px solid #d7e3f6;
    border-radius: 16px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), 0 8px 18px rgba(33, 82, 168, 0.06);
    overflow: hidden;
}

.common-table-scroll[b-k5lu2f8x35] {
    width: 100%;
    overflow-x: auto;
}

.common-table[b-k5lu2f8x35] {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}

    .common-table thead th[b-k5lu2f8x35] {
        background: #f7faff;
        color: #1e3a62;
        font-size: 14px;
        font-weight: 700;
        padding: 12px 14px;
        border-bottom: 1px solid #dfe6f3;
        white-space: nowrap;
    }

    .common-table tbody td[b-k5lu2f8x35] {
        padding: 12px 14px;
        border-bottom: 1px solid #edf1f8;
        color: #334155;
        font-size: 14px;
        vertical-align: middle;
        background: #ffffff;
    }

    .common-table tbody tr:last-child td[b-k5lu2f8x35] {
        border-bottom: none;
    }

.empty-cell[b-k5lu2f8x35] {
    text-align: center;
    color: #94a3b8;
    padding: 32px 0;
}

.action-col[b-k5lu2f8x35] {
    white-space: nowrap;
    width: 180px;
}

.common-table-footer[b-k5lu2f8x35] {
    border-top: 1px solid #edf1f8;
    background: #fcfdff;
    padding: 12px 14px;
}

.common-table-pager[b-k5lu2f8x35] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    color: #475569;
    font-size: 13px;
    flex-wrap: wrap;
}

.pager-left[b-k5lu2f8x35] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.pager-total[b-k5lu2f8x35] {
    font-weight: 700;
    color: #1e3a62;
}

.pager-right[b-k5lu2f8x35] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.page-size-label[b-k5lu2f8x35] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 2px;
}

    .page-size-label select[b-k5lu2f8x35] {
        min-width: 68px;
        border: 1px solid #cbd5e1;
        border-radius: 8px;
        padding: 5px 28px 5px 10px;
        background: #fff;
        color: #334155;
        appearance: none;
        -webkit-appearance: none;
        background-image: linear-gradient(45deg, transparent 50%, #64748b 50%), linear-gradient(135deg, #64748b 50%, transparent 50%);
        background-position: calc(100% - 14px) calc(50% - 2px), calc(100% - 9px) calc(50% - 2px);
        background-size: 5px 5px, 5px 5px;
        background-repeat: no-repeat;
    }

.pager-btn[b-k5lu2f8x35] {
    border: 1px solid #cbd5e1;
    background: #fff;
    border-radius: 8px;
    padding: 5px 12px;
    color: #334155;
    cursor: pointer;
    transition: all 0.2s ease;
}

    .pager-btn:hover:not(:disabled)[b-k5lu2f8x35] {
        border-color: #93c5fd;
        background: #f8fbff;
    }

    .pager-btn:disabled[b-k5lu2f8x35] {
        opacity: 0.55;
        cursor: not-allowed;
    }

.page-info[b-k5lu2f8x35] {
    min-width: 64px;
    height: 34px;
    padding: 0 10px;
    border: 1px solid #dbe4f0;
    border-radius: 8px;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #475569;
}

.page-current[b-k5lu2f8x35] {
    font-weight: 700;
    color: #1e3a62;
}

.page-divider[b-k5lu2f8x35] {
    color: #94a3b8;
}

@media (max-width: 768px) {
    .common-table-pager[b-k5lu2f8x35] {
        align-items: flex-start;
        flex-direction: column;
    }

    .pager-right[b-k5lu2f8x35] {
        width: 100%;
    }
}
/* /Components/Common/ConfirmDialog.razor.rz.scp.css */
.dialog-mask[b-bskotey4dg] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 1000;
}

.dialog-card[b-bskotey4dg] {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.confirm-dialog-card[b-bskotey4dg] {
    width: min(360px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
}

.dialog-header[b-bskotey4dg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e8eef8;
}

.dialog-header h3[b-bskotey4dg] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.confirm-dialog-title.confirm-dialog-accent-primary[b-bskotey4dg] {
    color: #1d4ed8;
}

.confirm-dialog-title.confirm-dialog-accent-danger[b-bskotey4dg] {
    color: #dc2626;
}

.confirm-dialog-title.confirm-dialog-accent-success[b-bskotey4dg] {
    color: #15803d;
}

.confirm-dialog-title.confirm-dialog-accent-warning[b-bskotey4dg] {
    color: #b45309;
}

.dialog-close[b-bskotey4dg] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #1d4ed8;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-bskotey4dg] {
    padding: 20px 24px;
}

.confirm-message[b-bskotey4dg] {
    margin: 0;
    color: #475569;
    font-size: 15px;
    line-height: 1.75;
}

.dialog-actions[b-bskotey4dg] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 24px 24px;
}

.btn[b-bskotey4dg] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn:disabled[b-bskotey4dg] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-bskotey4dg] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-primary:hover:not(:disabled)[b-bskotey4dg] {
    background: #2f69cf;
}

.btn-danger[b-bskotey4dg] {
    background: #dc2626;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(220, 38, 38, 0.2);
}

.btn-danger:hover:not(:disabled)[b-bskotey4dg] {
    background: #b91c1c;
}

.btn-success[b-bskotey4dg] {
    background: #16a34a;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(22, 163, 74, 0.2);
}

.btn-success:hover:not(:disabled)[b-bskotey4dg] {
    background: #15803d;
}

.btn-secondary[b-bskotey4dg] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.btn-secondary:hover:not(:disabled)[b-bskotey4dg] {
    background: #f8fafc;
}
/* /Components/Common/OperationLogDialog.razor.rz.scp.css */
.dialog-mask[b-g8422a4pxz] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.42);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1100;
    padding: 24px;
}

.dialog-card[b-g8422a4pxz] {
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18);
}

.operation-log-dialog-card[b-g8422a4pxz] {
    width: min(760px, calc(100vw - 32px));
    max-height: min(80vh, 820px);
    display: flex;
    flex-direction: column;
}

.dialog-header[b-g8422a4pxz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 20px;
    border-bottom: 1px solid #e2e8f0;
}

.dialog-header h3[b-g8422a4pxz] {
    margin: 0;
    color: #0f2c5f;
    font-size: 20px;
}

.dialog-close[b-g8422a4pxz] {
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 999px;
    background: #eff6ff;
    color: #245fcb;
    font-size: 20px;
    cursor: pointer;
}

.operation-log-dialog-body[b-g8422a4pxz] {
    padding: 18px 20px 20px;
    overflow: auto;
}

.operation-log-modal-timeline[b-g8422a4pxz] {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
}

.operation-log-modal-timeline[b-g8422a4pxz]::before {
    content: "";
    position: absolute;
    top: 4px;
    bottom: 10px;
    left: 13px;
    width: 2px;
    background: #dce6f5;
}

.operation-log-modal-timeline li[b-g8422a4pxz] {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    column-gap: 16px;
    align-items: stretch;
}

.operation-log-modal-timeline li + li[b-g8422a4pxz] {
    margin-top: 16px;
}

.operation-log-modal-marker[b-g8422a4pxz] {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 28px;
    padding-top: 4px;
}

.operation-log-modal-dot[b-g8422a4pxz] {
    position: relative;
    z-index: 1;
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #2563eb;
    box-shadow: 0 0 0 4px #eff6ff;
    flex: 0 0 auto;
}

.operation-log-modal-content[b-g8422a4pxz] {
    min-width: 0;
    padding-top: 1px;
}

.operation-log-modal-timeline strong[b-g8422a4pxz] {
    display: block;
    color: #0f2c5f;
    font-size: 14px;
    line-height: 1.5;
}

.operation-log-modal-timeline p[b-g8422a4pxz] {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.6;
    white-space: pre-wrap;
    word-break: break-word;
}

.operation-log-modal-meta[b-g8422a4pxz] {
    color: #94a3b8;
}
/* /Layout/LoginLayout.razor.rz.scp.css */
.login-layout[b-1j0ih5qp5z] {
    min-height: 100vh;
    background: #ffffff;
    padding: 0 20px 24px;
}
/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-anhahdxzp5] {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 100vh;
    background: #e8edf4;
}

main[b-anhahdxzp5] {
    flex: 1;
    min-height: 0;
    overflow: auto;
}

.sidebar[b-anhahdxzp5] {
    background: #2f73d0;
}

.top-row[b-anhahdxzp5] {
    position: relative;
    background: #ffffff;
    border-bottom: 1px solid #dde5f3;
    height: 3.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 700;
    color: #123062;
}

.top-user-shell[b-anhahdxzp5] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
}

.top-user-button[b-anhahdxzp5] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    padding: 0 12px;
    border: 1px solid #d7e3f5;
    border-radius: 8px;
    background: #ffffff;
    cursor: pointer;
}

.top-user-button:hover[b-anhahdxzp5] {
    background: #f8fbff;
}

.top-user[b-anhahdxzp5] {
    font-size: 14px;
    color: #0f2c5f;
}

.top-user-chevron[b-anhahdxzp5] {
    font-size: 12px;
    color: #5b6f93;
}

.top-user-message[b-anhahdxzp5] {
    font-size: 13px;
    font-weight: 600;
    color: #1d4ed8;
}

.user-menu-backdrop[b-anhahdxzp5] {
    position: fixed;
    inset: 0;
    border: none;
    background: transparent;
    padding: 0;
    margin: 0;
    z-index: 9;
}

.user-menu-panel[b-anhahdxzp5] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    display: grid;
    min-width: 152px;
    padding: 6px;
    border: 1px solid #dde5f3;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.12);
    z-index: 10;
}

.user-menu-item[b-anhahdxzp5] {
    height: 38px;
    padding: 0 12px;
    border: none;
    border-radius: 8px;
    background: transparent;
    text-align: left;
    font-size: 14px;
    color: #123062;
    cursor: pointer;
}

.user-menu-item:hover[b-anhahdxzp5] {
    background: #f3f7ff;
}

.user-menu-item-danger[b-anhahdxzp5] {
    color: #c62828;
}

.content[b-anhahdxzp5] {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.account-dialog-card[b-anhahdxzp5] {
    width: 460px;
    max-width: calc(100vw - 32px);
}

.account-form-grid[b-anhahdxzp5] {
    display: grid;
    gap: 12px;
}

.account-form-row[b-anhahdxzp5] {
    display: grid;
    grid-template-rows: auto 42px 18px;
    gap: 6px;
}

.account-form-row label[b-anhahdxzp5] {
    font-size: 14px;
    font-weight: 700;
    color: #123062;
}

.account-form-row input[b-anhahdxzp5] {
    width: 100%;
    height: 42px;
    padding: 0 12px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background: #ffffff;
    color: #0f172a;
    font-size: 14px;
}

.account-form-row input:focus[b-anhahdxzp5] {
    outline: none;
    border-color: #3979ea;
    box-shadow: 0 0 0 3px rgba(57, 121, 234, 0.12);
}

.account-form-row input.field-invalid[b-anhahdxzp5] {
    border-color: #ef4444;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
}

.field-error[b-anhahdxzp5] {
    height: 18px;
    line-height: 18px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 12px;
    color: #dc2626;
}

.field-error:empty[b-anhahdxzp5]::before {
    content: "";
}

.dialog-message[b-anhahdxzp5] {
    margin-bottom: 12px;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.6;
}

.dialog-message-error[b-anhahdxzp5] {
    background: #fff1f2;
    color: #b91c1c;
    border: 1px solid #fecdd3;
}

@media (min-width: 641px) {
    .page[b-anhahdxzp5] {
        flex-direction: row;
    }

    .sidebar[b-anhahdxzp5] {
        width: 176px;
        height: 100vh;
        position: sticky;
        top: 0;
        flex-shrink: 0;
    }

    .top-row[b-anhahdxzp5] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row[b-anhahdxzp5],
    article[b-anhahdxzp5] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.menu-shell[b-b5jbi3qqrv] {
    height: 100vh;
    padding: 10px 0 12px;
    color: #eaf2ff;
    background: #2f73d0;
    overflow-y: auto;
}

.menu-logo-wrap[b-b5jbi3qqrv] {
    display: flex;
    justify-content: center;
    margin: 8px 0 14px;
}

.menu-logo[b-b5jbi3qqrv] {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #d9dbe8;
    border: 2px solid #f5f7ff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.menu-logo img[b-b5jbi3qqrv] {
    width: 22px;
    height: 22px;
    object-fit: contain;
    filter: brightness(0.25) saturate(0.9);
}

.menu-group[b-b5jbi3qqrv] {
    margin-bottom: 6px;
}

.menu-group-title[b-b5jbi3qqrv] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
}

.menu-group-title-link[b-b5jbi3qqrv] {
    text-decoration: none;
}

.menu-group-title-link.active[b-b5jbi3qqrv] {
    background: #032a63;
}

.menu-link[b-b5jbi3qqrv] {
    display: block;
    padding: 10px 16px 10px 48px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: background-color .12s ease;
}

.menu-link:hover[b-b5jbi3qqrv],
.menu-group-title-link:hover[b-b5jbi3qqrv] {
    background: rgba(9, 48, 109, 0.28);
}

.menu-link.active[b-b5jbi3qqrv] {
    background: #124a9a;
}

.menu-link-l1[b-b5jbi3qqrv] {
    padding-left: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.menu-icon-img[b-b5jbi3qqrv] {
    width: 24px;
    height: 24px;
    object-fit: contain;
    filter: brightness(0) invert(1);
    opacity: 0.95;
}

    .menu-icon-img.small[b-b5jbi3qqrv] {
        width: 24px;
        height: 24px;
    }

.menu-group-last[b-b5jbi3qqrv] {
    margin-top: 4px;
}

.menu-empty[b-b5jbi3qqrv] {
    padding: 12px 18px;
    color: rgba(255, 255, 255, 0.85);
    font-size: 13px;
}

@media (max-width: 640px) {
    .menu-shell[b-b5jbi3qqrv] {
        height: auto;
    }

    .menu-group-title[b-b5jbi3qqrv] {
        font-size: 14px;
        padding: 9px 12px;
    }

    .menu-link[b-b5jbi3qqrv] {
        font-size: 13px;
        padding: 8px 10px 8px 36px;
    }

    .menu-link-l1[b-b5jbi3qqrv] {
        padding-left: 12px;
    }
}
/* /Pages/Assets/AssetCabinetListPage.razor.rz.scp.css */
.asset-page[b-tpe41q2041] {
    margin-top: 8px;
}

.asset-header h1[b-tpe41q2041] {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.asset-header p[b-tpe41q2041] {
    margin: 8px 0 16px;
    color: #64748b;
    font-size: 14px;
}

.asset-panel[b-tpe41q2041] {
    padding: 18px 18px 22px;
}

.filter-item label[b-tpe41q2041],
.form-row label[b-tpe41q2041] {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.filter-item input:not([type="checkbox"])[b-tpe41q2041],
.filter-item select[b-tpe41q2041],
.dialog-card input:not([type="checkbox"])[b-tpe41q2041],
.dialog-card select[b-tpe41q2041],
.dialog-card textarea[b-tpe41q2041] {
    width: 100%;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item input:not([type="checkbox"])[b-tpe41q2041],
.filter-item select[b-tpe41q2041],
.dialog-card input:not([type="checkbox"])[b-tpe41q2041],
.dialog-card select[b-tpe41q2041] {
    height: 44px;
}

.filter-item select[b-tpe41q2041],
.dialog-card select[b-tpe41q2041] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.list-toolbar[b-tpe41q2041] {
    margin-bottom: 18px;
    display: flex;
    align-items: end;
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

.list-toolbar .filter-item[b-tpe41q2041] {
    min-width: 220px;
    flex: 0 1 280px;
}

.btn[b-tpe41q2041] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn:disabled[b-tpe41q2041] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-tpe41q2041] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-primary:hover:not(:disabled)[b-tpe41q2041] {
    background: #2f69cf;
}

.btn-secondary[b-tpe41q2041] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.page-toast[b-tpe41q2041] {
    position: fixed;
    top: 20px;
    right: 24px;
    z-index: 1400;
    min-width: 240px;
    max-width: min(420px, calc(100vw - 32px));
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid #dce6f5;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.16);
    background: #ffffff;
    color: #1e293b;
}

.page-toast-success[b-tpe41q2041] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.btn-secondary:hover:not(:disabled)[b-tpe41q2041] {
    background: #f8fafc;
}

.alert[b-tpe41q2041] {
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff4f4;
    color: #cb3a31;
    border: 1px solid #ffd5d2;
}

.alert.success[b-tpe41q2041] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.dialog-mask[b-tpe41q2041] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 999;
}

.dialog-card[b-tpe41q2041] {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.asset-dialog-card[b-tpe41q2041] {
    width: 860px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.dialog-header[b-tpe41q2041] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e8eef8;
}

.dialog-header h3[b-tpe41q2041] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.dialog-close[b-tpe41q2041] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #1d4ed8;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-tpe41q2041] {
    padding: 20px 24px;
    overflow: auto;
}

.dialog-grid[b-tpe41q2041] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
    align-items: start;
}

.form-row[b-tpe41q2041] {
    display: grid;
    grid-template-rows: auto 44px 24px;
    align-content: start;
    min-width: 0;
    height: 92px;
    overflow: visible;
}

.photo-form-row[b-tpe41q2041] {
    grid-template-rows: auto auto 24px;
    height: auto;
    overflow: visible;
}

.full-row[b-tpe41q2041] {
    grid-column: 1 / -1;
}

.dialog-actions[b-tpe41q2041] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 24px 24px;
}

.field-error[b-tpe41q2041] {
    display: block;
    height: 24px;
    overflow: hidden;
    color: #dc2626;
    font-size: 12px;
    line-height: 24px;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.field-error:empty[b-tpe41q2041]::before {
    content: "\00a0";
}

.upload-row[b-tpe41q2041] {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.photo-slot-grid[b-tpe41q2041] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 110px));
    gap: 12px 16px;
    justify-content: flex-start;
}

.photo-slot-item[b-tpe41q2041] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.photo-slot-caption[b-tpe41q2041] {
    color: #334155;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
}

.photo-slot-card[b-tpe41q2041] {
    position: relative;
    width: 110px;
    height: 110px;
    border: 1px dashed #9caec8;
    border-radius: 10px;
    background: #ffffff;
    color: #667085;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    cursor: pointer;
}

.photo-slot-card:hover[b-tpe41q2041] {
    border-color: #3979ea;
    box-shadow: 0 8px 18px rgba(57, 121, 234, 0.14);
}

.photo-slot-file[b-tpe41q2041] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 1;
}

.photo-slot-plus[b-tpe41q2041] {
    font-size: 34px;
    line-height: 1;
    font-weight: 300;
    color: #b7c4d8;
}

.photo-slot-preview[b-tpe41q2041] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.photo-slot-remove[b-tpe41q2041] {
    position: absolute;
    right: 4px;
    top: 4px;
    width: 20px;
    height: 20px;
    min-width: 20px;
    border: none;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.65);
    color: #ffffff;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    cursor: pointer;
    z-index: 2;
}

@media (max-width: 900px) {
    .dialog-grid[b-tpe41q2041] {
        grid-template-columns: 1fr;
    }

    .list-toolbar .filter-item[b-tpe41q2041] {
        min-width: min(100%, 240px);
        flex-basis: 100%;
    }

    .photo-slot-grid[b-tpe41q2041] {
        grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
    }

    .photo-slot-card[b-tpe41q2041] {
        width: 100%;
        aspect-ratio: 1;
        height: auto;
    }
}
/* /Pages/Assets/AssetDeviceListPage.razor.rz.scp.css */
.asset-page[b-gtgr6w77pr] {
    margin-top: 8px;
}

.asset-header h1[b-gtgr6w77pr] {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.asset-header p[b-gtgr6w77pr] {
    margin: 8px 0 16px;
    color: #64748b;
    font-size: 14px;
}

.asset-panel[b-gtgr6w77pr] {
    padding: 18px 18px 22px;
}

.filter-item label[b-gtgr6w77pr],
.form-row label[b-gtgr6w77pr] {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.filter-item input:not([type="checkbox"])[b-gtgr6w77pr],
.filter-item select[b-gtgr6w77pr],
.dialog-card input:not([type="checkbox"])[b-gtgr6w77pr],
.dialog-card select[b-gtgr6w77pr],
.dialog-card textarea[b-gtgr6w77pr] {
    width: 100%;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item input:not([type="checkbox"])[b-gtgr6w77pr],
.filter-item select[b-gtgr6w77pr],
.dialog-card input:not([type="checkbox"])[b-gtgr6w77pr],
.dialog-card select[b-gtgr6w77pr] {
    height: 44px;
}

.filter-item select[b-gtgr6w77pr],
.dialog-card select[b-gtgr6w77pr] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.list-toolbar[b-gtgr6w77pr] {
    margin-bottom: 18px;
    display: flex;
    align-items: end;
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

.list-toolbar .filter-item[b-gtgr6w77pr] {
    min-width: 220px;
    flex: 0 1 280px;
}

.btn[b-gtgr6w77pr] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn:disabled[b-gtgr6w77pr] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-gtgr6w77pr] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-primary:hover:not(:disabled)[b-gtgr6w77pr] {
    background: #2f69cf;
}

.btn-secondary[b-gtgr6w77pr] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.page-toast[b-gtgr6w77pr] {
    position: fixed;
    top: 20px;
    right: 24px;
    z-index: 1400;
    min-width: 240px;
    max-width: min(420px, calc(100vw - 32px));
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid #dce6f5;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.16);
    background: #ffffff;
    color: #1e293b;
}

.page-toast-success[b-gtgr6w77pr] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.btn-secondary:hover:not(:disabled)[b-gtgr6w77pr] {
    background: #f8fafc;
}

.alert[b-gtgr6w77pr] {
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff4f4;
    color: #cb3a31;
    border: 1px solid #ffd5d2;
}

.alert.success[b-gtgr6w77pr] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.dialog-mask[b-gtgr6w77pr] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 999;
}

.dialog-card[b-gtgr6w77pr] {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.asset-dialog-card[b-gtgr6w77pr] {
    width: 860px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.dialog-header[b-gtgr6w77pr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e8eef8;
}

.dialog-header h3[b-gtgr6w77pr] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.dialog-close[b-gtgr6w77pr] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #1d4ed8;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-gtgr6w77pr] {
    padding: 20px 24px;
    overflow: auto;
}

.dialog-grid[b-gtgr6w77pr] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
    align-items: start;
}

.form-row[b-gtgr6w77pr] {
    display: grid;
    grid-template-rows: auto 44px 24px;
    align-content: start;
    min-width: 0;
    height: 92px;
    overflow: visible;
}

.photo-form-row[b-gtgr6w77pr] {
    grid-template-rows: auto auto 24px;
    height: auto;
    overflow: visible;
}

.full-row[b-gtgr6w77pr] {
    grid-column: 1 / -1;
}

.dialog-actions[b-gtgr6w77pr] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 24px 24px;
}

.field-error[b-gtgr6w77pr] {
    display: block;
    height: 24px;
    overflow: hidden;
    color: #dc2626;
    font-size: 12px;
    line-height: 24px;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.field-error:empty[b-gtgr6w77pr]::before {
    content: "\00a0";
}

.upload-row[b-gtgr6w77pr] {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.photo-slot-grid[b-gtgr6w77pr] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 110px));
    gap: 12px 16px;
    justify-content: flex-start;
}

.photo-slot-item[b-gtgr6w77pr] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.photo-slot-caption[b-gtgr6w77pr] {
    color: #334155;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
}

.photo-slot-card[b-gtgr6w77pr] {
    position: relative;
    width: 110px;
    height: 110px;
    border: 1px dashed #9caec8;
    border-radius: 10px;
    background: #ffffff;
    color: #667085;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    cursor: pointer;
}

.photo-slot-card:hover[b-gtgr6w77pr] {
    border-color: #3979ea;
    box-shadow: 0 8px 18px rgba(57, 121, 234, 0.14);
}

.photo-slot-file[b-gtgr6w77pr] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 1;
}

.photo-slot-plus[b-gtgr6w77pr] {
    font-size: 34px;
    line-height: 1;
    font-weight: 300;
    color: #b7c4d8;
}

.photo-slot-preview[b-gtgr6w77pr] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.photo-slot-remove[b-gtgr6w77pr] {
    position: absolute;
    right: 4px;
    top: 4px;
    width: 20px;
    height: 20px;
    min-width: 20px;
    border: none;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.65);
    color: #ffffff;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    cursor: pointer;
    z-index: 2;
}

@media (max-width: 900px) {
    .dialog-grid[b-gtgr6w77pr] {
        grid-template-columns: 1fr;
    }

    .list-toolbar .filter-item[b-gtgr6w77pr] {
        min-width: min(100%, 240px);
        flex-basis: 100%;
    }

    .photo-slot-grid[b-gtgr6w77pr] {
        grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
    }

    .photo-slot-card[b-gtgr6w77pr] {
        width: 100%;
        aspect-ratio: 1;
        height: auto;
    }
}
/* /Pages/Auth/Login.razor.rz.scp.css */
.login-shell[b-vgxcmuowty] {
    width: min(100%, 340px);
    margin: 0 auto;
    padding: 46px 0 0;
}

.logo-badge[b-vgxcmuowty] {
    width: 48px;
    height: 48px;
    margin: 0 auto 52px;
    border-radius: 50%;
    background: #e9e6ff;
    position: relative;
}

.logo-badge[b-vgxcmuowty]::before {
    content: "";
    position: absolute;
    left: 17px;
    top: 14px;
    width: 14px;
    height: 12px;
    border: 2px solid #2f2f39;
    border-top-width: 6px;
    border-radius: 2px;
    box-sizing: border-box;
}

.logo-badge[b-vgxcmuowty]::after {
    content: "";
    position: absolute;
    left: 21px;
    top: 10px;
    width: 6px;
    height: 4px;
    background: #2f2f39;
    border-radius: 1px 1px 0 0;
}

.title-cn[b-vgxcmuowty] {
    margin: 0;
    color: #114c9a;
    font-size: 54px;
    font-weight: 900;
    line-height: 1.08;
}

.title-en[b-vgxcmuowty] {
    margin: 6px 0 28px;
    color: #0b1526;
    font-size: 18px;
}

.field[b-vgxcmuowty] {
    margin-bottom: 14px;
}

.field label[b-vgxcmuowty] {
    display: block;
    margin-bottom: 7px;
    color: #0e1c32;
    font-size: 13px;
    font-weight: 500;
}

.field input[b-vgxcmuowty] {
    width: 100%;
    height: 36px;
    padding: 0 12px;
    border: 1px solid #dde4ef;
    border-radius: 4px;
    background: #ffffff;
    color: #16253f;
    font-size: 12px;
    outline: none;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    transition: border-color .16s ease, box-shadow .16s ease;
}

.field input.field-invalid[b-vgxcmuowty],
.code-input.field-invalid[b-vgxcmuowty] {
    border-color: #f0a2a2;
    background: #fff8f8;
    box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.08);
}

.field input:focus[b-vgxcmuowty] {
    border-color: #2f73d0;
    box-shadow: 0 0 0 2px rgba(47, 115, 208, 0.12);
}

.code-input-wrap[b-vgxcmuowty] {
    display: grid;
    grid-template-columns: 1fr 94px;
    gap: 0;
}

.code-input[b-vgxcmuowty] {
    min-width: 0;
    border-radius: 4px 0 0 4px;
}

.code-action[b-vgxcmuowty],
.submit[b-vgxcmuowty],
.switch-link[b-vgxcmuowty] {
    border: 0;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.code-action[b-vgxcmuowty] {
    background: #ffffff;
    color: #114c9a;
    border: 1px solid #dde4ef;
    border-left: none;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    border-radius: 0 4px 4px 0;
}

.submit[b-vgxcmuowty] {
    width: 100%;
    height: 36px;
    margin-top: 30px;
    background: #3272ce;
    color: #ffffff;
}

.switch-link[b-vgxcmuowty] {
    display: block;
    width: 100%;
    margin-top: 10px;
    padding: 0;
    background: transparent;
    color: #2f73d0;
    text-align: right;
}

.register-link[b-vgxcmuowty] {
    margin-top: 16px;
}

.status-msg[b-vgxcmuowty] {
    width: min(100%, 340px);
    margin: 14px auto 0;
    padding: 10px 12px;
    border-radius: 6px;
    background: #f8fbff;
    color: #1c3b6d;
    font-size: 12px;
    line-height: 1.6;
}

.field-error[b-vgxcmuowty] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

@media (max-width: 640px) {
    .login-shell[b-vgxcmuowty] {
        width: 100%;
        padding-top: 40px;
    }

    .title-cn[b-vgxcmuowty] {
        font-size: 26px;
    }

    .code-input-wrap[b-vgxcmuowty] {
        grid-template-columns: 1fr 92px;
    }
}
/* /Pages/Auth/Register.razor.rz.scp.css */
.register-shell[b-fu6th6kjka] {
    width: min(100%, 340px);
    margin: 0 auto;
    padding: 40px 0 0;
}

.register-title-cn[b-fu6th6kjka] {
    margin: 0;
    color: #114c9a;
    font-size: 54px;
    font-weight: 900;
    line-height: 1.08;
}

.register-title-en[b-fu6th6kjka] {
    margin: 6px 0 28px;
    color: #0b1526;
    font-size: 18px;
}

.register-field[b-fu6th6kjka] {
    margin-bottom: 14px;
}

.region-select-grid[b-fu6th6kjka] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.register-field label[b-fu6th6kjka] {
    display: block;
    margin-bottom: 7px;
    color: #0e1c32;
    font-size: 13px;
    font-weight: 500;
}

.register-field input[b-fu6th6kjka],
.register-field select[b-fu6th6kjka] {
    width: 100%;
    height: 36px;
    padding: 0 12px;
    border: 1px solid #dde4ef;
    border-radius: 4px;
    background: #ffffff;
    color: #16253f;
    font-size: 12px;
    outline: none;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    transition: border-color .16s ease, box-shadow .16s ease;
}

.register-field input.field-invalid[b-fu6th6kjka],
.register-field select.field-invalid[b-fu6th6kjka] {
    border-color: #f0a2a2;
    background: #fff8f8;
    box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.08);
}

.register-field input:focus[b-fu6th6kjka],
.register-field select:focus[b-fu6th6kjka] {
    border-color: #2f73d0;
    box-shadow: 0 0 0 2px rgba(47, 115, 208, 0.12);
}

.register-code-wrap[b-fu6th6kjka] {
    display: grid;
    grid-template-columns: 1fr 94px;
    gap: 0;
}

.register-code-input[b-fu6th6kjka] {
    min-width: 0;
    border-radius: 4px 0 0 4px;
}

.register-code-action[b-fu6th6kjka],
.register-submit[b-fu6th6kjka],
.register-back[b-fu6th6kjka] {
    border: 0;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.register-code-action[b-fu6th6kjka] {
    position: relative;
    background: #ffffff;
    color: #114c9a;
    border: 1px solid #dde4ef;
    border-left: none;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    border-radius: 0 4px 4px 0;
    font-size: 0;
}

.register-code-action[b-fu6th6kjka]::after {
    content: attr(data-text);
    font-size: 12px;
}

.register-code-action:disabled[b-fu6th6kjka] {
    cursor: wait;
    opacity: 0.7;
}

.register-submit[b-fu6th6kjka] {
    width: 100%;
    height: 36px;
    margin-top: 10px;
    background: #3272ce;
    color: #ffffff;
}

.register-back[b-fu6th6kjka] {
    display: block;
    width: 100%;
    margin-top: 16px;
    padding: 0;
    background: transparent;
    color: #2f73d0;
    text-align: right;
}

.page-toast[b-fu6th6kjka] {
    position: fixed;
    top: 24px;
    left: 50%;
    z-index: 1000;
    min-width: min(320px, calc(100vw - 32px));
    max-width: min(420px, calc(100vw - 32px));
    padding: 12px 16px;
    border-radius: 10px;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.18);
    transform: translateX(-50%);
    font-size: 13px;
    line-height: 1.5;
}

.page-toast-success[b-fu6th6kjka] {
    background: #f0f7ff;
    color: #114c9a;
    border: 1px solid rgba(17, 76, 154, 0.16);
}

.page-toast-error[b-fu6th6kjka] {
    background: #fff4f4;
    color: #b42318;
    border: 1px solid rgba(180, 35, 24, 0.18);
}

.field-error[b-fu6th6kjka] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

@media (max-width: 640px) {
    .register-shell[b-fu6th6kjka] {
        width: 100%;
        padding-top: 36px;
    }

    .register-title-cn[b-fu6th6kjka] {
        font-size: 26px;
    }

    .register-code-wrap[b-fu6th6kjka] {
        grid-template-columns: 1fr 92px;
    }

    .region-select-grid[b-fu6th6kjka] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/BasicData/BasicSettings.razor.rz.scp.css */
.basic-settings-page[b-z5dfxztmjw] {
    margin-top: 14px;
}

.settings-header h1[b-z5dfxztmjw] {
    margin: 0;
    font-size: 24px;
    color: #0f2c5f;
}

.settings-header p[b-z5dfxztmjw] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
}

.tab-row[b-z5dfxztmjw] {
    display: flex;
    gap: 8px;
    margin-top: 14px;
    flex-wrap: wrap;
}

.tab-item[b-z5dfxztmjw] {
    border: none;
    border-radius: 10px 10px 0 0;
    padding: 10px 18px;
    background: #d7dbe2;
    color: #1e293b;
    font-weight: 700;
    cursor: pointer;
}

.tab-item.active[b-z5dfxztmjw] {
    background: #ffffff;
    color: #0f2c5f;
    box-shadow: 0 -2px 0 #2f74d0 inset;
}
/* /Pages/BasicData/NetworkElementSettings.razor.rz.scp.css */
.network-element-page[b-unl6qyd1yi] {
    margin-top: 8px;
}

.page-header h1[b-unl6qyd1yi] {
    margin: 0 0 16px;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.panel[b-unl6qyd1yi] {
    padding: 18px 18px 22px;
}

.filter-grid[b-unl6qyd1yi] {
    display: grid;
    grid-template-columns: 220px 260px 180px 1fr;
    gap: 14px 18px;
    align-items: end;
}

.filter-item label[b-unl6qyd1yi],
.form-row label[b-unl6qyd1yi] {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.filter-item input:not([type="checkbox"])[b-unl6qyd1yi],
.filter-item select[b-unl6qyd1yi],
.dialog-card input:not([type="checkbox"])[b-unl6qyd1yi],
.dialog-card select[b-unl6qyd1yi] {
    width: 100%;
    height: 44px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 0 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item select[b-unl6qyd1yi],
.dialog-card select[b-unl6qyd1yi] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.filter-item input[type="number"][b-unl6qyd1yi],
.dialog-card input[type="number"][b-unl6qyd1yi] {
    -moz-appearance: textfield;
}

.filter-item input[type="number"][b-unl6qyd1yi]::-webkit-outer-spin-button,
.filter-item input[type="number"][b-unl6qyd1yi]::-webkit-inner-spin-button,
.dialog-card input[type="number"][b-unl6qyd1yi]::-webkit-outer-spin-button,
.dialog-card input[type="number"][b-unl6qyd1yi]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.filter-actions[b-unl6qyd1yi] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

.toolbar[b-unl6qyd1yi] {
    margin: 12px 0;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

.btn[b-unl6qyd1yi] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.btn:disabled[b-unl6qyd1yi] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-unl6qyd1yi] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-secondary[b-unl6qyd1yi] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.page-toast[b-unl6qyd1yi] {
    position: fixed;
    top: 20px;
    right: 24px;
    z-index: 1400;
    min-width: 240px;
    max-width: min(420px, calc(100vw - 32px));
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid #dce6f5;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.16);
    background: #ffffff;
    color: #1e293b;
}

.page-toast-success[b-unl6qyd1yi] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.alert[b-unl6qyd1yi] {
    margin-bottom: 14px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff4f4;
    color: #cb3a31;
    border: 1px solid #ffd5d2;
}

.alert.success[b-unl6qyd1yi] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.dialog-mask[b-unl6qyd1yi] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 999;
}

.dialog-card[b-unl6qyd1yi] {
    width: 720px;
    max-width: calc(100vw - 32px);
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.import-dialog-card[b-unl6qyd1yi] {
    width: 560px;
}

.dialog-header[b-unl6qyd1yi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e8eef8;
}

.dialog-header h3[b-unl6qyd1yi] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.dialog-close[b-unl6qyd1yi] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #1d4ed8;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-unl6qyd1yi] {
    padding: 20px 24px;
}

.dialog-grid[b-unl6qyd1yi] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
    align-items: start;
}

.form-row[b-unl6qyd1yi] {
    display: grid;
    grid-template-rows: auto minmax(44px, auto) minmax(18px, auto);
    align-content: start;
    min-width: 0;
}

.full-row[b-unl6qyd1yi] {
    grid-column: 1 / -1;
}

.dialog-actions[b-unl6qyd1yi] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 24px 24px;
}

.hint[b-unl6qyd1yi] {
    margin-top: 12px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #f1f5ff;
    color: #33558f;
    font-size: 13px;
}

.field-error[b-unl6qyd1yi] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-unl6qyd1yi] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

@media (max-width: 980px) {
    .filter-grid[b-unl6qyd1yi] {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
    }

    .filter-actions[b-unl6qyd1yi] {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }
}

@media (max-width: 720px) {
    .filter-grid[b-unl6qyd1yi],
    .dialog-grid[b-unl6qyd1yi] {
        grid-template-columns: 1fr;
    }

    .toolbar[b-unl6qyd1yi] {
        justify-content: stretch;
    }

    .btn[b-unl6qyd1yi] {
        flex: 1 1 120px;
    }
}
/* /Pages/Home/BackOfficePlaceholder.razor.rz.scp.css */
.placeholder-shell[b-ysl00c9sf0] {
    background: #ffffff;
    border-radius: 14px;
    padding: 20px 24px;
    box-shadow: 0 8px 24px rgba(16, 24, 40, 0.08);
    margin-top: 16px;
}

.placeholder-shell h1[b-ysl00c9sf0] {
    margin: 0 0 12px;
    color: #102a5a;
}

.placeholder-shell p[b-ysl00c9sf0] {
    margin: 0;
    color: #334155;
}

.placeholder-shell .route[b-ysl00c9sf0] {
    margin-top: 10px;
    color: #64748b;
    font-family: Consolas, "Courier New", monospace;
}
/* /Pages/Inventory/InventoryRegistrationPage.razor.rz.scp.css */
.asset-page[b-ygtl1e0vw2] {
    margin-top: 8px;
}

.asset-header h1[b-ygtl1e0vw2] {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.asset-header p[b-ygtl1e0vw2] {
    margin: 8px 0 16px;
    color: #64748b;
    font-size: 14px;
}

.asset-panel[b-ygtl1e0vw2] {
    padding: 18px 18px 22px;
}

.filter-grid[b-ygtl1e0vw2] {
    display: grid;
    grid-template-columns: repeat(4, minmax(180px, 1fr));
    gap: 14px 18px;
}

.filter-item label[b-ygtl1e0vw2],
.form-row label[b-ygtl1e0vw2] {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.filter-item input:not([type="checkbox"])[b-ygtl1e0vw2],
.filter-item select[b-ygtl1e0vw2],
.dialog-card input:not([type="checkbox"])[b-ygtl1e0vw2],
.dialog-card select[b-ygtl1e0vw2],
.dialog-card textarea[b-ygtl1e0vw2] {
    width: 100%;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item input:not([type="checkbox"])[b-ygtl1e0vw2],
.filter-item select[b-ygtl1e0vw2],
.dialog-card input:not([type="checkbox"])[b-ygtl1e0vw2],
.dialog-card select[b-ygtl1e0vw2] {
    height: 44px;
}

.filter-item select[b-ygtl1e0vw2],
.dialog-card select[b-ygtl1e0vw2] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.filter-item input[type="number"][b-ygtl1e0vw2],
.dialog-card input[type="number"][b-ygtl1e0vw2] {
    -moz-appearance: textfield;
}

.filter-item input[type="number"][b-ygtl1e0vw2]::-webkit-outer-spin-button,
.filter-item input[type="number"][b-ygtl1e0vw2]::-webkit-inner-spin-button,
.dialog-card input[type="number"][b-ygtl1e0vw2]::-webkit-outer-spin-button,
.dialog-card input[type="number"][b-ygtl1e0vw2]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.filter-actions[b-ygtl1e0vw2] {
    margin-top: 14px;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.btn[b-ygtl1e0vw2] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn:disabled[b-ygtl1e0vw2] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-ygtl1e0vw2] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-primary:hover:not(:disabled)[b-ygtl1e0vw2] {
    background: #2f69cf;
}

.btn-secondary[b-ygtl1e0vw2] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.btn-secondary:hover:not(:disabled)[b-ygtl1e0vw2] {
    background: #f8fafc;
}

.tab-row[b-ygtl1e0vw2] {
    margin-top: 14px;
    margin-bottom: 14px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.tab-item[b-ygtl1e0vw2] {
    border: 1px solid #c9d6ee;
    background: #f3f7ff;
    color: #2452ad;
    border-radius: 999px;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.tab-item.active[b-ygtl1e0vw2] {
    border-color: #3979ea;
    background: #3979ea;
    color: #ffffff;
}

.sub-filter[b-ygtl1e0vw2] {
    margin-bottom: 14px;
    display: grid;
    grid-template-columns: repeat(3, minmax(160px, max-content));
    gap: 12px;
    align-items: end;
}

.alert[b-ygtl1e0vw2] {
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff4f4;
    color: #cb3a31;
    border: 1px solid #ffd5d2;
}

.alert.success[b-ygtl1e0vw2] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.dialog-mask[b-ygtl1e0vw2] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 999;
}

.dialog-card[b-ygtl1e0vw2] {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.asset-dialog-card[b-ygtl1e0vw2] {
    width: 860px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.export-dialog-card[b-ygtl1e0vw2] {
    width: 860px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.import-dialog-card[b-ygtl1e0vw2] {
    width: 560px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.dialog-header[b-ygtl1e0vw2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e8eef8;
}

.dialog-header h3[b-ygtl1e0vw2] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.dialog-close[b-ygtl1e0vw2] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #1d4ed8;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-ygtl1e0vw2] {
    padding: 20px 24px;
    overflow: auto;
}

.dialog-grid[b-ygtl1e0vw2] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
}

.import-file-name[b-ygtl1e0vw2] {
    margin-top: 8px;
    color: #64748b;
    font-size: 13px;
}

.full-row[b-ygtl1e0vw2] {
    grid-column: 1 / -1;
}

.dialog-actions[b-ygtl1e0vw2] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 24px 24px;
}

.field-error[b-ygtl1e0vw2] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-ygtl1e0vw2] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

.subform-section[b-ygtl1e0vw2] {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid #e6edf8;
}

.subform-title[b-ygtl1e0vw2] {
    margin-bottom: 10px;
    color: #0f2c5f;
    font-size: 15px;
    font-weight: 700;
}

.compact-grid[b-ygtl1e0vw2] {
    gap: 12px 14px;
}

.multi-select-row[b-ygtl1e0vw2] {
    min-height: 44px;
    border-radius: 10px;
    padding: 10px 0;
    background: transparent;
    box-shadow: none;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.multi-select-item[b-ygtl1e0vw2] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #334155;
    font-size: 14px;
}

.multi-select-item input[type="checkbox"][b-ygtl1e0vw2] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #3979ea;
}

.subform-actions[b-ygtl1e0vw2] {
    margin-top: 10px;
}

.upload-row[b-ygtl1e0vw2] {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.photo-slot-grid[b-ygtl1e0vw2] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 110px));
    gap: 12px 16px;
    justify-content: flex-start;
}

.photo-slot-item[b-ygtl1e0vw2] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.photo-slot-caption[b-ygtl1e0vw2] {
    color: #334155;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
}

.photo-slot-card[b-ygtl1e0vw2] {
    position: relative;
    width: 110px;
    height: 110px;
    border: 1px dashed #9caec8;
    border-radius: 10px;
    background: #ffffff;
    color: #667085;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-size: 14px;
    overflow: hidden;
    cursor: pointer;
}

.photo-slot-card:hover[b-ygtl1e0vw2] {
    border-color: #3979ea;
    box-shadow: 0 8px 18px rgba(57, 121, 234, 0.14);
}

.photo-slot-plus[b-ygtl1e0vw2] {
    position: absolute;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    font-size: 34px;
    line-height: 1;
    font-weight: 300;
    color: #b7c4d8;
}

.photo-slot-preview[b-ygtl1e0vw2] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.photo-slot-remove[b-ygtl1e0vw2] {
    position: absolute;
    right: 4px;
    top: 4px;
    width: 20px;
    height: 20px;
    border: none;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.65);
    color: #ffffff;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    cursor: pointer;
    z-index: 2;
}


.draft-list[b-ygtl1e0vw2] {
    margin-top: 10px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    background: #f8fbff;
    padding: 8px 12px;
}

.draft-empty[b-ygtl1e0vw2] {
    color: #94a3b8;
    font-size: 13px;
    padding: 6px 2px;
}

.draft-item[b-ygtl1e0vw2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 0;
    border-bottom: 1px dashed #d6e1f3;
    color: #334155;
    font-size: 13px;
}

.draft-item:last-child[b-ygtl1e0vw2] {
    border-bottom: none;
}

.export-group[b-ygtl1e0vw2] {
    margin-bottom: 14px;
}

.export-group-title[b-ygtl1e0vw2] {
    margin-bottom: 10px;
    background: #79a3d8;
    color: #ffffff;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
}

.export-field-grid[b-ygtl1e0vw2] {
    display: grid;
    grid-template-columns: repeat(5, minmax(120px, 1fr));
    gap: 8px 14px;
}

.export-field-item[b-ygtl1e0vw2] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0f172a;
    font-size: 22px;
}

.export-field-item input[type="checkbox"][b-ygtl1e0vw2] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #3979ea;
}

@media (max-width: 1000px) {
    .filter-grid[b-ygtl1e0vw2] {
        grid-template-columns: repeat(2, minmax(160px, 1fr));
    }

    .sub-filter[b-ygtl1e0vw2] {
        grid-template-columns: 1fr;
    }

    .export-field-grid[b-ygtl1e0vw2] {
        grid-template-columns: repeat(3, minmax(120px, 1fr));
    }

    .photo-slot-grid[b-ygtl1e0vw2] {
        grid-template-columns: repeat(3, 110px);
    }
}

@media (max-width: 760px) {
    .filter-grid[b-ygtl1e0vw2],
    .dialog-grid[b-ygtl1e0vw2] {
        grid-template-columns: 1fr;
    }

    .filter-actions[b-ygtl1e0vw2] {
        justify-content: stretch;
    }

    .btn[b-ygtl1e0vw2] {
        flex: 1 1 120px;
    }

    .photo-slot-grid[b-ygtl1e0vw2] {
        grid-template-columns: repeat(2, 110px);
    }

    .export-field-grid[b-ygtl1e0vw2] {
        grid-template-columns: repeat(2, minmax(120px, 1fr));
    }

    .export-group-title[b-ygtl1e0vw2],
    .export-field-item[b-ygtl1e0vw2] {
        font-size: 16px;
    }
}
/* /Pages/Management/AccountManagement.razor.rz.scp.css */
.permission-page[b-aiopgzwkr4] {
    margin-top: 8px;
}

.permission-header h1[b-aiopgzwkr4] {
    margin: 0 0 16px;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.permission-panel[b-aiopgzwkr4] {
    padding: 18px 18px 22px;
}

.filter-grid[b-aiopgzwkr4] {
    display: grid;
    gap: 14px 18px;
    margin-bottom: 16px;
}

.role-filter-grid[b-aiopgzwkr4] {
    grid-template-columns: 220px 180px 1fr;
}

.account-filter-grid[b-aiopgzwkr4] {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
}

.filter-item label[b-aiopgzwkr4],
.form-row label[b-aiopgzwkr4] {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.filter-item input:not([type="checkbox"])[b-aiopgzwkr4],
.filter-item select[b-aiopgzwkr4],
.dialog-card input:not([type="checkbox"])[b-aiopgzwkr4],
.dialog-card select[b-aiopgzwkr4] {
    width: 100%;
    height: 44px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 0 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item select[b-aiopgzwkr4],
.dialog-card select[b-aiopgzwkr4] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.filter-item input:not([type="checkbox"])[b-aiopgzwkr4]::placeholder,
.dialog-card input:not([type="checkbox"])[b-aiopgzwkr4]::placeholder {
    color: #94a3b8;
}

.dialog-card input[type="checkbox"][b-aiopgzwkr4],
.menu-check-item input[type="checkbox"][b-aiopgzwkr4],
.switch-label input[type="checkbox"][b-aiopgzwkr4] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #3979ea;
    box-shadow: none;
    flex: 0 0 16px;
}

.filter-actions[b-aiopgzwkr4] {
    display: flex;
    align-items: end;
    justify-content: flex-end;
    gap: 12px;
}

.filter-actions.full-width[b-aiopgzwkr4] {
    grid-column: 1 / -1;
}

.btn[b-aiopgzwkr4] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn:disabled[b-aiopgzwkr4] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-aiopgzwkr4] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-primary:hover:not(:disabled)[b-aiopgzwkr4] {
    background: #2f69cf;
}

.btn-secondary[b-aiopgzwkr4] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.btn-secondary:hover:not(:disabled)[b-aiopgzwkr4] {
    background: #f8fafc;
}

.alert[b-aiopgzwkr4] {
    margin-bottom: 14px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff4f4;
    color: #cb3a31;
    border: 1px solid #ffd5d2;
}

.dialog-alert[b-aiopgzwkr4] {
    margin-bottom: 16px;
}

.field-error[b-aiopgzwkr4] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-aiopgzwkr4] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

.dialog-mask[b-aiopgzwkr4] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 999;
}

.dialog-card[b-aiopgzwkr4] {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.role-dialog-card[b-aiopgzwkr4] {
    width: 720px;
    max-width: calc(100vw - 32px);
}

.account-dialog-card[b-aiopgzwkr4] {
    width: 760px;
    max-width: calc(100vw - 32px);
}

.dialog-header[b-aiopgzwkr4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e8eef8;
}

.dialog-header h3[b-aiopgzwkr4] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.dialog-close[b-aiopgzwkr4] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #1d4ed8;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-aiopgzwkr4] {
    padding: 20px 24px;
}

.dialog-grid[b-aiopgzwkr4] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
}

.form-row.switch-row[b-aiopgzwkr4] {
    display: flex;
    align-items: center;
}

.switch-label[b-aiopgzwkr4] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 8px;
    font-size: 14px;
    color: #334155;
}

.dialog-actions[b-aiopgzwkr4] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 24px 24px;
}

.menu-checklist[b-aiopgzwkr4] {
    display: grid;
    gap: 10px;
    max-height: 300px;
    overflow: auto;
    padding: 12px 14px;
    border: 1px solid #dce6f5;
    border-radius: 12px;
    background: #f8fbff;
}

.menu-check-item[b-aiopgzwkr4] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #334155;
}

.menu-level-1[b-aiopgzwkr4] {
    padding-left: 16px;
}

.menu-level-2[b-aiopgzwkr4] {
    padding-left: 32px;
}

@media (max-width: 900px) {
    .role-filter-grid[b-aiopgzwkr4],
    .account-filter-grid[b-aiopgzwkr4],
    .dialog-grid[b-aiopgzwkr4] {
        grid-template-columns: 1fr;
    }

    .filter-actions[b-aiopgzwkr4] {
        justify-content: stretch;
        flex-wrap: wrap;
    }

    .btn[b-aiopgzwkr4] {
        flex: 1 1 120px;
    }
}
/* /Pages/Management/RoleManagement.razor.rz.scp.css */
.permission-page[b-p2hbsaf39d] {
    margin-top: 8px;
}

.permission-header h1[b-p2hbsaf39d] {
    margin: 0 0 16px;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.permission-panel[b-p2hbsaf39d] {
    padding: 18px 18px 22px;
}

.filter-grid[b-p2hbsaf39d] {
    display: grid;
    gap: 14px 18px;
    margin-bottom: 16px;
}

.role-filter-grid[b-p2hbsaf39d] {
    grid-template-columns: 220px 180px 1fr;
}

.account-filter-grid[b-p2hbsaf39d] {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
}

.filter-item label[b-p2hbsaf39d],
.form-row label[b-p2hbsaf39d] {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.filter-item input:not([type="checkbox"])[b-p2hbsaf39d],
.filter-item select[b-p2hbsaf39d],
.dialog-card input:not([type="checkbox"])[b-p2hbsaf39d],
.dialog-card select[b-p2hbsaf39d] {
    width: 100%;
    height: 44px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 0 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item select[b-p2hbsaf39d],
.dialog-card select[b-p2hbsaf39d] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.filter-item input:not([type="checkbox"])[b-p2hbsaf39d]::placeholder,
.dialog-card input:not([type="checkbox"])[b-p2hbsaf39d]::placeholder {
    color: #94a3b8;
}

.dialog-card input[type="checkbox"][b-p2hbsaf39d],
.permission-tag-item input[type="checkbox"][b-p2hbsaf39d],
.switch-label input[type="checkbox"][b-p2hbsaf39d] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #3979ea;
    box-shadow: none;
    flex: 0 0 16px;
}

.filter-actions[b-p2hbsaf39d] {
    display: flex;
    align-items: end;
    justify-content: flex-end;
    gap: 12px;
}

.filter-actions.full-width[b-p2hbsaf39d] {
    grid-column: 1 / -1;
}

.btn[b-p2hbsaf39d] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn:disabled[b-p2hbsaf39d] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-p2hbsaf39d] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-primary:hover:not(:disabled)[b-p2hbsaf39d] {
    background: #2f69cf;
}

.btn-secondary[b-p2hbsaf39d] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.btn-secondary:hover:not(:disabled)[b-p2hbsaf39d] {
    background: #f8fafc;
}

.alert[b-p2hbsaf39d] {
    margin-bottom: 14px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff4f4;
    color: #cb3a31;
    border: 1px solid #ffd5d2;
}

.dialog-alert[b-p2hbsaf39d] {
    margin-bottom: 16px;
}

.field-error[b-p2hbsaf39d] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-p2hbsaf39d] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

.field-invalid-panel[b-p2hbsaf39d] {
    background-color: rgba(255, 248, 248, 0.88) !important;
}

.dialog-mask[b-p2hbsaf39d] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 999;
}

.dialog-card[b-p2hbsaf39d] {
    background: #ffffff;
    border-radius: 22px;
    box-shadow: 0 28px 60px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.role-dialog-card[b-p2hbsaf39d] {
    width: min(1040px, calc(100vw - 40px));
    max-height: calc(100vh - 40px);
    display: flex;
    flex-direction: column;
}

.account-dialog-card[b-p2hbsaf39d] {
    width: 760px;
    max-width: calc(100vw - 32px);
}

.dialog-header[b-p2hbsaf39d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 28px 16px;
    border-bottom: 1px solid rgba(226, 232, 240, 0.92);
}

.dialog-header h3[b-p2hbsaf39d] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.dialog-close[b-p2hbsaf39d] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #f3f6fb;
    color: #475569;
    font-size: 20px;
    cursor: pointer;
}

.dialog-close:hover[b-p2hbsaf39d] {
    background: #e9eff8;
    color: #1e293b;
}

.dialog-body[b-p2hbsaf39d] {
    padding: 24px 28px;
    overflow: auto;
    flex: 1 1 auto;
}

.dialog-grid[b-p2hbsaf39d] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
}

.form-row.switch-row[b-p2hbsaf39d] {
    display: flex;
    align-items: center;
}

.switch-label[b-p2hbsaf39d] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 8px;
    font-size: 14px;
    color: #334155;
}

.dialog-actions[b-p2hbsaf39d] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 28px 24px;
    border-top: 1px solid rgba(226, 232, 240, 0.92);
    background: rgba(255, 255, 255, 0.96);
}

.permission-section[b-p2hbsaf39d] {
    margin-top: 22px;
}

.permission-section.compact[b-p2hbsaf39d] {
    margin-top: 0;
}

.permission-section-grid[b-p2hbsaf39d] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 18px;
}

.permission-section-title-row[b-p2hbsaf39d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.permission-section-title[b-p2hbsaf39d] {
    margin: 0;
    font-size: 15px;
    font-weight: 800;
    color: #0f2c5f;
}

.permission-tree-legend[b-p2hbsaf39d] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.legend-item[b-p2hbsaf39d] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 20px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.legend-group[b-p2hbsaf39d] {
    color: #475569;
    background: #f1f5f9;
}

.legend-page[b-p2hbsaf39d] {
    color: #2452ad;
    background: #eef4ff;
}

.legend-operation[b-p2hbsaf39d] {
    color: #0f766e;
    background: #ecfeff;
}

.legend-status[b-p2hbsaf39d] {
    color: #9a6700;
    background: #fff7e6;
}

.menu-tree-panel[b-p2hbsaf39d] {
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(248, 250, 252, 0.96), rgba(255, 255, 255, 0.98));
    box-shadow: inset 0 0 0 1px rgba(226, 232, 240, 0.68);
    padding: 10px 10px 10px 8px;
}

.menu-checklist[b-p2hbsaf39d] {
    display: grid;
    gap: 2px;
    max-height: 420px;
    overflow: auto;
    padding-right: 4px;
}

.card-checklist[b-p2hbsaf39d] {
    max-height: 420px;
}

.menu-check-item[b-p2hbsaf39d] {
    --level-indent: 0px;
    position: relative;
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    column-gap: 10px;
    min-height: 34px;
    padding: 6px 12px 6px calc(12px + var(--level-indent));
    border-radius: 10px;
    color: #334155;
    cursor: pointer;
    transition: background-color 0.18s ease, color 0.18s ease;
}

.menu-check-item[b-p2hbsaf39d]::before {
    content: "";
    position: absolute;
    left: calc(10px + var(--level-indent));
    top: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(148, 163, 184, 0.9);
    transform: translateY(-50%);
    opacity: 0;
}

.menu-level-0[b-p2hbsaf39d] {
    --level-indent: 0px;
}

.menu-level-1[b-p2hbsaf39d] {
    --level-indent: 18px;
}

.menu-level-2[b-p2hbsaf39d] {
    --level-indent: 36px;
}

.menu-level-3[b-p2hbsaf39d] {
    --level-indent: 54px;
}

.menu-level-4[b-p2hbsaf39d] {
    --level-indent: 72px;
}

.menu-level-1[b-p2hbsaf39d]::before,
.menu-level-2[b-p2hbsaf39d]::before,
.menu-level-3[b-p2hbsaf39d]::before,
.menu-level-4[b-p2hbsaf39d]::before {
    display: none !important;
    content: none !important;
}

.menu-check-item:hover[b-p2hbsaf39d] {
    background: rgba(241, 245, 249, 0.9);
}

.menu-check-item.is-selected[b-p2hbsaf39d] {
    background: rgba(59, 130, 246, 0.08);
    color: #0f172a;
}

.menu-check-item.is-partial[b-p2hbsaf39d] {
    background: rgba(59, 130, 246, 0.05);
    color: #0f172a;
}

.menu-check-item.is-disabled[b-p2hbsaf39d] {
    opacity: 0.56;
    cursor: not-allowed;
}

.tree-checkbox-input[b-p2hbsaf39d] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.tree-checkbox[b-p2hbsaf39d] {
    position: relative;
    width: 16px;
    height: 16px;
    border-radius: 5px;
    border: 1px solid #cbd5e1;
    background: rgba(255, 255, 255, 0.95);
    transition: border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
}

.menu-check-item:hover .tree-checkbox[b-p2hbsaf39d] {
    border-color: #94a3b8;
}

.menu-check-item.is-selected .tree-checkbox[b-p2hbsaf39d] {
    border-color: #2563eb;
    background: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08);
}

.menu-check-item.is-selected .tree-checkbox[b-p2hbsaf39d]::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border: solid #ffffff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.menu-check-item.is-partial .tree-checkbox[b-p2hbsaf39d] {
    border-color: #93c5fd;
    background: #eff6ff;
}

.menu-check-item.is-partial .tree-checkbox[b-p2hbsaf39d]::after {
    content: "";
    position: absolute;
    left: 3px;
    top: 6px;
    width: 8px;
    height: 2px;
    border-radius: 999px;
    background: #2563eb;
}

.tree-node-content[b-p2hbsaf39d] {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.tree-node-title[b-p2hbsaf39d] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    line-height: 1.35;
}

.permission-kind-group .tree-node-title[b-p2hbsaf39d] {
    font-weight: 700;
    color: #1e293b;
}

.permission-kind-page .tree-node-title[b-p2hbsaf39d] {
    font-weight: 600;
    color: #0f172a;
}

.permission-kind-operation .tree-node-title[b-p2hbsaf39d],
.permission-kind-status .tree-node-title[b-p2hbsaf39d] {
    color: #475569;
}

.tree-node-meta[b-p2hbsaf39d] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 20px;
    padding: 0 7px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.permission-kind-group .tree-node-meta[b-p2hbsaf39d] {
    color: #475569;
    background: #f1f5f9;
}

.permission-kind-page .tree-node-meta[b-p2hbsaf39d] {
    color: #2452ad;
    background: #eef4ff;
}

.permission-kind-operation .tree-node-meta[b-p2hbsaf39d] {
    color: #0f766e;
    background: #ecfeff;
}

.permission-kind-status .tree-node-meta[b-p2hbsaf39d] {
    color: #9a6700;
    background: #fff7e6;
}

.permission-tag-grid[b-p2hbsaf39d] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 12px;
    min-height: 88px;
    border: 1px solid #dce6f5;
    border-radius: 12px;
    background: #f8fbff;
}

.permission-tag-item[b-p2hbsaf39d] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: #eef4ff;
    color: #2452ad;
    font-size: 13px;
    font-weight: 600;
}

.permission-tag-item input[b-p2hbsaf39d] {
    margin: 0;
}

.status-tag-item[b-p2hbsaf39d] {
    background: #fff3dd;
    color: #b96b07;
}

@media (max-width: 900px) {
    .role-filter-grid[b-p2hbsaf39d],
    .account-filter-grid[b-p2hbsaf39d],
    .dialog-grid[b-p2hbsaf39d],
    .permission-section-grid[b-p2hbsaf39d] {
        grid-template-columns: 1fr;
    }

    .filter-actions[b-p2hbsaf39d] {
        justify-content: stretch;
        flex-wrap: wrap;
    }

    .btn[b-p2hbsaf39d] {
        flex: 1 1 120px;
    }

    .role-dialog-card[b-p2hbsaf39d] {
        width: calc(100vw - 24px);
        max-height: calc(100vh - 24px);
    }

    .dialog-body[b-p2hbsaf39d],
    .dialog-actions[b-p2hbsaf39d],
    .dialog-header[b-p2hbsaf39d] {
        padding-left: 18px;
        padding-right: 18px;
    }

    .tree-node-content[b-p2hbsaf39d] {
        gap: 8px;
    }

    .tree-node-meta[b-p2hbsaf39d] {
        display: none;
    }
}
/* /Pages/NetworkAssets/NetworkAssetManagement.razor.rz.scp.css */
.asset-page[b-iae4d5707a] {
    margin-top: 8px;
}

.asset-header h1[b-iae4d5707a] {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.asset-header p[b-iae4d5707a] {
    margin: 8px 0 16px;
    color: #64748b;
    font-size: 14px;
}

.asset-panel[b-iae4d5707a] {
    padding: 18px 18px 22px;
}

.filter-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(4, minmax(180px, 1fr));
    gap: 14px 18px;
}

.filter-item label[b-iae4d5707a],
.form-row label[b-iae4d5707a] {
    display: block;
    margin-bottom: 8px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
}

.filter-item input:not([type="checkbox"])[b-iae4d5707a],
.filter-item select[b-iae4d5707a],
.dialog-card input:not([type="checkbox"])[b-iae4d5707a],
.dialog-card select[b-iae4d5707a],
.dialog-card textarea[b-iae4d5707a] {
    width: 100%;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item input:not([type="checkbox"])[b-iae4d5707a],
.filter-item select[b-iae4d5707a],
.dialog-card input:not([type="checkbox"])[b-iae4d5707a],
.dialog-card select[b-iae4d5707a] {
    height: 44px;
}

.filter-item select[b-iae4d5707a],
.dialog-card select[b-iae4d5707a] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.filter-item input[type="number"][b-iae4d5707a],
.dialog-card input[type="number"][b-iae4d5707a] {
    -moz-appearance: textfield;
}

.filter-item input[type="number"][b-iae4d5707a]::-webkit-outer-spin-button,
.filter-item input[type="number"][b-iae4d5707a]::-webkit-inner-spin-button,
.dialog-card input[type="number"][b-iae4d5707a]::-webkit-outer-spin-button,
.dialog-card input[type="number"][b-iae4d5707a]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.filter-actions[b-iae4d5707a] {
    margin-top: 14px;
    margin-bottom: 18px;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.list-toolbar[b-iae4d5707a] {
    margin-top: 14px;
    margin-bottom: 18px;
    display: flex;
    align-items: end;
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

.list-toolbar .filter-item[b-iae4d5707a] {
    min-width: 220px;
    flex: 0 1 280px;
}

.btn[b-iae4d5707a] {
    min-width: 96px;
    height: 40px;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn:disabled[b-iae4d5707a] {
    opacity: 0.65;
    cursor: not-allowed;
}

.btn-primary[b-iae4d5707a] {
    background: #3979ea;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(57, 121, 234, 0.2);
}

.btn-primary:hover:not(:disabled)[b-iae4d5707a] {
    background: #2f69cf;
}

.btn-secondary[b-iae4d5707a] {
    background: #ffffff;
    border-color: #b8c5db;
    color: #334155;
}

.btn-secondary:hover:not(:disabled)[b-iae4d5707a] {
    background: #f8fafc;
}

.btn-danger[b-iae4d5707a] {
    background: #d83f45;
    color: #ffffff;
    box-shadow: 0 8px 16px rgba(216, 63, 69, 0.18);
}

.btn-danger:hover:not(:disabled)[b-iae4d5707a] {
    background: #bd2f35;
}

.tab-row[b-iae4d5707a] {
    margin-top: 14px;
    margin-bottom: 14px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.tab-item[b-iae4d5707a] {
    border: 1px solid #c9d6ee;
    background: #f3f7ff;
    color: #2452ad;
    border-radius: 999px;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.tab-item.active[b-iae4d5707a] {
    border-color: #3979ea;
    background: #3979ea;
    color: #ffffff;
}

.sub-filter[b-iae4d5707a] {
    margin-bottom: 14px;
    display: grid;
    grid-template-columns: repeat(3, minmax(160px, max-content));
    gap: 12px;
    align-items: end;
}

.alert[b-iae4d5707a] {
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #fff4f4;
    color: #cb3a31;
    border: 1px solid #ffd5d2;
}

.alert.success[b-iae4d5707a] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.dialog-mask[b-iae4d5707a] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 999;
}

.dialog-card[b-iae4d5707a] {
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.16);
    overflow: hidden;
}

.asset-dialog-card[b-iae4d5707a] {
    width: 860px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.export-dialog-card[b-iae4d5707a] {
    width: 860px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.import-dialog-card[b-iae4d5707a] {
    width: 560px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 48px);
    display: flex;
    flex-direction: column;
}

.workflow-dialog-card[b-iae4d5707a] {
    width: min(980px, 96vw);
    max-height: calc(100vh - 36px);
    display: flex;
    flex-direction: column;
}

.workflow-opinion-card[b-iae4d5707a] {
    width: min(620px, 94vw);
}

.dialog-header[b-iae4d5707a] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid #e8eef8;
}

.dialog-header h3[b-iae4d5707a] {
    margin: 0;
    font-size: 22px;
    color: #0f2c5f;
}

.dialog-close[b-iae4d5707a] {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #1d4ed8;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-iae4d5707a] {
    padding: 20px 24px;
    overflow: auto;
}

.workflow-actions[b-iae4d5707a] {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    padding: 16px 24px 10px;
}

.workflow-body[b-iae4d5707a] {
    padding: 0 24px 24px;
    overflow: auto;
}

.workflow-steps[b-iae4d5707a] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 12px;
    color: #64748b;
    font-size: 13px;
}

.workflow-step[b-iae4d5707a] {
    padding: 4px 0;
    border-bottom: 1px solid #cbd5e1;
}

.workflow-step.active[b-iae4d5707a] {
    color: #2563eb;
    border-color: #2563eb;
    font-weight: 700;
}

.workflow-info-panel[b-iae4d5707a] {
    border: 1px solid #8eb5e6;
    border-radius: 8px;
    margin-top: 14px;
    overflow: hidden;
}

.workflow-panel-title[b-iae4d5707a] {
    padding: 9px 12px;
    background: #7fa6d8;
    color: #ffffff;
    font-weight: 700;
}

.workflow-info-panel h4[b-iae4d5707a] {
    margin: 12px 14px 6px;
    color: #0f172a;
    font-size: 18px;
}

.workflow-info-panel h4 small[b-iae4d5707a] {
    margin-left: 18px;
    font-size: 12px;
    font-weight: 500;
}

.workflow-address[b-iae4d5707a] {
    margin: 0 14px 10px;
    color: #334155;
    font-size: 13px;
}

.workflow-info-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: 110px 1fr 110px 1fr;
    gap: 10px 14px;
    padding: 10px 14px 14px;
    font-size: 13px;
}

.workflow-info-grid span[b-iae4d5707a] {
    color: #0f172a;
    font-weight: 700;
}

.workflow-info-grid strong[b-iae4d5707a] {
    color: #111827;
    font-weight: 600;
}

.dialog-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
    align-items: start;
}

.form-row[b-iae4d5707a] {
    display: grid;
    grid-template-rows: auto 44px 24px;
    align-content: start;
    min-width: 0;
    height: 92px;
    overflow: visible;
}

.grouped-form-row[b-iae4d5707a] {
    display: grid;
    grid-template-rows: auto auto 24px;
    align-content: start;
    min-width: 0;
}

.composite-form-row[b-iae4d5707a] {
    display: grid;
    align-items: start;
    min-width: 0;
}

.photo-form-row[b-iae4d5707a] {
    grid-template-rows: auto auto 24px;
    height: auto;
    overflow: visible;
}

.import-file-name[b-iae4d5707a] {
    margin-top: 8px;
    color: #64748b;
    font-size: 13px;
}

.full-row[b-iae4d5707a] {
    grid-column: 1 / -1;
}

.region-inline-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    align-items: start;
}

.dialog-actions[b-iae4d5707a] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 0 24px 24px;
}

.field-error[b-iae4d5707a] {
    display: block;
    height: 24px;
    overflow: hidden;
    color: #dc2626;
    font-size: 12px;
    line-height: 24px;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.field-error:empty[b-iae4d5707a]::before {
    content: "\00a0";
}

.field-hint[b-iae4d5707a] {
    color: #64748b;
    font-size: 12px;
    line-height: 1.4;
}

.field-invalid[b-iae4d5707a] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

.subform-section[b-iae4d5707a] {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid #e6edf8;
}

.subform-title[b-iae4d5707a] {
    margin-bottom: 10px;
    color: #0f2c5f;
    font-size: 15px;
    font-weight: 700;
}

.compact-grid[b-iae4d5707a] {
    gap: 12px 14px;
}

.site-form-grid[b-iae4d5707a] {
    grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(170px, 0.65fr);
    gap: 12px 14px;
    align-items: start;
}

.asset-compact-grid[b-iae4d5707a] {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    gap: 12px 14px;
    align-items: start;
}

.device-compact-grid[b-iae4d5707a] {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
}

.span-2[b-iae4d5707a] {
    grid-column: span 2;
}

.address-field[b-iae4d5707a] {
    grid-column: auto;
}

.address-field-wide[b-iae4d5707a] {
    grid-column: span 2;
}

.address-coordinate-row[b-iae4d5707a] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(180px, 0.75fr);
    gap: 14px;
    align-items: start;
}

.transfer-share-owner-row[b-iae4d5707a] {
    display: grid;
    grid-template-columns: minmax(140px, 0.8fr) minmax(220px, 1.2fr) minmax(180px, 1fr);
    gap: 14px;
    align-items: start;
}

.coordinate-field[b-iae4d5707a],
.compact-field[b-iae4d5707a] {
    min-width: 0;
}

.coordinate-field input[readonly][b-iae4d5707a] {
    background: #f8fbff;
    color: #475569;
    font-variant-numeric: tabular-nums;
}

.asset-draft-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
    align-items: start;
}

.asset-draft-grid .subform-section[b-iae4d5707a] {
    min-width: 0;
}

.asset-draft-grid .subform-actions[b-iae4d5707a] {
    margin-top: 0;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.compact-field-row[b-iae4d5707a] {
    display: grid;
    grid-template-columns: 110px 130px minmax(150px, 1fr) minmax(150px, 1fr);
    gap: 12px 14px;
    align-items: start;
}

.compact-field-row .form-row[b-iae4d5707a] {
    min-width: 0;
}

.asset-list-actions[b-iae4d5707a] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.multi-select-row[b-iae4d5707a] {
    min-height: 44px;
    border-radius: 10px;
    padding: 10px 0;
    background: transparent;
    box-shadow: none;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.multi-select-item[b-iae4d5707a] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #334155;
    font-size: 14px;
}

.multi-select-item input[type="checkbox"][b-iae4d5707a] {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #3979ea;
}

.subform-actions[b-iae4d5707a] {
    margin-top: 10px;
}

.upload-row[b-iae4d5707a] {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.spot-check-summary-card[b-iae4d5707a] {
    margin-bottom: 18px;
    padding: 16px 18px;
    border: 1px solid #dbe7fb;
    border-radius: 12px;
    background: #f8fbff;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.spot-check-summary-card-emphasis[b-iae4d5707a] {
    margin-top: 20px;
    border-color: #f5c26b;
    background: #fffaf0;
    box-shadow: 0 10px 24px rgba(245, 158, 11, 0.12);
}

.spot-check-summary-card-emphasis .spot-check-summary-header h4[b-iae4d5707a] {
    color: #9a3412;
}

.spot-check-summary-card-emphasis .spot-check-summary-header p[b-iae4d5707a] {
    color: #9a3412;
}

.draft-opinion-callout[b-iae4d5707a] {
    margin-top: 0;
    padding: 10px 12px;
    border-left: 4px solid #f59e0b;
    border-radius: 8px;
    background: #fff7ed;
}

.draft-opinion-title[b-iae4d5707a] {
    display: block;
    margin-bottom: 6px;
    color: #9a3412;
    font-size: 12px;
    font-weight: 700;
}

.draft-opinion-callout p[b-iae4d5707a] {
    margin: 0;
    color: #7c2d12;
    font-size: 13px;
    line-height: 1.6;
    white-space: pre-wrap;
    word-break: break-word;
}

.spot-check-summary-header h4[b-iae4d5707a] {
    margin: 0;
    color: #0f2c5f;
    font-size: 16px;
}

.spot-check-summary-header p[b-iae4d5707a] {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.5;
}

.spot-check-summary-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.spot-check-summary-grid-single[b-iae4d5707a] {
    grid-template-columns: minmax(0, 1fr);
}

.spot-check-summary-grid div[b-iae4d5707a],
.spot-check-summary-item[b-iae4d5707a] {
    min-width: 0;
    padding: 12px 14px;
    border-radius: 10px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
}

.spot-check-summary-grid span[b-iae4d5707a],
.spot-check-summary-title[b-iae4d5707a] {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 6px;
}

.spot-check-summary-grid strong[b-iae4d5707a],
.spot-check-summary-item strong[b-iae4d5707a] {
    display: block;
    color: #0f172a;
    font-size: 14px;
    line-height: 1.5;
}

.spot-check-summary-list[b-iae4d5707a] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.spot-check-summary-item p[b-iae4d5707a] {
    margin: 6px 0 0;
    color: #475569;
    font-size: 13px;
    line-height: 1.6;
    white-space: pre-wrap;
    word-break: break-word;
}

.photo-slot-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 110px));
    gap: 12px 16px;
    justify-content: flex-start;
}

.photo-slot-item[b-iae4d5707a] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.photo-slot-caption[b-iae4d5707a] {
    color: #334155;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
}

.photo-slot-card[b-iae4d5707a] {
    position: relative;
    width: 110px;
    height: 110px;
    border: 1px dashed #9caec8;
    border-radius: 10px;
    background: #ffffff;
    color: #667085;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-size: 14px;
    overflow: hidden;
    cursor: pointer;
}

.photo-slot-card:hover[b-iae4d5707a] {
    border-color: #3979ea;
    box-shadow: 0 8px 18px rgba(57, 121, 234, 0.14);
}

.photo-slot-card.is-uploading[b-iae4d5707a] {
    cursor: wait;
}

.photo-slot-upload-mask[b-iae4d5707a] {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px;
    background: rgba(15, 23, 42, 0.56);
    color: #fff;
    pointer-events: none;
}

.photo-slot-spinner[b-iae4d5707a] {
    width: 24px;
    height: 24px;
    border: 3px solid rgba(255, 255, 255, 0.42);
    border-top-color: #fff;
    border-radius: 50%;
    animation: photo-slot-spin-b-iae4d5707a 0.8s linear infinite;
}

.photo-slot-upload-text[b-iae4d5707a] {
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
}

.photo-slot-progress[b-iae4d5707a] {
    width: 72px;
    height: 4px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.32);
}

.photo-slot-progress span[b-iae4d5707a] {
    display: block;
    width: 42%;
    height: 100%;
    border-radius: inherit;
    background: #fff;
    animation: photo-slot-progress-b-iae4d5707a 1s ease-in-out infinite;
}

@keyframes photo-slot-spin-b-iae4d5707a {
    to {
        transform: rotate(360deg);
    }
}

@keyframes photo-slot-progress-b-iae4d5707a {
    0% {
        transform: translateX(-120%);
    }
    100% {
        transform: translateX(240%);
    }
}

.photo-slot-plus[b-iae4d5707a] {
    position: absolute;
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    font-size: 34px;
    line-height: 1;
    font-weight: 300;
    color: #b7c4d8;
}

.photo-slot-preview[b-iae4d5707a] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.photo-slot-remove[b-iae4d5707a] {
    position: absolute;
    right: 4px;
    top: 4px;
    width: 20px;
    height: 20px;
    border: none;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.65);
    color: #ffffff;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
    cursor: pointer;
    z-index: 2;
}


.draft-list[b-iae4d5707a] {
    margin-top: 10px;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    background: #f8fbff;
    padding: 10px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 10px;
}

.draft-empty[b-iae4d5707a] {
    color: #94a3b8;
    font-size: 13px;
    padding: 6px 2px;
}

.draft-item[b-iae4d5707a] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid #dce6f5;
    border-radius: 8px;
    background: #fff;
    color: #334155;
    font-size: 13px;
}

.draft-item:last-child[b-iae4d5707a] {
    border-bottom: 1px solid #dce6f5;
}

.draft-item-main[b-iae4d5707a] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
}

.draft-actions[b-iae4d5707a] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 0 0 auto;
    padding-top: 1px;
}

.asset-summary[b-iae4d5707a] {
    min-width: 0;
    flex: 1 1 auto;
}

.asset-summary-header[b-iae4d5707a] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    line-height: 18px;
}

.asset-summary-header strong[b-iae4d5707a] {
    color: #0f172a;
    font-size: 14px;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.asset-summary-header span[b-iae4d5707a] {
    color: #0f172a;
    font-weight: 700;
    white-space: nowrap;
}

.asset-summary-header em[b-iae4d5707a] {
    display: inline-flex;
    align-items: center;
    height: 16px;
    padding: 0 9px;
    border-radius: 999px;
    background: #20b486;
    color: #fff;
    font-size: 11px;
    font-style: normal;
    font-weight: 700;
    line-height: 16px;
    white-space: nowrap;
}

.asset-summary-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3px 28px;
    margin-top: 4px;
    color: #26364d;
    font-size: 12px;
    line-height: 18px;
}

.asset-summary-grid span[b-iae4d5707a] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.export-group[b-iae4d5707a] {
    margin-bottom: 14px;
}

.export-group-title[b-iae4d5707a] {
    margin-bottom: 10px;
    background: #79a3d8;
    color: #ffffff;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
}

.export-field-grid[b-iae4d5707a] {
    display: grid;
    grid-template-columns: repeat(5, minmax(120px, 1fr));
    gap: 8px 14px;
}

.export-field-item[b-iae4d5707a] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0f172a;
    font-size: 16px;
}

.export-field-item input[type="checkbox"][b-iae4d5707a] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #3979ea;
}

.site-info-dialog-card[b-iae4d5707a] {
    width: min(920px, 94vw);
}

.readonly-value[b-iae4d5707a] {
    min-height: 44px;
    display: flex;
    align-items: center;
    padding: 10px 12px;
    border: 1px solid #c9d7ee;
    border-radius: 10px;
    background: #f8fbff;
    color: #0f172a;
}

.operation-log-panel[b-iae4d5707a] {
    margin-top: 20px;
    border: 1px solid #7aa4d8;
    border-radius: 12px;
    overflow: hidden;
}

.operation-log-title[b-iae4d5707a] {
    padding: 10px 14px;
    background: linear-gradient(90deg, #6f96c9, #8fb1dd);
    color: #fff;
    font-size: 20px;
    font-weight: 700;
}

.operation-log-timeline[b-iae4d5707a] {
    position: relative;
    padding: 18px 20px 8px 20px;
}

.operation-log-timeline[b-iae4d5707a]::before {
    content: "";
    position: absolute;
    left: 28px;
    top: 24px;
    bottom: 24px;
    width: 2px;
    background: #b8cef0;
}

.operation-log-item[b-iae4d5707a] {
    position: relative;
    display: flex;
    gap: 18px;
    padding-bottom: 18px;
}

.operation-log-dot[b-iae4d5707a] {
    position: relative;
    z-index: 1;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin-top: 6px;
    border-radius: 999px;
    background: #4a88ea;
    box-shadow: 0 0 0 4px #eef5ff;
}

.operation-log-content[b-iae4d5707a] {
    flex: 1;
}

.operation-log-content strong[b-iae4d5707a] {
    display: block;
    margin-bottom: 4px;
    color: #0f172a;
    font-size: 16px;
}

.operation-log-action[b-iae4d5707a] {
    color: #111827;
    font-size: 15px;
    font-weight: 600;
}

.operation-log-detail[b-iae4d5707a] {
    margin: 8px 0 6px;
    white-space: pre-wrap;
    font-family: inherit;
    color: #e53e3e;
    font-size: 14px;
    line-height: 1.6;
}

.operation-log-time[b-iae4d5707a] {
    color: #94a3b8;
    font-size: 13px;
}

@media (max-width: 1000px) {
    .filter-grid[b-iae4d5707a] {
        grid-template-columns: repeat(2, minmax(160px, 1fr));
    }

    .site-form-grid[b-iae4d5707a],
    .asset-compact-grid[b-iae4d5707a],
    .device-compact-grid[b-iae4d5707a] {
        grid-template-columns: repeat(2, minmax(150px, 1fr));
    }

    .asset-draft-grid[b-iae4d5707a] {
        grid-template-columns: 1fr;
    }

    .compact-field-row[b-iae4d5707a] {
        grid-template-columns: repeat(2, minmax(150px, 1fr));
    }

    .sub-filter[b-iae4d5707a] {
        grid-template-columns: 1fr;
    }

    .export-field-grid[b-iae4d5707a] {
        grid-template-columns: repeat(3, minmax(120px, 1fr));
    }

    .photo-slot-grid[b-iae4d5707a] {
        grid-template-columns: repeat(3, 110px);
    }

    .site-info-dialog-card[b-iae4d5707a] {
        width: min(96vw, 96vw);
    }
}

@media (max-width: 760px) {
    .filter-grid[b-iae4d5707a],
    .dialog-grid[b-iae4d5707a] {
        grid-template-columns: 1fr;
    }

    .span-2[b-iae4d5707a],
    .address-field[b-iae4d5707a],
    .address-field-wide[b-iae4d5707a],
    .full-row[b-iae4d5707a],
    .compact-field-row[b-iae4d5707a] {
        grid-column: 1 / -1;
    }

    .compact-field-row[b-iae4d5707a] {
        grid-template-columns: 1fr;
    }

    .address-coordinate-row[b-iae4d5707a] {
        grid-template-columns: 1fr;
    }

    .transfer-share-owner-row[b-iae4d5707a] {
        grid-template-columns: 1fr;
    }

    .region-inline-grid[b-iae4d5707a] {
        grid-template-columns: 1fr;
    }

    .filter-actions[b-iae4d5707a] {
        justify-content: stretch;
    }

    .btn[b-iae4d5707a] {
        flex: 1 1 120px;
    }

    .photo-slot-grid[b-iae4d5707a] {
        grid-template-columns: repeat(2, 110px);
    }

    .export-field-grid[b-iae4d5707a] {
        grid-template-columns: repeat(2, minmax(120px, 1fr));
    }

    .export-group-title[b-iae4d5707a],
    .export-field-item[b-iae4d5707a] {
        font-size: 16px;
    }
}
/* /Pages/SpotCheck/OnSiteSpotCheck.razor.rz.scp.css */
.asset-page[b-ksl3834thr] {
    margin-top: 8px;
}

.spot-check-page[b-ksl3834thr] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.spot-check-header[b-ksl3834thr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
}

.asset-header h1[b-ksl3834thr] {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.asset-header p[b-ksl3834thr] {
    margin: 8px 0 16px;
    color: #64748b;
    font-size: 14px;
}

.asset-header-copy[b-ksl3834thr] {
    min-width: 0;
}

.summary-grid[b-ksl3834thr] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.summary-card[b-ksl3834thr] {
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 126px;
    background:
        radial-gradient(circle at top right, rgba(47, 116, 208, 0.13), transparent 44%),
        linear-gradient(180deg, #f9fbff 0%, #eef5ff 100%);
}

.summary-label[b-ksl3834thr] {
    color: #64748b;
    font-size: 13px;
    font-weight: 700;
}

.summary-card strong[b-ksl3834thr] {
    color: #0f2c5f;
    font-size: 34px;
    line-height: 1;
}

.summary-tip[b-ksl3834thr] {
    margin-top: auto;
    color: #6b7a90;
    font-size: 13px;
}

.spot-check-layout[b-ksl3834thr] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 16px;
    min-height: 0;
}

.spot-check-main[b-ksl3834thr],
.workflow-panel[b-ksl3834thr] {
    padding: 18px;
}

.filter-grid[b-ksl3834thr] {
    display: grid;
    grid-template-columns: minmax(260px, 1.2fr) 180px auto;
    gap: 12px;
    margin-bottom: 14px;
    align-items: end;
}

.filter-item label[b-ksl3834thr] {
    display: block;
    margin-bottom: 6px;
    color: #334155;
    font-size: 14px;
    font-weight: 700;
}

.filter-item input[b-ksl3834thr],
.filter-item select[b-ksl3834thr],
.form-row input[b-ksl3834thr],
.form-row select[b-ksl3834thr],
.form-row textarea[b-ksl3834thr] {
    width: 100%;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 0 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.filter-item input[b-ksl3834thr],
.filter-item select[b-ksl3834thr],
.form-row input[b-ksl3834thr],
.form-row select[b-ksl3834thr] {
    height: 44px;
}

.form-row textarea[b-ksl3834thr] {
    min-height: 108px;
    padding: 12px 14px;
    resize: vertical;
}

.filter-item select[b-ksl3834thr],
.form-row select[b-ksl3834thr] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.filter-actions[b-ksl3834thr] {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

.btn[b-ksl3834thr] {
    border: none;
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.btn-primary[b-ksl3834thr] {
    background: linear-gradient(135deg, #2f74d0 0%, #1957bf 100%);
    color: #ffffff;
}

.btn-secondary[b-ksl3834thr] {
    background: #e2e8f0;
    color: #1e293b;
}

.btn:disabled[b-ksl3834thr] {
    opacity: 0.65;
    cursor: not-allowed;
}

.alert[b-ksl3834thr] {
    margin-bottom: 12px;
    background: #fff1f2;
    color: #b42318;
    border: 1px solid #fecdd3;
    border-radius: 10px;
    padding: 10px 12px;
    font-size: 14px;
}

.loading[b-ksl3834thr] {
    color: #64748b;
    font-size: 14px;
    padding: 12px 2px;
}

.workflow-header h2[b-ksl3834thr] {
    margin: 0;
    color: #0f2c5f;
    font-size: 20px;
}

.workflow-header p[b-ksl3834thr] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.6;
}

.workflow-list[b-ksl3834thr] {
    list-style: none;
    margin: 18px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.workflow-item[b-ksl3834thr] {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding: 12px;
    border: 1px solid #d7e4f7;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.78);
}

.workflow-index[b-ksl3834thr] {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #dcebff 0%, #bfd8ff 100%);
    color: #1f4fa4;
    font-weight: 800;
}

.workflow-item strong[b-ksl3834thr] {
    color: #0f2c5f;
    font-size: 14px;
}

.workflow-item p[b-ksl3834thr] {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.6;
}

.dialog-mask[b-ksl3834thr] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999;
}

.spot-check-dialog[b-ksl3834thr] {
    width: 560px;
    max-width: calc(100vw - 24px);
    background: #ffffff;
    border-radius: 16px;
    padding: 18px;
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.22);
}

.dialog-header[b-ksl3834thr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.dialog-header h3[b-ksl3834thr] {
    margin: 0;
    color: #0f2c5f;
}

.dialog-close[b-ksl3834thr] {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 50%;
    background: #eef4ff;
    color: #0f2c5f;
    font-size: 18px;
    cursor: pointer;
}

.dialog-body[b-ksl3834thr] {
    margin-top: 14px;
}

.dialog-tip[b-ksl3834thr] {
    margin-bottom: 14px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px;
    border-radius: 12px;
    background: linear-gradient(180deg, #f5f9ff 0%, #edf4ff 100%);
    color: #4c5f7d;
    font-size: 13px;
}

.form-row[b-ksl3834thr] {
    margin-bottom: 14px;
}

.form-row label[b-ksl3834thr] {
    display: block;
    margin-bottom: 6px;
    color: #334155;
    font-size: 14px;
    font-weight: 700;
}

.dialog-actions[b-ksl3834thr] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 18px;
}

.field-error[b-ksl3834thr] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
}

.field-invalid[b-ksl3834thr] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

@media (max-width: 1200px) {
    .spot-check-layout[b-ksl3834thr] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .summary-grid[b-ksl3834thr] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .filter-grid[b-ksl3834thr] {
        grid-template-columns: 1fr;
    }

    .filter-actions[b-ksl3834thr] {
        justify-content: flex-start;
        flex-wrap: wrap;
    }
}

@media (max-width: 640px) {
    .spot-check-header[b-ksl3834thr] {
        flex-direction: column;
        align-items: stretch;
    }

    .summary-grid[b-ksl3834thr] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/SpotCheck/OnSiteSpotCheckDetail.razor.rz.scp.css */
.spot-check-detail-page[b-zxcodipe7j] {
    margin-top: 14px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.detail-header[b-zxcodipe7j] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.back-link[b-zxcodipe7j] {
    width: fit-content;
    border: none;
    background: transparent;
    color: #245fcb;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    padding: 0;
}

.detail-header-main[b-zxcodipe7j] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
}

.eyebrow[b-zxcodipe7j] {
    margin: 0 0 8px;
    color: #2f74d0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.detail-header-main h1[b-zxcodipe7j] {
    margin: 0;
    color: #0f2c5f;
    font-size: 28px;
}

.detail-subtitle[b-zxcodipe7j] {
    margin: 10px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.7;
}

.header-actions[b-zxcodipe7j] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.btn[b-zxcodipe7j] {
    border: none;
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}

.btn-primary[b-zxcodipe7j] {
    background: linear-gradient(135deg, #2f74d0 0%, #1957bf 100%);
    color: #ffffff;
}

.btn-secondary[b-zxcodipe7j] {
    background: #e2e8f0;
    color: #1e293b;
}

.btn:disabled[b-zxcodipe7j] {
    opacity: 0.65;
    cursor: not-allowed;
}

.status-pill[b-zxcodipe7j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
}

.status-pill.pending[b-zxcodipe7j],
.stage-highlight.pending[b-zxcodipe7j] {
    background: rgba(245, 158, 11, 0.12);
    color: #b45309;
}

.status-pill.progress[b-zxcodipe7j],
.stage-highlight.progress[b-zxcodipe7j] {
    background: rgba(47, 116, 208, 0.12);
    color: #1d4ed8;
}

.status-pill.completed[b-zxcodipe7j],
.stage-highlight.completed[b-zxcodipe7j] {
    background: rgba(34, 197, 94, 0.12);
    color: #15803d;
}

.alert[b-zxcodipe7j],
.loading-panel[b-zxcodipe7j],
.empty-panel[b-zxcodipe7j] {
    padding: 14px 16px;
    border-radius: 14px;
}

.alert[b-zxcodipe7j] {
    background: #fff1f2;
    color: #b42318;
    border: 1px solid #fecdd3;
    font-size: 14px;
}

.loading-panel[b-zxcodipe7j],
.empty-panel[b-zxcodipe7j] {
    color: #475569;
}

.empty-panel h2[b-zxcodipe7j] {
    margin: 0;
    color: #0f2c5f;
}

.empty-panel p[b-zxcodipe7j] {
    margin: 8px 0 16px;
    color: #64748b;
}

.overview-grid[b-zxcodipe7j] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.overview-card[b-zxcodipe7j] {
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 126px;
    background:
        radial-gradient(circle at top right, rgba(47, 116, 208, 0.13), transparent 44%),
        linear-gradient(180deg, #f9fbff 0%, #eef5ff 100%);
}

.overview-label[b-zxcodipe7j] {
    color: #64748b;
    font-size: 13px;
    font-weight: 700;
}

.overview-card strong[b-zxcodipe7j] {
    color: #0f2c5f;
    font-size: 28px;
    line-height: 1.3;
}

.overview-meta[b-zxcodipe7j] {
    margin-top: auto;
    color: #6b7a90;
    font-size: 13px;
}

.detail-layout[b-zxcodipe7j] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 16px;
}

.detail-main[b-zxcodipe7j],
.detail-side[b-zxcodipe7j] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.detail-card[b-zxcodipe7j] {
    padding: 18px;
}

.section-heading[b-zxcodipe7j] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.section-heading h2[b-zxcodipe7j] {
    margin: 0;
    color: #0f2c5f;
    font-size: 20px;
}

.section-heading p[b-zxcodipe7j] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.6;
}

.form-grid[b-zxcodipe7j] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.form-row.full-width[b-zxcodipe7j] {
    grid-column: 1 / -1;
}

.form-row label[b-zxcodipe7j] {
    display: block;
    margin-bottom: 6px;
    color: #334155;
    font-size: 14px;
    font-weight: 700;
}

.form-row input[b-zxcodipe7j],
.form-row select[b-zxcodipe7j],
.form-row textarea[b-zxcodipe7j] {
    width: 100%;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
}

.form-row input[b-zxcodipe7j],
.form-row select[b-zxcodipe7j] {
    height: 44px;
    padding: 0 14px;
}

.form-row textarea[b-zxcodipe7j] {
    min-height: 108px;
    padding: 12px 14px;
    resize: vertical;
}

.form-row select[b-zxcodipe7j] {
    padding-right: 42px;
    appearance: none;
    -webkit-appearance: none;
    background-image:
        linear-gradient(45deg, transparent 50%, #64748b 50%),
        linear-gradient(135deg, #64748b 50%, transparent 50%);
    background-position:
        calc(100% - 16px) calc(50% - 2px),
        calc(100% - 11px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

.field-error[b-zxcodipe7j] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
}

.field-invalid[b-zxcodipe7j] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

.step-grid[b-zxcodipe7j] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.step-card[b-zxcodipe7j] {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
    border: 1px solid #dce6f5;
    border-radius: 14px;
    background: #ffffff;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.step-card.completed[b-zxcodipe7j] {
    border-color: #b8d3ff;
    background: linear-gradient(180deg, #f7fbff 0%, #edf5ff 100%);
}

.step-card.current[b-zxcodipe7j] {
    box-shadow: 0 10px 22px rgba(47, 116, 208, 0.14);
    transform: translateY(-1px);
}

.step-badge[b-zxcodipe7j] {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eaf1ff;
    color: #245fcb;
    font-size: 15px;
    font-weight: 800;
}

.step-card strong[b-zxcodipe7j] {
    color: #0f2c5f;
    font-size: 14px;
}

.step-card p[b-zxcodipe7j] {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.6;
}

.stage-highlight[b-zxcodipe7j] {
    border-radius: 16px;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.stage-highlight span[b-zxcodipe7j] {
    font-size: 13px;
    font-weight: 800;
}

.stage-highlight strong[b-zxcodipe7j] {
    font-size: 22px;
    line-height: 1.4;
}

.stage-highlight p[b-zxcodipe7j] {
    margin: 0;
    font-size: 13px;
    line-height: 1.7;
}

.timeline[b-zxcodipe7j] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.timeline li[b-zxcodipe7j] {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
}

.timeline-dot[b-zxcodipe7j] {
    width: 12px;
    height: 12px;
    margin-top: 4px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2f74d0 0%, #1d4ed8 100%);
    box-shadow: 0 0 0 5px rgba(47, 116, 208, 0.12);
}

.timeline strong[b-zxcodipe7j] {
    color: #0f2c5f;
    font-size: 14px;
}

.timeline p[b-zxcodipe7j] {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 13px;
}

@media (max-width: 1100px) {
    .detail-layout[b-zxcodipe7j] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .overview-grid[b-zxcodipe7j],
    .form-grid[b-zxcodipe7j],
    .step-grid[b-zxcodipe7j] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .detail-header-main[b-zxcodipe7j] {
        flex-direction: column;
        align-items: stretch;
    }

    .header-actions[b-zxcodipe7j] {
        justify-content: flex-start;
    }
}
/* /Pages/SpotCheck/OnSiteSpotCheckDetailBody.razor.rz.scp.css */
.spot-check-detail-page[b-udyc8lqv9f] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.detail-header[b-udyc8lqv9f] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.btn[b-udyc8lqv9f] {
    border: none;
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.btn:hover:not(:disabled)[b-udyc8lqv9f] {
    transform: translateY(-1px);
}

.btn-primary[b-udyc8lqv9f] {
    background: linear-gradient(135deg, #2f74d0 0%, #1957bf 100%);
    color: #ffffff;
}

.btn-secondary[b-udyc8lqv9f] {
    background: #e2e8f0;
    color: #1e293b;
}

.btn-submit[b-udyc8lqv9f] {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    color: #ffffff;
}

.btn-approve[b-udyc8lqv9f] {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(29, 78, 216, 0.24);
}

.btn-reject[b-udyc8lqv9f] {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(220, 38, 38, 0.24);
}

.btn-archive[b-udyc8lqv9f] {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(21, 128, 61, 0.26);
}

.btn:disabled[b-udyc8lqv9f] {
    opacity: 0.65;
    cursor: not-allowed;
}

.back-link[b-udyc8lqv9f] {
    width: fit-content;
    border: none;
    background: transparent;
    color: #245fcb;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    padding: 0;
}

.detail-header-main[b-udyc8lqv9f] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
}

.asset-header-copy h1[b-udyc8lqv9f] {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
    color: #0f2c5f;
}

.asset-header-copy p[b-udyc8lqv9f] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
}

.header-actions[b-udyc8lqv9f] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}

.status-pill[b-udyc8lqv9f] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    height: 38px;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}

.status-pill.pending[b-udyc8lqv9f] {
    background: rgba(245, 158, 11, 0.12);
    color: #b45309;
}

.status-pill.progress[b-udyc8lqv9f] {
    background: rgba(47, 116, 208, 0.12);
    color: #1d4ed8;
}

.status-pill.completed[b-udyc8lqv9f] {
    background: rgba(34, 197, 94, 0.12);
    color: #15803d;
}

.alert[b-udyc8lqv9f],
.loading-panel[b-udyc8lqv9f],
.empty-panel[b-udyc8lqv9f] {
    padding: 14px 16px;
    border-radius: 14px;
}

.alert[b-udyc8lqv9f] {
    background: #fff1f2;
    color: #b42318;
    border: 1px solid #fecdd3;
}

.loading-panel[b-udyc8lqv9f],
.empty-panel[b-udyc8lqv9f] {
    color: #475569;
}

.detail-layout[b-udyc8lqv9f] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 16px;
}

.detail-layout-single[b-udyc8lqv9f] {
    grid-template-columns: minmax(0, 1fr);
}

.detail-main[b-udyc8lqv9f],
.detail-side[b-udyc8lqv9f] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.detail-card[b-udyc8lqv9f] {
    padding: 18px;
}

.site-info-card[b-udyc8lqv9f] {
    padding: 14px;
}

.bottom-actions-section[b-udyc8lqv9f] {
    display: flex;
    justify-content: flex-end;
}

.bottom-actions-inner[b-udyc8lqv9f] {
    display: inline-flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.section-heading[b-udyc8lqv9f] {
    margin-bottom: 16px;
}

.section-heading-inline[b-udyc8lqv9f] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
}

.section-heading h2[b-udyc8lqv9f] {
    margin: 0;
    color: #0f2c5f;
    font-size: 20px;
}

.section-heading p[b-udyc8lqv9f] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.6;
}

.site-info-card .section-heading[b-udyc8lqv9f] {
    margin-bottom: 10px;
}

.opinion-group[b-udyc8lqv9f] {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.radio-option[b-udyc8lqv9f] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0f172a;
    font-size: 14px;
}

.detail-card textarea[b-udyc8lqv9f] {
    width: 100%;
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 14px;
    color: #1e293b;
    background: #ffffff;
    box-shadow: 0 3px 10px rgba(148, 163, 184, 0.12);
    resize: vertical;
}

.detail-card textarea:disabled[b-udyc8lqv9f] {
    background: #f8fafc;
    color: #94a3b8;
    border-color: #e2e8f0;
    box-shadow: none;
    cursor: not-allowed;
}

.device-list[b-udyc8lqv9f] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.room-group[b-udyc8lqv9f] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 0 0 14px;
    border-bottom: 1px solid #e2e8f0;
    background: transparent;
}

.room-group-header[b-udyc8lqv9f] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    color: #0f2c5f;
    font-size: 13px;
}

.nested-device-list[b-udyc8lqv9f] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 10px;
    padding-left: 10px;
}

.device-card[b-udyc8lqv9f] {
    border: 1px solid #dce6f5;
    border-radius: 10px;
    padding: 12px;
    background: #fff;
}

.cabinet-card[b-udyc8lqv9f] {
    background: #ffffff;
    box-shadow: none;
}

.nested-device-card[b-udyc8lqv9f] {
    background: #fbfdff;
}

.device-card-header[b-udyc8lqv9f] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 10px;
}

.device-card-header strong[b-udyc8lqv9f] {
    color: #0f2c5f;
    font-size: 15px;
}

.device-card-header p[b-udyc8lqv9f] {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 13px;
}

.device-count[b-udyc8lqv9f] {
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 700;
}

.asset-inline-actions[b-udyc8lqv9f] {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.btn-sm[b-udyc8lqv9f] {
    min-height: 34px;
    padding: 8px 12px;
    font-size: 13px;
}

.device-meta[b-udyc8lqv9f] {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 10px;
    color: #64748b;
    font-size: 13px;
}

.btn-ghost[b-udyc8lqv9f] {
    background: #ffffff;
    color: #475569;
    border: 1px solid #dce6f5;
    box-shadow: none;
}

.confirm-dialog-card[b-udyc8lqv9f] {
    width: min(360px, calc(100vw - 32px));
}

.dialog-footer[b-udyc8lqv9f] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 0 18px 18px;
}

@media (max-width: 900px) {
    .bottom-actions-inner[b-udyc8lqv9f] {
        width: 100%;
    }
}

.timeline[b-udyc8lqv9f] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.timeline li[b-udyc8lqv9f] {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 12px;
}

.timeline-dot[b-udyc8lqv9f] {
    width: 12px;
    height: 12px;
    margin-top: 4px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2f74d0 0%, #1d4ed8 100%);
    box-shadow: 0 0 0 5px rgba(47, 116, 208, 0.12);
}

.timeline strong[b-udyc8lqv9f] {
    color: #0f2c5f;
    font-size: 14px;
}

.timeline p[b-udyc8lqv9f] {
    margin: 6px 0 0;
    color: #64748b;
    font-size: 13px;
}

.dialog-mask[b-udyc8lqv9f] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.48);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    z-index: 1000;
}

.dialog-card[b-udyc8lqv9f] {
    width: min(960px, 100%);
    max-height: min(88vh, 900px);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.24);
}

.detail-dialog-card[b-udyc8lqv9f] {
    width: min(960px, 100%);
}

.dialog-header[b-udyc8lqv9f] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 18px 20px;
    border-bottom: 1px solid #e2e8f0;
}

.dialog-header h3[b-udyc8lqv9f] {
    margin: 0;
    color: #0f2c5f;
    font-size: 20px;
}

.dialog-close[b-udyc8lqv9f] {
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 999px;
    background: #eef4ff;
    color: #245fcb;
    font-size: 20px;
    cursor: pointer;
}

.dialog-body[b-udyc8lqv9f] {
    padding: 20px;
}

.detail-dialog-body[b-udyc8lqv9f] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    overflow: auto;
}

.detail-info-grid[b-udyc8lqv9f] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px 10px;
}

.detail-info-grid div[b-udyc8lqv9f] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    min-height: 0;
    padding: 8px 10px;
    border-radius: 8px;
    background: #f8fbff;
    border: none;
}

.detail-info-grid span[b-udyc8lqv9f] {
    color: #64748b;
    font-size: 15px;
    font-weight: 700;
    flex: 0 0 auto;
}

.detail-info-grid strong[b-udyc8lqv9f] {
    color: #0f172a;
    font-size: 15px;
    line-height: 1.4;
    flex: 1 1 auto;
    min-width: 0;
    word-break: break-word;
}

.photo-gallery[b-udyc8lqv9f] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px;
}

.photo-thumb[b-udyc8lqv9f] {
    padding: 0;
    border: none;
    background: transparent;
    cursor: zoom-in;
}

.photo-gallery img[b-udyc8lqv9f] {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 12px;
    border: 1px solid #dce6f5;
    background: #f8fafc;
    display: block;
}

.photo-preview-card[b-udyc8lqv9f] {
    width: min(1100px, 100%);
    max-height: min(92vh, 1000px);
}

.photo-preview-body[b-udyc8lqv9f] {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px;
    overflow: auto;
}

.photo-preview-body img[b-udyc8lqv9f] {
    max-width: 100%;
    max-height: 72vh;
    object-fit: contain;
    border-radius: 14px;
    background: #0f172a;
}

.room-group:last-child[b-udyc8lqv9f] {
    padding-bottom: 0;
    border-bottom: none;
}

.field-error[b-udyc8lqv9f] {
    margin-top: 6px;
    color: #dc2626;
    font-size: 12px;
}

.field-invalid[b-udyc8lqv9f] {
    border-color: #f0a2a2 !important;
    background-color: #fff8f8 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

@media (max-width: 1100px) {
    .detail-layout[b-udyc8lqv9f] {
        grid-template-columns: 1fr;
    }

    .detail-info-grid[b-udyc8lqv9f] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .overview-grid[b-udyc8lqv9f] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .detail-header-main[b-udyc8lqv9f] {
        flex-direction: column;
        align-items: stretch;
    }

    .section-heading-inline[b-udyc8lqv9f] {
        flex-direction: column;
        align-items: stretch;
    }

    .dialog-mask[b-udyc8lqv9f] {
        padding: 12px;
    }

    .detail-info-grid[b-udyc8lqv9f] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/SpotCheck/OnSiteSpotCheckPageBody.razor.rz.scp.css */
.spot-check-site-page[b-1rl4xpg8yd] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.spot-check-site-page .filter-grid[b-1rl4xpg8yd] {
    gap: 14px 18px;
    margin-bottom: 16px;
}

.spot-check-filter-grid[b-1rl4xpg8yd] {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
}

.spot-check-site-page .filter-actions[b-1rl4xpg8yd] {
    display: flex;
    align-items: end;
    justify-content: flex-end;
    gap: 12px;
}

.spot-check-site-page .filter-actions.full-width[b-1rl4xpg8yd] {
    grid-column: 1 / -1;
}

.create-dialog-card[b-1rl4xpg8yd] {
    width: 560px;
    max-width: calc(100vw - 32px);
}

.loading[b-1rl4xpg8yd] {
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 14px 16px;
    border-radius: 10px;
    background: #f8fafc;
    color: #475569;
}

@media (max-width: 900px) {
    .spot-check-site-page .filter-grid[b-1rl4xpg8yd] {
        grid-template-columns: 1fr;
    }

    .spot-check-site-page .filter-actions[b-1rl4xpg8yd] {
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .spot-check-site-page .btn[b-1rl4xpg8yd] {
        flex: 1 1 120px;
    }
}
