nav {
    margin-bottom: 1rem;
}

@media screen {
    #admin-body > .container,
    #admin-body > .container-fluid,
    #inspector-body > .container,
    #inspector-body > .container-fluid {
        padding-bottom: 2.25rem;
    }
}

.app-dialog-modal .modal-dialog {
    max-width: 520px;
}

.app-dialog-content {
    border: 0;
    border-radius: 8px;
    box-shadow: 0 18px 60px rgba(17, 24, 39, 0.22);
}

.app-dialog-header {
    align-items: flex-start;
    border-bottom: 1px solid #e8edf3;
    padding: 18px 20px 12px;
}

.app-dialog-title-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.app-dialog-title {
    color: #1f2933;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0;
}

.app-dialog-icon {
    align-items: center;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 34px;
    font-size: 1rem;
    font-weight: 700;
    height: 34px;
    justify-content: center;
    line-height: 1;
    width: 34px;
}

.app-dialog-body {
    color: #3b4856;
    font-size: 0.95rem;
    line-height: 1.55;
    padding: 16px 20px 4px;
}

.app-dialog-message-line {
    margin-bottom: 10px;
    overflow-wrap: anywhere;
}

.app-dialog-message-line:last-child {
    margin-bottom: 0;
}

.app-dialog-footer {
    border-top: 0;
    gap: 8px;
    padding: 16px 20px 20px;
}

.app-dialog-footer .btn {
    border-radius: 4px;
    min-width: 96px;
}

.app-dialog-admin .app-dialog-icon {
    background: #17a2b8;
}

.app-dialog-exporter .app-dialog-icon {
    background: #007bff;
}

.app-dialog-inspector .app-dialog-icon {
    background: #28a745;
}

.app-dialog-danger .app-dialog-icon {
    background: #dc3545;
}

.app-dialog-warning .app-dialog-icon {
    background: #f0ad4e;
}

.app-dialog-success .app-dialog-icon {
    background: #28a745;
}

.app-dialog-info .app-dialog-icon {
    background: #17a2b8;
}

.alert {
    border: 1px solid #dce6ef;
    border-left: 4px solid #8a99a8;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(17, 24, 39, 0.06);
    color: #263746;
    font-size: 0.94rem;
    line-height: 1.45;
    margin-bottom: 1rem;
    padding: 0.85rem 1rem;
}

.alert-dismissible {
    padding-right: 3rem;
}

.alert strong {
    color: inherit;
}

.alert a:not(.btn),
.alert .alert-link {
    color: inherit;
    font-weight: 700;
    text-decoration: underline;
}

.alert .close {
    color: #52616f;
    opacity: 0.75;
    padding: 0.72rem 0.95rem;
}

.alert .close:hover,
.alert .close:focus {
    color: #1f2933;
    opacity: 1;
}

.alert-success {
    background: #f2fbf6;
    border-color: #ccebd8;
    border-left-color: #28a745;
    color: #1f5d35;
}

.alert-danger {
    background: #fff5f5;
    border-color: #f3d1d4;
    border-left-color: #dc3545;
    color: #7b2630;
}

.alert-warning {
    background: #fff8eb;
    border-color: #f1dfb9;
    border-left-color: #d9822b;
    color: #694516;
}

.alert-info {
    background: #eef9fc;
    border-color: #c6e5ee;
    border-left-color: #17a2b8;
    color: #24515b;
}

.alert-primary {
    background: #f1f7ff;
    border-color: #c9dcf4;
    border-left-color: #007bff;
    color: #24466f;
}

.alert-secondary {
    background: #f7f9fb;
    border-color: #dfe6ed;
    border-left-color: #7c8b98;
    color: #3e4c59;
}

.alert-light {
    background: #fbfcfd;
    border-color: #e2e8ef;
    border-left-color: #94a3b8;
    color: #3e4c59;
}

.alert-dark {
    background: #f4f6f8;
    border-color: #d4dce4;
    border-left-color: #52616f;
    color: #25313b;
}

.modal .alert,
.card .alert,
.admin-form-panel .alert,
.portal-panel .alert {
    box-shadow: none;
}

#admin-body .modal:not(.app-dialog-modal) .modal-content,
#exporter-body .modal:not(.app-dialog-modal) .modal-content,
#inspector-body .modal:not(.app-dialog-modal) .modal-content {
    border: 0;
    border-radius: 8px;
    box-shadow: 0 22px 70px rgba(17, 24, 39, 0.24);
    overflow: hidden;
}

#admin-body .modal:not(.app-dialog-modal) .modal-content {
    border-top: 4px solid #17a2b8;
}

#exporter-body .modal:not(.app-dialog-modal) .modal-content {
    border-top: 4px solid #007bff;
}

#inspector-body .modal:not(.app-dialog-modal) .modal-content {
    border-top: 4px solid #28a745;
}

#admin-body .modal:not(.app-dialog-modal) .modal-header,
#exporter-body .modal:not(.app-dialog-modal) .modal-header,
#inspector-body .modal:not(.app-dialog-modal) .modal-header {
    align-items: flex-start;
    border-bottom: 1px solid #dfe8f2;
    gap: 0.75rem;
    padding: 0.9rem 1rem 0.78rem;
}

#admin-body .modal:not(.app-dialog-modal) .modal-header:not(.bg-warning):not(.bg-danger):not(.bg-success):not(.bg-info):not(.bg-primary),
#exporter-body .modal:not(.app-dialog-modal) .modal-header:not(.bg-warning):not(.bg-danger):not(.bg-success):not(.bg-info):not(.bg-primary),
#inspector-body .modal:not(.app-dialog-modal) .modal-header:not(.bg-warning):not(.bg-danger):not(.bg-success):not(.bg-info):not(.bg-primary) {
    background: #f8fafc;
}

#admin-body .modal:not(.app-dialog-modal) .modal-title,
#exporter-body .modal:not(.app-dialog-modal) .modal-title,
#inspector-body .modal:not(.app-dialog-modal) .modal-title {
    align-items: center;
    color: #25313b;
    display: inline-flex;
    font-size: 1.04rem;
    font-weight: 700;
    gap: 0.55rem;
    line-height: 1.25;
    margin: 0;
    min-width: 0;
}

#admin-body .modal:not(.app-dialog-modal) .modal-title span:last-child,
#exporter-body .modal:not(.app-dialog-modal) .modal-title span:last-child,
#inspector-body .modal:not(.app-dialog-modal) .modal-title span:last-child {
    overflow-wrap: anywhere;
}

#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-warning .modal-title,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-danger .modal-title,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-success .modal-title,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-info .modal-title,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-primary .modal-title,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-warning .modal-title,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-danger .modal-title,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-success .modal-title,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-info .modal-title,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-primary .modal-title,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-warning .modal-title,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-danger .modal-title,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-success .modal-title,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-info .modal-title,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-primary .modal-title {
    color: #fff;
}

.modal-title-icon {
    align-items: center;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 32px;
    font-size: 0.9rem;
    height: 32px;
    justify-content: center;
    line-height: 1;
    width: 32px;
}

#admin-body .modal-title-icon {
    background: #17a2b8;
}

#exporter-body .modal-title-icon {
    background: #007bff;
}

#inspector-body .modal-title-icon {
    background: #28a745;
}

#admin-body .modal:not(.app-dialog-modal) .close,
#exporter-body .modal:not(.app-dialog-modal) .close,
#inspector-body .modal:not(.app-dialog-modal) .close {
    align-items: center;
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 999px;
    color: #52616f;
    display: inline-flex;
    flex: 0 0 32px;
    height: 32px;
    justify-content: center;
    margin: -0.2rem -0.15rem -0.2rem auto;
    opacity: 1;
    padding: 0;
    text-shadow: none;
    width: 32px;
}

#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-warning .close,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-danger .close,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-success .close,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-info .close,
#admin-body .modal:not(.app-dialog-modal) .modal-header.bg-primary .close,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-warning .close,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-danger .close,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-success .close,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-info .close,
#exporter-body .modal:not(.app-dialog-modal) .modal-header.bg-primary .close,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-warning .close,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-danger .close,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-success .close,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-info .close,
#inspector-body .modal:not(.app-dialog-modal) .modal-header.bg-primary .close {
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.45);
    color: #fff;
}

#admin-body .modal:not(.app-dialog-modal) .close:hover,
#admin-body .modal:not(.app-dialog-modal) .close:focus,
#exporter-body .modal:not(.app-dialog-modal) .close:hover,
#exporter-body .modal:not(.app-dialog-modal) .close:focus,
#inspector-body .modal:not(.app-dialog-modal) .close:hover,
#inspector-body .modal:not(.app-dialog-modal) .close:focus {
    border-color: #b9c8d8;
    color: #1f2933;
    opacity: 1;
}

#admin-body .modal:not(.app-dialog-modal) .modal-body,
#exporter-body .modal:not(.app-dialog-modal) .modal-body,
#inspector-body .modal:not(.app-dialog-modal) .modal-body {
    color: #25313b;
    padding: 1rem;
}

#admin-body .modal:not(.app-dialog-modal) .modal-footer,
#exporter-body .modal:not(.app-dialog-modal) .modal-footer,
#inspector-body .modal:not(.app-dialog-modal) .modal-footer {
    background: #f8fafc;
    border-top: 1px solid #dfe8f2;
    gap: 0.45rem;
    padding: 0.75rem 1rem;
}

#admin-body .modal:not(.app-dialog-modal) .modal-footer .btn,
#exporter-body .modal:not(.app-dialog-modal) .modal-footer .btn,
#inspector-body .modal:not(.app-dialog-modal) .modal-footer .btn {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    gap: 0.3rem;
    font-weight: 700;
    justify-content: center;
    line-height: 1.25;
}

#exporter-body .modal:not(.app-dialog-modal) .modal-footer .btn:not(.btn-sm):not(.btn-lg),
#inspector-body .modal:not(.app-dialog-modal) .modal-footer .btn:not(.btn-sm):not(.btn-lg) {
    min-height: 36px;
}

#exporter-body .modal:not(.app-dialog-modal) .modal-footer .btn-sm,
#inspector-body .modal:not(.app-dialog-modal) .modal-footer .btn-sm {
    min-height: 31px;
}

#exporter-body .modal:not(.app-dialog-modal) .modal-footer .btn-lg,
#inspector-body .modal:not(.app-dialog-modal) .modal-footer .btn-lg {
    min-height: 42px;
}

#admin-body .modal:not(.app-dialog-modal) .modal-footer > *,
#exporter-body .modal:not(.app-dialog-modal) .modal-footer > *,
#inspector-body .modal:not(.app-dialog-modal) .modal-footer > * {
    margin: 0;
}

.classification-modal-body {
    background: #fff;
}

.classification-summary-modal .modal-dialog {
    max-width: 1240px;
    width: calc(100vw - 2rem);
}

.classification-modal-summary {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-bottom: 0.75rem;
}

.classification-meta-chip {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    color: #25313b;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.4rem;
    line-height: 1.2;
    min-height: 32px;
    min-width: 0;
    padding: 0.38rem 0.55rem;
}

.classification-meta-chip i {
    font-size: 0.82rem;
}

#admin-body .classification-meta-chip i {
    color: #17a2b8;
}

#exporter-body .classification-meta-chip i {
    color: #007bff;
}

#inspector-body .classification-meta-chip i {
    color: #28a745;
}

.classification-meta-chip span {
    overflow-wrap: anywhere;
}

.app-breadcrumb-meta .classification-meta-chip {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
}

.classification-table-wrap {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    overflow-x: auto;
}

.classification-table {
    color: #25313b;
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    min-width: 980px;
    table-layout: fixed;
}

.classification-table thead th {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee !important;
    border-top: 0 !important;
    color: #3d4b59;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.65rem !important;
    vertical-align: middle;
}

.classification-table th:nth-child(1) {
    width: 15%;
}

.classification-table th:nth-child(2) {
    width: 57%;
}

.classification-table th:nth-child(3) {
    width: 14%;
}

.classification-table th:nth-child(4) {
    width: 14%;
}

.classification-table tbody td {
    border-color: #dfe8f2 !important;
    line-height: 1.35;
    overflow-wrap: anywhere;
    padding: 0.7rem 0.65rem !important;
    vertical-align: top !important;
    white-space: normal;
}

.classification-table tbody tr:nth-child(even) td {
    background: #fbfcfe;
}

.classification-code,
.classification-origin,
.classification-quantity {
    border-radius: 999px;
    display: inline-flex;
    font-weight: 700;
    line-height: 1.2;
    max-width: 100%;
    overflow-wrap: anywhere;
    padding: 0.28rem 0.5rem;
}

.classification-code {
    background: #eef6ff;
    color: #24466f;
}

.classification-origin {
    background: #f4f7fb;
    border: 1px solid #d9e3ee;
    color: #3d4b59;
}

.classification-quantity {
    background: #fff8eb;
    color: #694516;
}

.classification-description {
    color: #25313b;
}

.classification-detail-value {
    color: #4f5d6a;
    display: inline-block;
    font-weight: 700;
    line-height: 1.25;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.admin-classification-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    padding: 0.75rem;
}

.admin-classification-toolbar {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    justify-content: space-between;
    margin-bottom: 0.75rem;
}

.admin-classification-metrics {
    flex: 1 1 520px;
    margin-bottom: 0;
}

.admin-classification-add {
    align-items: center;
    display: inline-flex;
    font-size: 0.82rem;
    gap: 0.32rem;
    justify-content: center;
    min-height: 31px;
    padding: 0.26rem 0.62rem;
}

.admin-classification-table {
    min-width: 1240px;
}

.admin-classification-table th:nth-child(1) {
    width: 12%;
}

.admin-classification-table th:nth-child(2) {
    width: 31%;
}

.admin-classification-table th:nth-child(3) {
    width: 11%;
}

.admin-classification-table th:nth-child(4) {
    width: 11%;
}

.admin-classification-table th:nth-child(5),
.admin-classification-table th:nth-child(6),
.admin-classification-table th:nth-child(7),
.admin-classification-table th:nth-child(8),
.admin-classification-table th:nth-child(9) {
    width: 7%;
}

.admin-classification-table th:nth-child(10) {
    width: 90px;
}

.admin-classification-actions {
    display: inline-flex;
    gap: 0.25rem;
}

.admin-classification-actions .btn {
    align-items: center;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    padding: 0;
    width: 32px;
}

.admin-classification-actions .btn i {
    margin-right: 0;
}

.admin-classification-empty {
    background: #f8fafc;
    border: 1px dashed #b9c8d8;
    border-radius: 6px;
    color: #64707c;
    font-weight: 700;
    padding: 1rem;
}

@media (max-width: 575.98px) {
    .classification-summary-modal .modal-dialog {
        margin: 0.5rem;
        max-width: none;
        width: auto;
    }

    .classification-modal-summary {
        align-items: stretch;
        flex-direction: column;
    }

    .classification-meta-chip {
        width: 100%;
    }

    .classification-modal-summary .admin-batch-context-divider,
    .classification-modal-summary .app-breadcrumb-divider {
        display: none;
    }

    .classification-table-wrap {
        border: 0;
        overflow: visible;
    }

    .classification-table {
        display: block;
        min-width: 0;
    }

    .classification-table thead {
        display: none;
    }

    .classification-table tbody {
        display: flex;
        flex-direction: column;
        gap: 0.65rem;
    }

    .classification-table tr {
        background: #fff;
        border: 1px solid #d9e3ee;
        border-radius: 6px;
        display: block;
        padding: 0.65rem;
    }

    .classification-table tbody tr:nth-child(even) td {
        background: transparent;
    }

    .classification-table td {
        border: 0 !important;
        display: block;
        padding: 0 0 0.58rem !important;
    }

    .classification-table td:last-child {
        padding-bottom: 0 !important;
    }

    .classification-table td::before {
        color: #64707c;
        content: attr(data-label);
        display: block;
        font-size: 0.72rem;
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: 0.22rem;
    }

    .classification-code,
    .classification-origin,
    .classification-quantity,
    .classification-detail-value {
        border-radius: 6px;
    }

    .admin-classification-panel {
        padding: 0.65rem;
    }

    .admin-classification-toolbar {
        justify-content: space-between;
    }

    .admin-classification-metrics {
        flex: 0 1 auto;
        width: auto;
    }

    .admin-classification-toolbar .classification-meta-chip {
        width: auto;
    }

    .admin-classification-add {
        flex: 0 0 auto;
        margin-left: auto;
        max-width: 100%;
        width: auto;
    }

    #admin-body #rfiClassificationModal .classification-table-wrap,
    #admin-body .admin-classification-table-wrap {
        border: 1px solid #d9e3ee;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }

    #admin-body #rfiClassificationModal .classification-table,
    #admin-body .admin-classification-table {
        display: table;
        table-layout: fixed;
        width: 100%;
    }

    #admin-body #rfiClassificationModal .classification-table {
        font-size: 0.78rem;
        min-width: 700px;
    }

    #admin-body .admin-classification-table {
        font-size: 0.78rem;
        min-width: 1240px;
    }

    #admin-body #rfiClassificationModal .classification-table thead,
    #admin-body .admin-classification-table thead {
        display: table-header-group;
    }

    #admin-body #rfiClassificationModal .classification-table tbody,
    #admin-body .admin-classification-table tbody {
        display: table-row-group;
    }

    #admin-body #rfiClassificationModal .classification-table tr,
    #admin-body .admin-classification-table tr {
        background: transparent;
        border: 0;
        border-radius: 0;
        display: table-row;
        padding: 0;
    }

    #admin-body #rfiClassificationModal .classification-table thead th,
    #admin-body .admin-classification-table thead th {
        font-size: 0.68rem;
        padding: 0.5rem 0.45rem !important;
    }

    #admin-body #rfiClassificationModal .classification-table td,
    #admin-body .admin-classification-table td {
        border-color: #dfe8f2 !important;
        display: table-cell;
        padding: 0.55rem 0.45rem !important;
        vertical-align: top !important;
    }

    #admin-body #rfiClassificationModal .classification-table td::before,
    #admin-body .admin-classification-table td::before {
        content: none;
        display: none;
    }

    #admin-body #rfiClassificationModal .classification-table tbody tr:nth-child(even) td,
    #admin-body .admin-classification-table tbody tr:nth-child(even) td {
        background: #fbfcfe;
    }

    #admin-body #rfiClassificationModal .classification-code,
    #admin-body #rfiClassificationModal .classification-origin,
    #admin-body #rfiClassificationModal .classification-quantity,
    #admin-body .admin-classification-table .classification-code,
    #admin-body .admin-classification-table .classification-origin,
    #admin-body .admin-classification-table .classification-quantity,
    #admin-body .admin-classification-table .classification-detail-value {
        border-radius: 4px;
        font-size: 0.78rem;
        padding: 0.22rem 0.42rem;
    }

    #exporter-body #classificationModal .classification-table tbody {
        gap: 0.6rem;
    }

    #exporter-body #classificationModal .classification-table tr {
        display: grid;
        gap: 0.55rem 0.45rem;
        grid-template-columns: minmax(105px, 1.3fr) minmax(62px, 0.7fr) minmax(88px, 0.8fr);
    }

    #exporter-body #classificationModal .classification-table td {
        min-width: 0;
        padding: 0 !important;
    }

    #exporter-body #classificationModal .classification-table td:nth-child(1) {
        order: 1;
    }

    #exporter-body #classificationModal .classification-table td:nth-child(3) {
        order: 2;
    }

    #exporter-body #classificationModal .classification-table td:nth-child(4) {
        order: 3;
    }

    #exporter-body #classificationModal .classification-table td:nth-child(2) {
        grid-column: 1 / -1;
        order: 4;
        padding-top: 0.5rem !important;
    }

    #exporter-body #classificationModal .classification-table td:nth-child(1)::before {
        content: "Classification";
    }

    #exporter-body #classificationModal .classification-table td:nth-child(2)::before {
        content: "Description";
    }

    #exporter-body #classificationModal .classification-table td:nth-child(3)::before {
        content: "Origin";
    }

    #exporter-body #classificationModal .classification-table td:nth-child(4)::before {
        content: "Quantity";
    }

    #exporter-body #classificationModal .classification-code,
    #exporter-body #classificationModal .classification-origin,
    #exporter-body #classificationModal .classification-quantity {
        border-radius: 4px;
        font-size: 0.82rem;
        padding: 0.24rem 0.45rem;
    }

    #exporter-body #classificationModal .classification-description {
        display: block;
        font-size: 0.9rem;
        font-weight: 600;
        line-height: 1.35;
    }
}

.table-xs tr th,
td {
    padding: 6px 6px !important;
}

tr.border-bottom-bold {
    border-bottom: 2px solid #bbb;
}

.required-label:after {
    color: red;
    position: relative;
    top: 4px;
    content: " *";
}

.app-status-badge {
    align-items: center;
    border: 1px solid transparent;
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.15;
    padding: 0.22rem 0.42rem;
    white-space: normal;
}

.app-status-badge.badge-primary {
    background-color: #007bff;
    border-color: #007bff;
    color: #ffffff;
}

.app-status-badge.badge-success {
    background-color: #28a745;
    border-color: #28a745;
    color: #ffffff;
}

.app-status-badge.badge-info {
    background-color: #17a2b8;
    border-color: #17a2b8;
    color: #ffffff;
}

.app-status-badge.badge-warning {
    background-color: #ffc107;
    border-color: #ffc107;
    color: #212529;
}

.app-status-badge.badge-light {
    background-color: #ffffff;
    border-color: #cfdce8;
    color: #2C3E50;
}

.app-status-badge.badge-danger {
    background-color: #dc3545;
    border-color: #dc3545;
    color: #ffffff;
}

.app-status-badge.badge-secondary {
    background-color: #6c757d;
    border-color: #6c757d;
    color: #ffffff;
}

.badge.quantity-exceed-badge {
    align-items: center;
    background-color: #ffc107;
    border: 1px solid #d39e00;
    box-shadow: 0 0 0 2px rgba(255, 193, 7, 0.18);
    color: #212529;
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.15;
    padding: 0.32rem 0.62rem;
    white-space: normal;
}

.quantity-exceed-detail {
    color: #b35c00;
    font-weight: 800;
}

.app-status-badge.app-status-badge-cancelled {
    background-color: #dc3545;
    border-color: #bd2130;
    color: #ffffff;
}

.app-status-badge.app-status-badge-inspected {
    background-color: #218838;
    border-color: #1e7e34;
    box-shadow: 0 0 0 1px rgba(40, 167, 69, 0.2);
    color: #ffffff;
}

.app-status-badge.app-status-badge-arranged {
    background-color: #eaf3ff;
    border-color: #9cc7ff;
    color: #2C3E50;
}

.app-status-badge.app-status-badge-pre-inspect-doc-received,
.app-status-badge.app-status-badge-doc-received {
    background-color: #ffffff;
    border-color: #cfdce8;
    color: #2C3E50;
}

.batch-edit-form input {
    text-transform: uppercase;
}

.batch-detial-table tr td {
    /* text-transform: uppercase; */
}

.table-status-cancelled {
    background-color: var(--admin-status-cancelled-bg, #ffe6e9) !important;
}

.table-status-inspected {
    background-color: var(--admin-status-inspected-bg, #dff5e8) !important;
}

.table-status-pre_inspect_doc_received,
.table-status-doc_received {
    background-color: var(--admin-status-doc-received-bg, #ffffff) !important;
}

.table-status-arranged {
    background-color: var(--admin-status-arranged-bg, #f1f7ff) !important;
}

.table-status-finish {
    background-color: var(--admin-status-finish-bg, #f1f4f7) !important;
}

.table-status-transferred {
    background-color: var(--admin-status-transferred-bg, #f5f1fb) !important;
}

.vo-expired-true {
    background-color: lightyellow !important;
}

.table-inspection-unsatisfied {
    background-color: var(--admin-status-warning-bg, #fff4e6) !important;
}

.awaiting-upload-table-row-5-true {
    background-color: var(--admin-status-warning-bg, #fff4e6) !important;
}

.admin-highlight-table thead th {
    background: #f5f8fb;
    border-bottom-color: #cfdce8 !important;
    color: #2C3E50;
    vertical-align: middle;
}

.admin-highlight-table tbody td {
    border-color: #dfe8f2 !important;
    color: #263746;
    vertical-align: top;
}

.admin-highlight-table tbody td:first-child {
    --admin-sticky-status-bar: transparent;
    box-shadow: inset 4px 0 0 var(--admin-sticky-status-bar);
}

.admin-highlight-table tbody tr.table-status-inspected {
    background: var(--admin-status-inspected-bg, #dff5e8) !important;
}

.admin-highlight-table tbody tr.table-status-pre_inspect_doc_received,
.admin-highlight-table tbody tr.table-status-doc_received {
    background: var(--admin-status-doc-received-bg, #ffffff) !important;
}

.admin-highlight-table tbody tr.table-status-arranged {
    background: var(--admin-status-arranged-bg, #f1f7ff) !important;
}

.admin-highlight-table tbody tr.table-status-pending,
.admin-highlight-table tbody tr.table-status-info {
    background: var(--admin-status-pending-bg, #f8fafc) !important;
}

.admin-highlight-table tbody tr.table-status-finish {
    background: var(--admin-status-finish-bg, #f1f4f7) !important;
}

.admin-highlight-table tbody tr.table-status-cancelled {
    background: var(--admin-status-cancelled-bg, #ffe6e9) !important;
}

.admin-highlight-table tbody tr.table-status-transferred {
    background: var(--admin-status-transferred-bg, #f5f1fb) !important;
}

.admin-highlight-table tbody tr.table-inspection-unsatisfied,
.admin-highlight-table tbody tr.awaiting-upload-table-row-5-true {
    background: var(--admin-status-warning-bg, #fff4e6) !important;
}

.admin-highlight-table tbody tr.table-status-inspected td:first-child {
    --admin-sticky-status-bar: var(--admin-status-inspected-bar, #218838);
}

.admin-highlight-table tbody tr.table-status-arranged td:first-child {
    --admin-sticky-status-bar: var(--admin-status-arranged-bar, #2f80ed);
}

.admin-highlight-table tbody tr.table-status-pre_inspect_doc_received td:first-child,
.admin-highlight-table tbody tr.table-status-doc_received td:first-child {
    --admin-sticky-status-bar: var(--admin-status-doc-received-bar, #cfdce8);
}

.admin-highlight-table tbody tr.table-status-pending td:first-child,
.admin-highlight-table tbody tr.table-status-info td:first-child {
    --admin-sticky-status-bar: var(--admin-status-pending-bar, #94a3b8);
}

.admin-highlight-table tbody tr.table-status-finish td:first-child {
    --admin-sticky-status-bar: var(--admin-status-finish-bar, #6c757d);
}

.admin-highlight-table tbody tr.table-status-cancelled td:first-child {
    --admin-sticky-status-bar: var(--admin-status-cancelled-bar, #dc3545);
}

.admin-highlight-table tbody tr.table-status-transferred td:first-child {
    --admin-sticky-status-bar: var(--admin-status-transferred-bar, #6f42c1);
}

.admin-highlight-table tbody tr.table-inspection-unsatisfied td:first-child,
.admin-highlight-table tbody tr.awaiting-upload-table-row-5-true td:first-child {
    --admin-sticky-status-bar: var(--admin-status-warning-bar, #d9822b);
}

.admin-upload-followup-table {
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.admin-upload-followup-table {
    min-width: 1060px;
}

.arrangement-list-table.admin-upload-followup-table {
    min-width: 1240px;
}

.admin-upload-followup-table th,
.admin-upload-followup-table td {
    overflow-wrap: anywhere;
}

.admin-upload-followup-table a:not(.btn) {
    color: var(--admin-link-color, #117a8b);
    font-weight: 700;
    text-decoration: none;
}

.admin-upload-followup-table a:not(.btn):hover,
.admin-upload-followup-table a:not(.btn):focus {
    color: var(--admin-link-hover-color, #0f6674);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.admin-upload-followup-record-link {
    align-items: flex-start;
    border-bottom: 1px solid transparent;
    display: inline-flex;
    gap: 0.35rem;
    line-height: 1.25;
    max-width: 100%;
    text-decoration: none !important;
}

.admin-upload-followup-record-link i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.84rem;
    line-height: 1.25;
    margin-top: 0.05rem;
}

.admin-upload-followup-record-link span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-upload-followup-record-link:hover,
.admin-upload-followup-record-link:focus {
    border-bottom-color: currentColor;
    text-decoration: none !important;
}

.admin-upload-followup-table th:nth-child(1),
.admin-upload-followup-table td:nth-child(1) {
    width: 115px;
    white-space: nowrap;
}

.admin-upload-followup-table th:nth-child(2),
.admin-upload-followup-table td:nth-child(2) {
    width: 150px;
    white-space: nowrap;
}

.admin-upload-followup-table th:nth-child(3) {
    width: 26%;
}

.admin-upload-followup-table th:nth-child(4) {
    width: 15%;
}

.admin-upload-followup-table th:nth-child(5),
.admin-upload-followup-table td:nth-child(5) {
    width: 125px;
    white-space: nowrap;
}

.admin-upload-followup-table th:nth-child(6),
.admin-upload-followup-table td:nth-child(6) {
    width: 115px;
    white-space: nowrap;
}

.admin-upload-followup-table th:nth-child(7),
.admin-upload-followup-table td:nth-child(7) {
    width: 125px;
    white-space: nowrap;
}

i {
    vertical-align: middle;
}

.btn i {
    font-size: 1.25rem;
}

i.jstree-icon {
    font-size: 1.125em;
}

/* .vakata-context li>a>i {
    font-size: 1em;
} */

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: #eee;
}

.inspection-report-table {
    font-size: 16px;
}

.inspection-report-table th {
    vertical-align: middle;
    text-align: center;
}

.font-size-1-25 {
    font-size: 1.25rem;
}

.font-size-16 {
    font-size: 16px;
}

.font-size-15 {
    font-size: 15px;
}

.font-size-14 {
    font-size: 14px;
}

.table-bordered td {
    vertical-align: middle;
}

.form-control,
.custom-select {
    border-radius: 4px;
    vertical-align: middle;
}

.btn-width-60 {
    width: 60px;
}

.btn-width-80 {
    width: 80px;
}

.btn-width-100 {
    width: 100px;
}

.btn-width-120 {
    width: 120px;
}

.btn-width-160 {
    width: 160px;
}

.btn-width-180 {
    width: 180px;
}

.btn-width-200 {
    width: 200px;
}

.btn i {
    margin-right: 0.25rem;
}

.exporter-vo-page {
    color: #25313b;
}

.vo-header-badges {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin-top: 0.25rem;
}

.vo-header-badges .badge {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    line-height: 1.15;
}

.vo-shipment-code {
    color: #dc3545;
    font-weight: 800;
}

.vo-page-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    justify-content: flex-end;
}

.vo-page-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    line-height: 1.2;
}

.vo-page-actions .btn i,
.batch-action-buttons .btn i,
.batch-note-actions .btn i,
.vo-empty-batches .btn i {
    font-size: 0.85rem;
    margin-right: 0;
}

.vo-action-badge,
.batch-action-badge {
    align-items: center;
    box-sizing: border-box;
    display: inline-flex;
    min-height: 31px;
    padding-left: 0.65rem;
    padding-right: 0.65rem;
}

.vo-action-badge {
    height: 31px;
    line-height: 1.2;
    min-height: 0;
    padding-bottom: 0;
    padding-top: 0;
}

.vo-action-disabled {
    cursor: default;
    pointer-events: none;
}

.vo-instruction-alert {
    font-size: 0.9rem;
    margin-bottom: 0.8rem;
    padding-bottom: 0.65rem;
    padding-top: 0.65rem;
}

.vo-summary-panel,
.vo-batches-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
    padding: 0.55rem;
}

.vo-summary-grid {
    display: grid;
    gap: 0.4rem;
    grid-template-columns: minmax(110px, 1.4fr) minmax(54px, 0.45fr) minmax(102px, 0.75fr) minmax(158px, 1.4fr);
}

.vo-summary-item {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 0.45rem 0.5rem;
}

.vo-summary-item-title {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: space-between;
    margin-bottom: 0.2rem;
}

.vo-summary-item-title > span {
    align-items: center;
    display: inline-flex;
    gap: 0.28rem;
    line-height: 1.2;
}

.vo-summary-item-title .btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    line-height: 1.2;
    min-height: 31px;
}

.vo-summary-item-title span,
.vo-summary-label {
    align-items: center;
    color: #64707c;
    display: inline-flex;
    font-size: 0.76rem;
    font-weight: 700;
    gap: 0.28rem;
    line-height: 1.2;
}

.vo-summary-item-title span i,
.vo-summary-label i {
    color: #007bff;
    flex: 0 0 auto;
    font-size: 0.78rem;
    margin-right: 0;
    text-align: center;
    width: 14px;
}

.vo-summary-item strong {
    display: block;
    font-size: 0.95rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.vo-summary-item small {
    color: #6c757d;
}

.vo-email-list {
    font-size: 0.88rem;
    line-height: 1.35;
    overflow: hidden;
    overflow-wrap: anywhere;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vo-summary-emails {
    align-items: flex-start;
}

.vo-summary-emails .vo-email-list {
    white-space: normal;
}

.vo-capacity-item {
    grid-column: auto;
}

.capacity-header {
    margin-bottom: 0.25rem;
    min-width: 0;
}

.capacity-header small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.capacity-bar {
    background: #e9eef4;
    border-radius: 999px;
    display: flex;
    height: 10px;
    margin-bottom: 0.32rem;
    overflow: hidden;
    width: 100%;
}

.capacity-loaded {
    background: #dc3545;
}

.capacity-proposed {
    background: #ffc107;
}

.capacity-available {
    background: #28a745;
}

.capacity-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 0.18rem 0.55rem;
    font-size: 0.72rem;
    line-height: 1.15;
}

.capacity-legend span {
    align-items: center;
    display: inline-flex;
    gap: 0.22rem;
    white-space: nowrap;
}

.capacity-dot {
    border-radius: 999px;
    display: inline-block;
    height: 0.5rem;
    width: 0.5rem;
}

.capacity-dot-loaded {
    background: #dc3545;
}

.capacity-dot-proposed {
    background: #ffc107;
}

.capacity-dot-available {
    background: #28a745;
}

.vo-batches-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.65rem;
}

.vo-batches-header h5 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.vo-batches-header small {
    color: #6c757d;
}

.exporter-simple-table {
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.exporter-simple-table thead th {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee !important;
    border-top: 0 !important;
    color: #3d4b59;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    vertical-align: middle !important;
}

.exporter-simple-table th,
.exporter-simple-table td {
    border-color: #e7eef5 !important;
    overflow-wrap: anywhere;
    white-space: normal;
}

.exporter-simple-table td {
    color: #25313b;
    padding: 0.62rem 0.7rem !important;
    vertical-align: middle !important;
}

.exporter-simple-table-top td {
    vertical-align: top !important;
}

.exporter-simple-table tbody tr {
    transition: background-color 0.12s ease, box-shadow 0.12s ease;
}

.exporter-simple-table tbody tr:hover {
    background: #f8fbff;
    box-shadow: inset 3px 0 0 #007bff;
}

.exporter-batch-table-wrap {
    overflow-x: visible;
}

.exporter-batch-table {
    font-size: 0.88rem;
    table-layout: fixed;
}

.exporter-batch-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
}

table.exporter-batch-table th,
table.exporter-batch-table td {
    /* DataTables forces box-sizing: content-box on table.dataTable cells (see dataTables.bootstrap4.min.css);
       that breaks our mobile block layout where width:100% + padding overflows the row.
       Specificity must match DataTables' (table + class + cell) selector to override. */
    box-sizing: border-box;
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.exporter-batch-table td {
    padding: 0.7rem !important;
}

.batch-id-stack,
.batch-detail-list,
.batch-actions {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    max-width: 100%;
    min-width: 0;
}

.batch-detail-list {
    container-name: batch-detail-list;
    container-type: inline-size;
}

.batch-partial {
    color: #64707c;
    font-size: 0.76rem;
    font-weight: 700;
}

.batch-job-link {
    font-weight: 700;
    line-height: 1.25;
}

.batch-muted {
    color: #6c757d;
    font-size: 0.78rem;
}

.batch-status h5,
.batch-status h6 {
    margin: 0;
}

.batch-status .badge:not(.app-status-badge) {
    font-size: 1em;
}

.batch-detail-line {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.batch-detail-line span {
    color: #6c757d;
    font-size: 0.78rem;
    font-weight: 700;
}

.batch-detail-line strong,
.batch-email {
    min-width: 0;
}

.batch-email {
    color: #25313b;
    display: block;
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1.22;
    overflow-wrap: anywhere;
}

@container batch-detail-list (min-width: 210px) {
    .batch-detail-line {
        display: grid;
        gap: 0.3rem;
        grid-template-columns: 72px minmax(0, 1fr);
    }
}

.batch-quantity-grid {
    container-name: batch-quantity-grid;
    container-type: inline-size;
    display: grid;
    gap: 0.35rem;
    grid-template-columns: minmax(0, 1fr);
    margin-bottom: 0.4rem;
}

.batch-quantity-grid div,
.batch-inspection-result {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    padding: 0.36rem 0.42rem;
}

.batch-quantity-grid span,
.batch-inspection-result span {
    color: #6c757d;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
}

.batch-quantity-grid strong,
.batch-inspection-result strong {
    display: block;
    line-height: 1.25;
}

.batch-inspection-result-satisfied,
.batch-inspection-result-satisified {
    background: #edf8f1;
    border-color: #b9dfc2;
}

.batch-inspection-result-satisfied span,
.batch-inspection-result-satisified span {
    color: #2d6f3d;
}

.batch-inspection-result-satisfied strong,
.batch-inspection-result-satisified strong {
    color: #1f7d35;
}

.batch-inspection-result-unsatisfied {
    background: #fff4e6;
    border-color: #f1b37d;
}

.batch-inspection-result-unsatisfied span {
    color: #8a5b00;
}

.batch-inspection-result-unsatisfied strong {
    color: #9a4f05;
}

@container batch-quantity-grid (min-width: 190px) {
    .batch-quantity-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.batch-note-field {
    max-width: 100%;
    min-width: 0;
}

.batch-note-field textarea {
    box-sizing: border-box;
    display: block;
    max-width: 100%;
    min-height: 86px;
    resize: vertical;
    width: 100%;
}

.batch-note-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-top: 0.4rem;
    max-width: 100%;
    min-width: 0;
}

.batch-note-actions small {
    color: #6c757d;
}

.batch-note-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    max-width: 100%;
}

.batch-action-group {
    border-bottom: 1px solid #e8eef5;
    max-width: 100%;
    min-width: 0;
    padding-bottom: 0.45rem;
}

.batch-action-group:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.batch-action-title {
    color: #64707c;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0;
    margin-bottom: 0.28rem;
}

.batch-action-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    max-width: 100%;
    min-width: 0;
}

.batch-action-buttons .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: flex-start;
    line-height: 1.15;
    max-width: 100%;
    min-height: 31px;
    overflow-wrap: anywhere;
    text-align: left;
    white-space: normal;
    word-break: break-word;
}

.batch-container-progress {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    max-width: 100%;
    min-width: 0;
    padding: 0.42rem;
}

.batch-container-progress.is-empty {
    border-style: dashed;
}

.batch-container-summary-line,
.batch-container-empty,
.batch-container-updated {
    color: #64707c;
    align-items: center;
    display: flex;
    font-size: 0.8rem;
    gap: 0.32rem;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.batch-container-summary-line,
.batch-container-empty {
    margin-bottom: 0.35rem;
}

.batch-container-progress-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.batch-container-progress-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    line-height: 1.15;
    white-space: normal;
}

.batch-container-progress-actions .btn i {
    font-size: 0.82rem;
    margin-right: 0;
}

.batch-container-updated {
    display: block;
    font-size: 0.72rem;
    font-weight: 400;
    margin-top: 0.32rem;
}

.vo-empty-batches {
    background: #f8fafc;
    border: 1px dashed #b8c7d8;
    border-radius: 6px;
    padding: 1rem;
}

.vo-empty-batches p {
    margin-bottom: 0.65rem;
}

@media (max-width: 1199.98px) {
    .exporter-batch-table-wrap {
        -webkit-overflow-scrolling: touch;
        overflow-x: visible;
    }

    .exporter-batch-table {
        min-width: 1120px;
    }
}

@media (max-width: 991.98px) {
    .vo-summary-grid {
        grid-template-columns: minmax(110px, 1.4fr) minmax(54px, 0.45fr) minmax(102px, 0.75fr) minmax(158px, 1.4fr);
    }

    .exporter-batch-table {
        font-size: 0.84rem;
    }
}

@media (max-width: 767.98px) {
    .vo-page-actions {
        justify-content: flex-start;
        width: 100%;
    }

    .vo-summary-panel {
        overflow-x: visible;
    }

    .vo-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .batch-note-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .batch-note-actions .btn {
        width: 100%;
    }

}

@media (max-width: 575.98px) {
    .vo-page-actions .btn,
    .vo-page-actions .badge {
        justify-content: center;
        width: 100%;
    }

    .batch-action-buttons {
        gap: 0.28rem;
    }

    .batch-action-buttons .btn {
        flex: 0 1 auto;
        justify-content: center;
        padding-left: 0.48rem;
        padding-right: 0.48rem;
        width: auto;
    }

    .batch-container-progress-actions .btn {
        justify-content: center;
        width: 100%;
    }
}

@media (max-width: 419.98px) {
    .vo-summary-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

.admin-vo-page {
    color: #25313b;
}

.admin-vo-header {
    margin-bottom: 1rem;
}

.admin-vo-title {
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
    overflow-wrap: anywhere;
}

.admin-vo-title a {
    align-items: center;
    color: #25313b;
    display: inline-flex;
    gap: 0.45rem;
    text-decoration: none;
}

.admin-vo-title a i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.92em;
    line-height: 1;
}

.admin-vo-title a span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-vo-title a:hover,
.admin-vo-title a:focus {
    color: #117a8b;
    text-decoration: none;
}

.admin-vo-header-actions {
    gap: 0.45rem;
}

.admin-vo-login-form .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
}

.admin-vo-login-form .btn i {
    font-size: 0.85rem;
    margin-right: 0;
}

.admin-vo-code-form {
    min-width: 280px;
}

.admin-vo-code-form .input-group {
    align-items: stretch;
}

.admin-vo-code-form .input-group-sm .form-control,
.admin-vo-code-form .input-group-sm .btn {
    font-size: 0.82rem;
    height: 31px;
    line-height: 1.25;
    min-height: 31px;
}

.admin-vo-code-form .input-group-sm .form-control {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}

#admin-body .admin-vo-code-form .input-group-sm .input-group-append .btn {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 0;
    border-top-right-radius: 4px;
    padding-left: 0.62rem;
    padding-right: 0.62rem;
}

.admin-vo-admin-tools {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(280px, 420px);
}

.admin-vo-admin-tool {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    padding: 0.75rem;
}

.admin-vo-admin-tool h6 {
    font-weight: 700;
    margin-bottom: 0.65rem;
}

.admin-vo-current-company {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    margin-bottom: 0.75rem;
    padding: 0.55rem 0.65rem;
}

.admin-vo-current-company span,
.admin-vo-current-company small {
    display: block;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.admin-vo-current-company strong {
    display: block;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-vo-danger-actions {
    align-items: center;
    border-top: 1px solid #e2ebf4;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
    padding-top: 1rem;
}

.app-tabs-wrap,
.admin-vo-tabs-wrap {
    background: #f4f7fb;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    box-sizing: border-box;
    margin-top: 0.25rem;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0.25rem;
    -webkit-overflow-scrolling: touch;
    scrollbar-color: #b8c7d6 transparent;
    scrollbar-width: thin;
    scroll-snap-type: x proximity;
}

.app-segmented-tabs,
.admin-vo-tabs {
    --app-tab-accent: #17a2b8;
    --app-tab-active-color: #126a7c;
    --app-tab-border: #d9e3ee;
    --app-tab-active-border: #c8dae8;
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 0;
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 0.25rem;
    margin-bottom: 0;
    min-width: 100%;
    padding: 0;
    width: max-content;
}

.app-segmented-tabs .nav-item,
.admin-vo-tabs .nav-item {
    flex: 0 0 auto;
    margin-bottom: 0;
    scroll-snap-align: start;
}

.app-segmented-tabs .nav-link,
.admin-vo-tabs .nav-link {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 4px;
    color: #3d4b59;
    display: inline-flex;
    font-size: 0.88rem;
    font-weight: 700;
    gap: 0.4rem;
    line-height: 1.1;
    padding: 0.55rem 0.75rem;
    white-space: nowrap;
}

.app-segmented-tabs .nav-link i,
.admin-vo-tabs .nav-link i {
    color: #64707c;
    font-size: 0.86rem;
}

.app-segmented-tabs .nav-link .badge {
    flex: 0 0 auto;
}

.app-segmented-tabs-compact .nav-link {
    font-size: 0.82rem;
    padding: 0.5rem 0.6rem;
}

.app-segmented-tabs .nav-link:hover,
.app-segmented-tabs .nav-link:focus,
.admin-vo-tabs .nav-link:hover,
.admin-vo-tabs .nav-link:focus {
    background: #fff;
    border-color: var(--app-tab-border);
    color: var(--app-tab-active-color);
}

.app-segmented-tabs .nav-link.active,
.app-segmented-tabs .nav-item.show .nav-link,
.admin-vo-tabs .nav-link.active,
.admin-vo-tabs .nav-item.show .nav-link {
    background: #fff;
    border-color: var(--app-tab-active-border);
    box-shadow: 0 1px 3px rgba(37, 49, 59, 0.08);
    color: var(--app-tab-active-color);
}

.app-segmented-tabs .nav-link.active i,
.app-segmented-tabs .nav-link:hover i,
.app-segmented-tabs .nav-link:focus i,
.admin-vo-tabs .nav-link.active i,
.admin-vo-tabs .nav-link:hover i,
.admin-vo-tabs .nav-link:focus i {
    color: var(--app-tab-accent);
}

#exporter-body .app-segmented-tabs {
    --app-tab-accent: #007bff;
    --app-tab-active-color: #0056b3;
    --app-tab-active-border: #b8d7ff;
}

#inspector-body .app-segmented-tabs {
    --app-tab-accent: #28a745;
    --app-tab-active-color: #1f7a36;
    --app-tab-active-border: #bfe5c8;
}

.app-tab-content-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-top: 0.75rem;
    padding: 1rem;
}

.admin-vo-tab-content {
    margin-top: 0.85rem;
}

.admin-vo-info-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-vo-info-form .form-group {
    margin-bottom: 0;
    min-width: 0;
}

.admin-vo-field-wide {
    grid-column: span 2;
}

.admin-vo-info-form .form-control {
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    color: #25313b;
    min-height: 38px;
}

.admin-vo-info-form .form-control:focus {
    border-color: #17a2b8;
    box-shadow: 0 0 0 0.13rem rgba(23, 162, 184, 0.12);
}

.admin-vo-info-form small {
    color: #64707c;
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    margin-top: 0.25rem;
}

.admin-vo-info-actions .btn,
.admin-vo-raw-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.3rem;
    justify-content: center;
}

.admin-vo-json-editor {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    height: min(65vh, 640px);
    min-height: 460px;
    overflow: hidden;
}

.admin-vo-raw-actions {
    align-items: center;
    border-top: 1px solid #e2ebf4;
    display: flex;
    justify-content: flex-end;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
}

#admin-body .container-fluid > h1:first-child,
#admin-body .container > h1:first-child,
#admin-body .container-fluid > h3:first-child,
#admin-body .container > h3:first-child {
    color: #25313b;
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 1rem;
}

#admin-body .container-fluid > h1:first-child::before,
#admin-body .container > h1:first-child::before,
#admin-body .container-fluid > h3:first-child::before,
#admin-body .container > h3:first-child::before {
    color: #6c757d;
    content: "Admin";
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0;
    margin-bottom: 0.15rem;
    text-transform: uppercase;
}

#admin-body .container-fluid > h3:first-child > a,
#admin-body .container > h3:first-child > a {
    color: #25313b;
    display: inline;
    padding: 0;
    text-decoration: none;
}

#admin-body .container-fluid > h3:first-child > a:hover,
#admin-body .container > h3:first-child > a:hover {
    color: #117a8b;
    text-decoration: none;
}

#admin-body .container-fluid > h1:first-child + hr,
#admin-body .container > h1:first-child + hr,
#admin-body .container-fluid > h3:first-child + hr,
#admin-body .container > h3:first-child + hr,
#admin-body .container-fluid > h1:first-child + br,
#admin-body .container > h1:first-child + br,
#admin-body .container-fluid > h3:first-child + br,
#admin-body .container > h3:first-child + br {
    display: none;
}

.admin-date-page,
.admin-page {
    color: #25313b;
}

.admin-page-header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.admin-page-header > div {
    min-width: 0;
}

.admin-page-header h3,
.admin-page-header h1 {
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}

.admin-page-title-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.admin-page-title-actions {
    align-items: center;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.admin-page-title-action {
    align-items: center;
    display: inline-flex;
    font-size: 0.8rem;
    gap: 0.3rem;
    min-height: 30px;
    padding-left: 0.58rem;
    padding-right: 0.58rem;
}

.admin-page-label {
    color: #6c757d;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.admin-subtitle {
    align-items: center;
    color: #5f6b76;
    display: flex;
    flex-wrap: wrap;
    font-size: 0.88rem;
    gap: 0.35rem 0.6rem;
    margin-top: 0.25rem;
}

.admin-subtitle strong {
    color: #25313b;
}

.app-breadcrumb-divider {
    align-items: center;
    color: #7f8d99;
    display: none;
    flex: 0 0 auto;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
}

.app-breadcrumb-divider + span::before,
.app-breadcrumb-divider + a::before {
    color: #7f8d99;
    content: "/";
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 700;
    margin-right: 0.45rem;
}

.admin-batch-context {
    gap: 0.35rem 0.55rem;
    margin-top: 0.45rem;
}

.admin-batch-context-divider {
    align-items: center;
    color: #7f8d99;
    display: none;
    font-size: 0.78rem;
    font-weight: 700;
}

.admin-batch-context-divider + a::before,
.admin-batch-context-divider + span::before {
    color: #7f8d99;
    content: "/";
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 700;
    margin-right: 0.45rem;
}

.admin-batch-context-link {
    align-items: center;
    color: #25313b;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.38rem;
    line-height: 1.2;
    max-width: 100%;
    text-decoration: none;
}

.admin-batch-context-link {
    color: #117a8b;
}

.admin-batch-context-link:hover,
.admin-batch-context-link:focus {
    color: #126a7c;
    text-decoration: none;
}

.admin-batch-context-link i {
    color: #17a2b8;
    flex: 0 0 auto;
    font-size: 0.85rem;
    margin-right: 0;
}

.admin-batch-context-link span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-page-actions {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    justify-content: flex-end;
}

#admin-body .btn:not(.btn-link) {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.35rem;
    justify-content: center;
    letter-spacing: 0;
    white-space: nowrap;
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

#admin-body .btn:not(.btn-link):not(.btn-sm):not(.btn-lg) {
    min-height: 36px;
}

#admin-body .btn-sm:not(.btn-link) {
    gap: 0.3rem;
    min-height: 31px;
}

#admin-body .btn-lg:not(.btn-link) {
    min-height: 42px;
}

#admin-body .btn:not(.btn-link) i {
    flex: 0 0 auto;
    margin-right: 0;
}

#admin-body .btn:not(.btn-link) span {
    min-width: 0;
}

#admin-body .btn-primary {
    background-color: #17a2b8;
    border-color: #17a2b8;
    color: #fff;
}

#admin-body .btn-primary:hover,
#admin-body .btn-primary:focus,
#admin-body .btn-primary:not(:disabled):not(.disabled):active,
#admin-body .btn-primary:not(:disabled):not(.disabled).active,
#admin-body .show > .btn-primary.dropdown-toggle {
    background-color: #126a7c;
    border-color: #126a7c;
    color: #fff;
}

#admin-body .btn-outline-primary {
    background-color: #fff;
    border-color: #17a2b8;
    color: #117a8b;
}

#admin-body .btn-outline-primary:hover,
#admin-body .btn-outline-primary:focus,
#admin-body .btn-outline-primary:not(:disabled):not(.disabled):active,
#admin-body .btn-outline-primary:not(:disabled):not(.disabled).active,
#admin-body .show > .btn-outline-primary.dropdown-toggle {
    background-color: #eaf6fb;
    border-color: #126a7c;
    color: #0f6674;
}

#admin-body .btn-primary:focus,
#admin-body .btn-primary.focus,
#admin-body .btn-outline-primary:focus,
#admin-body .btn-outline-primary.focus {
    box-shadow: 0 0 0 0.16rem rgba(244, 197, 66, 0.36);
}

#admin-body .btn-primary.disabled,
#admin-body .btn-primary:disabled,
#admin-body .btn-outline-primary.disabled,
#admin-body .btn-outline-primary:disabled {
    box-shadow: none;
}

#admin-body .custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #17a2b8;
    border-color: #17a2b8;
}

#admin-body .custom-checkbox .custom-control-input:focus ~ .custom-control-label::before {
    border-color: #17a2b8;
    box-shadow: 0 0 0 0.16rem rgba(244, 197, 66, 0.36);
}

#admin-body .custom-checkbox .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #17a2b8;
}

#admin-body .custom-checkbox .custom-control-input:not(:disabled) ~ .custom-control-label {
    cursor: pointer;
}

#admin-body .admin-table-checkbox {
    display: inline-flex;
    margin: 0;
    min-height: 1.1rem;
    padding-left: 1.2rem;
    vertical-align: middle;
}

#admin-body .admin-table-checkbox .custom-control-label {
    line-height: 1.1rem;
    min-height: 1.1rem;
}

#admin-body .admin-table-checkbox .custom-control-label::before,
#admin-body .admin-table-checkbox .custom-control-label::after {
    left: -1.2rem;
    top: 0.04rem;
}

#exporter-body .custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
#inspector-body .custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background-color: var(--dt-brand);
    border-color: var(--dt-brand);
}

#exporter-body .custom-checkbox .custom-control-input:focus ~ .custom-control-label::before,
#inspector-body .custom-checkbox .custom-control-input:focus ~ .custom-control-label::before {
    border-color: var(--dt-brand);
    box-shadow: 0 0 0 0.16rem var(--dt-brand-soft);
}

#exporter-body .custom-checkbox .custom-control-input:focus:not(:checked) ~ .custom-control-label::before,
#inspector-body .custom-checkbox .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: var(--dt-brand);
}

#exporter-body .custom-checkbox .custom-control-input:not(:disabled) ~ .custom-control-label,
#inspector-body .custom-checkbox .custom-control-input:not(:disabled) ~ .custom-control-label {
    cursor: pointer;
}

#inspector-body .inspector-table-checkbox {
    display: inline-flex;
    flex: 0 0 auto;
    margin: 0;
    min-height: 1.1rem;
    padding-left: 1.2rem;
    vertical-align: middle;
}

#inspector-body .inspector-table-checkbox .custom-control-label {
    line-height: 1.1rem;
    min-height: 1.1rem;
}

#inspector-body .inspector-table-checkbox .custom-control-label::before,
#inspector-body .inspector-table-checkbox .custom-control-label::after {
    left: -1.2rem;
    top: 0.04rem;
}

.admin-page-header > .admin-page-action-button,
.admin-page-actions .admin-page-action-button {
    font-size: 0.86rem;
    min-height: 36px;
    padding-left: 0.78rem;
    padding-right: 0.78rem;
}

.admin-page-header > .btn-sm.admin-page-action-button,
.admin-page-actions .btn-sm.admin-page-action-button {
    min-height: 31px;
    padding-left: 0.68rem;
    padding-right: 0.68rem;
}

.admin-date-filter-form {
    margin: 0;
    max-width: 100%;
}

.admin-date-filter-fields {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
}

.admin-date-filter-fields .form-group {
    margin-bottom: 0;
}

.admin-date-filter-fields label {
    color: #4f5d6a;
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    margin-bottom: 0.2rem;
}

.admin-date-filter-fields .form-control {
    min-width: 130px;
}

.admin-date-filter-fields .admin-date-type-select {
    min-width: 108px;
    width: 108px;
}

.admin-date-filter-fields .admin-date-input {
    min-width: 118px;
    width: 118px;
}

.admin-date-filter-fields .admin-plcode-select,
.admin-date-filter-fields .admin-vo-type-select {
    min-width: 112px;
    width: 112px;
}

.admin-date-filter-fields .btn,
.admin-date-filter-button,
.admin-page-action-button {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
}

.admin-date-filter-fields .btn:not(.btn-sm):not(.btn-lg),
.admin-date-filter-button:not(.btn-sm):not(.btn-lg),
.admin-page-action-button:not(.btn-sm):not(.btn-lg) {
    min-height: 36px;
}

.admin-date-filter-fields .btn-sm,
.btn-sm.admin-date-filter-button,
.btn-sm.admin-page-action-button {
    min-height: 31px;
}

.admin-date-filter-fields .btn-lg,
.btn-lg.admin-date-filter-button,
.btn-lg.admin-page-action-button {
    min-height: 42px;
}

.admin-date-filter-card,
.admin-table-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
    padding: 0.75rem;
}

.admin-date-filter-card {
    background: #f8fafc;
    border-color: #e2ebf4;
}

.admin-filter-card {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    margin-bottom: 0.75rem;
    padding: 0.75rem;
}

.admin-filter-fields {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.admin-filter-fields label {
    color: #4f5d6a;
    font-size: 0.78rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.admin-filter-button {
    align-items: center;
    display: inline-flex;
    gap: 0.3rem;
    justify-content: center;
}

.admin-filter-toggle,
.arrangement-filter-toggle {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    justify-content: center;
}

.admin-mobile-filter-collapse {
    max-width: 100%;
}

.admin-table-panel .dataTables_length,
.admin-table-panel .dataTables_filter,
.admin-table-panel .dataTables_info,
.admin-table-panel .dataTables_paginate {
    font-size: 0.85rem;
}

.admin-table-panel .dataTables_filter input,
.admin-table-panel .dataTables_length select {
    border-radius: 4px;
}

.monthly-invoice-rules-modal .modal-dialog {
    max-width: min(1140px, calc(100% - 1rem));
}

.admin-permission-rules-modal .modal-dialog {
    max-width: min(1040px, calc(100% - 1rem));
}

.monthly-invoice-rules-subtitle {
    color: #5f6b76;
    font-size: 0.84rem;
    line-height: 1.35;
    margin-top: 0.2rem;
}

.admin-permission-rules-subtitle {
    color: #5f6b76;
    font-size: 0.84rem;
    line-height: 1.35;
    margin-top: 0.2rem;
}

.admin-permission-note {
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    color: #425466;
    font-size: 0.86rem;
    line-height: 1.45;
    margin-bottom: 0.75rem;
    padding: 0.7rem 0.85rem;
}

.admin-permission-note-warning {
    background: #fff8e8;
    border-color: #f1d28f;
    color: #6c4a00;
    margin-bottom: 0;
    margin-top: 0.75rem;
}

.monthly-invoice-rules-table-wrap {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
}

.admin-permission-rules-table-wrap {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
}

.monthly-invoice-rules-table {
    min-width: 1040px;
}

.admin-permission-rules-table {
    min-width: 880px;
}

.admin-permission-rules-table th:nth-child(1) {
    width: 14%;
}

.admin-permission-rules-table th:nth-child(2) {
    width: 9%;
}

.admin-permission-rules-table th:nth-child(3) {
    width: 35%;
}

.admin-permission-rules-table th:nth-child(4) {
    width: 42%;
}

.monthly-invoice-rules-table th:nth-child(1) {
    width: 9%;
}

.monthly-invoice-rules-table th:nth-child(2) {
    width: 19%;
}

.monthly-invoice-rules-table th:nth-child(3) {
    width: 24%;
}

.monthly-invoice-rules-table th:nth-child(4),
.monthly-invoice-rules-table th:nth-child(5),
.monthly-invoice-rules-table th:nth-child(6),
.monthly-invoice-rules-table th:nth-child(7) {
    width: 12%;
}

.monthly-invoice-applied-when {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}

.monthly-invoice-applied-when small {
    color: #6c757d;
    font-size: 0.76rem;
    line-height: 1.3;
}

body {
    --dt-brand: #17a2b8;
    --dt-brand-dark: #126a7c;
    --dt-brand-soft: rgba(23, 162, 184, 0.12);
    --dt-brand-border: rgba(23, 162, 184, 0.28);
    --dt-focus-border: #597ea2;
    --dt-focus-ring: rgba(44, 62, 80, 0.25);
}

#admin-body {
    --admin-status-arranged-bg: #ffffff;
    --admin-status-arranged-bar: #2f80ed;
    --admin-status-cancelled-bg: #ffe6e9;
    --admin-status-cancelled-bar: #dc3545;
    --admin-status-doc-received-bg: #ffffff;
    --admin-status-doc-received-bar: #cfdce8;
    --admin-status-finish-bg: #f1f4f7;
    --admin-status-finish-bar: #6c757d;
    --admin-status-inspected-bg: #dff5e8;
    --admin-status-inspected-bar: #218838;
    --admin-status-pending-bg: #f8fafc;
    --admin-status-pending-bar: #94a3b8;
    --admin-status-transferred-bg: #f5f1fb;
    --admin-status-transferred-bar: #6f42c1;
    --admin-status-warning-bg: #fff4e6;
    --admin-status-warning-bar: #d9822b;
}

#exporter-body {
    --dt-brand: #007bff;
    --dt-brand-dark: #155a9d;
    --dt-brand-soft: rgba(0, 123, 255, 0.12);
    --dt-brand-border: rgba(0, 123, 255, 0.28);
    --portal-page-brand: #007bff;
    --portal-page-brand-dark: #155a9d;
    --portal-page-brand-soft: rgba(0, 123, 255, 0.12);
    --portal-page-brand-border: rgba(0, 123, 255, 0.28);
}

#inspector-body {
    --dt-brand: #28a745;
    --dt-brand-dark: #11745f;
    --dt-brand-soft: rgba(40, 167, 69, 0.12);
    --dt-brand-border: rgba(40, 167, 69, 0.28);
    --inspector-status-arranged-bg: #f1f7ff;
    --inspector-status-arranged-bar: #2f80ed;
    --inspector-status-cancelled-bg: #ffe6e9;
    --inspector-status-cancelled-bar: #dc3545;
    --inspector-status-doc-received-bg: #ffffff;
    --inspector-status-doc-received-bar: #cfdce8;
    --inspector-status-finish-bg: #f1f4f7;
    --inspector-status-finish-bar: #6c757d;
    --inspector-status-inspected-bg: #dff5e8;
    --inspector-status-inspected-bar: #218838;
    --inspector-status-transferred-bg: #f5f1fb;
    --inspector-status-transferred-bar: #6f42c1;
    --inspector-status-warning-bg: #fff4e6;
    --inspector-status-warning-bar: #d9822b;
}

#common-body {
    --dt-brand: #17a2b8;
    --dt-brand-dark: #126a7c;
    --dt-brand-soft: rgba(23, 162, 184, 0.12);
    --dt-brand-border: rgba(23, 162, 184, 0.28);
    --portal-page-brand: #17a2b8;
    --portal-page-brand-dark: #126a7c;
    --portal-page-brand-soft: rgba(23, 162, 184, 0.12);
    --portal-page-brand-border: rgba(23, 162, 184, 0.28);
}

#common-body .portal-page .btn-primary,
#common-body .portal-panel .btn-primary {
    background-color: var(--portal-page-brand, #17a2b8);
    border-color: var(--portal-page-brand, #17a2b8);
}

#common-body .portal-page .btn-primary:hover,
#common-body .portal-page .btn-primary:focus,
#common-body .portal-panel .btn-primary:hover,
#common-body .portal-panel .btn-primary:focus {
    background-color: var(--portal-page-brand-dark, #126a7c);
    border-color: var(--portal-page-brand-dark, #126a7c);
}

#common-body .portal-page .btn-outline-primary,
#common-body .portal-panel .btn-outline-primary {
    border-color: var(--portal-page-brand, #17a2b8);
    color: var(--portal-page-brand-dark, #126a7c);
}

#common-body .portal-page .btn-outline-primary:hover,
#common-body .portal-page .btn-outline-primary:focus,
#common-body .portal-panel .btn-outline-primary:hover,
#common-body .portal-panel .btn-outline-primary:focus {
    background-color: var(--portal-page-brand, #17a2b8);
    border-color: var(--portal-page-brand, #17a2b8);
    color: #fff;
}

div.dataTables_wrapper div.dataTables_length {
    display: none !important;
}

div.dataTables_wrapper > .row {
    margin-left: 0;
    margin-right: 0;
}

div.dataTables_wrapper > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}

.table-responsive:has(> div.dataTables_wrapper) {
    max-width: 100%;
    min-width: 0;
    overflow-x: visible !important;
    width: 100%;
}

div.dataTables_wrapper,
div.dataTables_wrapper > .row,
div.dataTables_wrapper > .row > [class*="col-"] {
    max-width: 100%;
    min-width: 0;
}

div.dataTables_wrapper > .row:has(table.dataTable) > [class*="col-"] {
    overflow-x: visible;
}

.app-dt-table-scroll-shell {
    max-width: 100%;
    min-width: 0;
    position: relative;
    width: 100%;
}

.app-dt-table-scroll {
    max-width: 100%;
    min-width: 0;
    overflow-x: visible;
    overflow-y: visible;
    width: 100%;
}

.app-dt-table-scroll.is-scrollable-x {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    overflow-x: auto;
    overflow-y: hidden;
    touch-action: pan-x pan-y;
}

.app-dt-table-scroll.is-vertical-pan {
    overflow-x: hidden;
}

.app-dt-table-scroll > table.dataTable {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#admin-body div.dataTables_wrapper div.dt-buttons {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin: 0 0 0.8rem;
}

#admin-body div.dataTables_wrapper div.dt-buttons .btn {
    border-radius: 4px;
    margin: 0;
}

div.dataTables_wrapper > .row:has(.dataTables_filter) {
    align-items: center;
    margin-bottom: 0.7rem;
    padding-bottom: 0.2rem;
    padding-left: 0.2rem;
    padding-right: 0.2rem;
    padding-top: 0.2rem;
}

div.dataTables_wrapper > .row:has(.dataTables_info),
div.dataTables_wrapper > .row:has(.dataTables_paginate) {
    align-items: center;
    border-top: 1px solid #edf2f7;
    margin-top: 0.55rem;
    padding-top: 0.7rem;
}

div.dataTables_wrapper > .row > [class*="col-"]:has(> div.dataTables_length) {
    display: none !important;
}

div.dataTables_wrapper > .row > [class*="col-"]:has(> div.dataTables_filter) {
    flex: 0 0 100%;
    max-width: 100%;
}

div.dataTables_wrapper div.dataTables_filter {
    margin: 0;
    text-align: left;
    width: 100%;
}

div.dataTables_wrapper div.dataTables_filter label {
    align-items: center;
    color: #4f5d6a;
    display: flex;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.5rem;
    justify-content: flex-end;
    margin: 0;
    text-align: left;
    white-space: nowrap;
    width: 100%;
}

div.dataTables_wrapper div.dataTables_filter input.form-control {
    background: #fff;
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    box-shadow: none;
    color: #25313b;
    flex: 0 1 300px;
    font-size: 0.86rem;
    font-weight: 600;
    margin-left: 0;
    min-height: 32px;
    min-width: 0;
    padding: 0.3rem 0.55rem;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    width: 100%;
}

div.dataTables_wrapper div.dataTables_filter input.form-control:focus,
div.dataTables_wrapper div.dataTables_length select.custom-select:focus {
    border-color: var(--dt-focus-border);
    box-shadow: 0 0 0 0.2rem var(--dt-focus-ring);
    outline: 0;
}

div.dataTables_wrapper div.dataTables_filter input.form-control::placeholder {
    color: #7d8c99;
    opacity: 1;
}

div.dataTables_wrapper div.dataTables_info {
    color: #5f6b76;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.35;
    padding-top: 0;
    white-space: normal;
}

div.dataTables_wrapper div.dataTables_paginate {
    margin: 0;
    padding-top: 0;
    text-align: right;
}

div.dataTables_wrapper div.dataTables_paginate ul.pagination {
    align-items: center;
    flex-wrap: wrap;
    gap: 0.25rem;
    justify-content: flex-end;
    margin: 0;
    white-space: normal;
}

div.dataTables_wrapper div.dataTables_paginate .page-item .page-link {
    align-items: center;
    background: #fff;
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    box-shadow: none;
    color: #415161;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 800;
    justify-content: center;
    line-height: 1;
    min-height: 32px;
    min-width: 32px;
    padding: 0.35rem 0.55rem;
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

div.dataTables_wrapper div.dataTables_paginate .page-item:not(.active):not(.disabled) .page-link:hover,
div.dataTables_wrapper div.dataTables_paginate .page-item:not(.active):not(.disabled) .page-link:focus {
    background: var(--dt-brand-soft);
    border-color: var(--dt-brand-border);
    color: var(--dt-brand-dark);
    text-decoration: none;
}

div.dataTables_wrapper div.dataTables_paginate .page-item.active .page-link {
    background: var(--dt-brand);
    border-color: var(--dt-brand);
    box-shadow: 0 6px 14px rgba(17, 24, 39, 0.12);
    color: #fff;
}

div.dataTables_wrapper div.dataTables_paginate .page-item.disabled .page-link {
    background: #f4f7fb;
    border-color: #e4ebf2;
    color: #99a6b2;
    cursor: not-allowed;
}

div.dataTables_wrapper div.dataTables_paginate .page-link:focus {
    box-shadow: 0 0 0 0.16rem var(--dt-focus-ring);
    outline: 0;
}

div.dataTables_wrapper table.dataTable thead > tr > th.sorting,
div.dataTables_wrapper table.dataTable thead > tr > th.sorting_asc,
div.dataTables_wrapper table.dataTable thead > tr > th.sorting_desc,
div.dataTables_wrapper table.dataTable thead > tr > th.sorting_asc_disabled,
div.dataTables_wrapper table.dataTable thead > tr > th.sorting_desc_disabled,
div.dataTables_wrapper table.dataTable thead > tr > td.sorting,
div.dataTables_wrapper table.dataTable thead > tr > td.sorting_asc,
div.dataTables_wrapper table.dataTable thead > tr > td.sorting_desc,
div.dataTables_wrapper table.dataTable thead > tr > td.sorting_asc_disabled,
div.dataTables_wrapper table.dataTable thead > tr > td.sorting_desc_disabled {
    padding-right: 2.15rem !important;
}

div.dataTables_wrapper table.dataTable thead .sorting:before,
div.dataTables_wrapper table.dataTable thead .sorting:after,
div.dataTables_wrapper table.dataTable thead .sorting_asc:before,
div.dataTables_wrapper table.dataTable thead .sorting_asc:after,
div.dataTables_wrapper table.dataTable thead .sorting_desc:before,
div.dataTables_wrapper table.dataTable thead .sorting_desc:after,
div.dataTables_wrapper table.dataTable thead .sorting_asc_disabled:before,
div.dataTables_wrapper table.dataTable thead .sorting_asc_disabled:after,
div.dataTables_wrapper table.dataTable thead .sorting_desc_disabled:before,
div.dataTables_wrapper table.dataTable thead .sorting_desc_disabled:after {
    color: #263746;
    display: block;
    font-size: 1.06rem;
    font-weight: 800;
    line-height: 0.32rem;
    opacity: 0.36;
    position: absolute;
    right: 0.56rem;
}

div.dataTables_wrapper table.dataTable thead .sorting:before,
div.dataTables_wrapper table.dataTable thead .sorting_asc:before,
div.dataTables_wrapper table.dataTable thead .sorting_desc:before,
div.dataTables_wrapper table.dataTable thead .sorting_asc_disabled:before,
div.dataTables_wrapper table.dataTable thead .sorting_desc_disabled:before {
    content: "\25B4";
    top: calc(50% - 0.34rem);
}

div.dataTables_wrapper table.dataTable thead .sorting:after,
div.dataTables_wrapper table.dataTable thead .sorting_asc:after,
div.dataTables_wrapper table.dataTable thead .sorting_desc:after,
div.dataTables_wrapper table.dataTable thead .sorting_asc_disabled:after,
div.dataTables_wrapper table.dataTable thead .sorting_desc_disabled:after {
    content: "\25BE";
    top: calc(50% + 0.04rem);
}

div.dataTables_wrapper table.dataTable thead .sorting_asc:before,
div.dataTables_wrapper table.dataTable thead .sorting_desc:after {
    opacity: 0.82;
}

div.dataTables_wrapper table.dataTable thead .sorting_asc_disabled:before,
div.dataTables_wrapper table.dataTable thead .sorting_desc_disabled:after {
    opacity: 0;
}

:where(#admin-body) table.dataTable tbody tr {
    background-color: #fff;
}

#admin-body div.dataTables_wrapper table.dataTable td:first-child {
    box-shadow: inset var(--admin-sticky-status-bar-width, 4px) 0 0 var(--admin-sticky-status-bar, transparent);
}

@media (max-width: 767.98px) {
    div.dataTables_wrapper div.dataTables_filter {
        text-align: left;
    }

    div.dataTables_wrapper div.dataTables_filter label {
        align-items: center;
        display: flex;
        gap: 0.5rem;
        justify-content: flex-start;
        text-align: left;
        white-space: nowrap;
        width: 100%;
    }

    div.dataTables_wrapper div.dataTables_filter input.form-control {
        flex: 1 1 auto;
        margin-left: 0;
        margin-top: 0;
        max-width: 100%;
        min-width: 0;
        width: auto;
    }

    div.dataTables_wrapper > .row:has(.dataTables_info),
    div.dataTables_wrapper > .row:has(.dataTables_paginate) {
        gap: 0.6rem;
    }

    div.dataTables_wrapper div.dataTables_info,
    div.dataTables_wrapper div.dataTables_paginate {
        text-align: left;
        width: 100%;
    }

    div.dataTables_wrapper div.dataTables_paginate ul.pagination {
        justify-content: flex-start;
    }
}

.admin-scroll-table {
    margin-bottom: 0 !important;
}

.admin-simple-table,
.inspector-simple-table {
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.admin-simple-table thead th,
.inspector-simple-table thead th {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee !important;
    border-top: 0 !important;
    color: #3d4b59;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    vertical-align: middle !important;
}

.admin-simple-table th,
.admin-simple-table td,
.inspector-simple-table th,
.inspector-simple-table td {
    border-color: #e7eef5 !important;
    overflow-wrap: anywhere;
    white-space: normal;
}

.admin-simple-table td,
.inspector-simple-table td {
    color: #263746;
    padding: 0.68rem 0.75rem !important;
    vertical-align: middle !important;
}

.admin-simple-table-top td,
.inspector-simple-table-top td {
    vertical-align: top !important;
}

.admin-simple-table tbody tr,
.inspector-simple-table tbody tr {
    transition: background-color 0.12s ease, box-shadow 0.12s ease;
}

.admin-simple-table tbody tr:hover {
    background: #f8fbfd;
    box-shadow: inset 3px 0 0 #17a2b8;
}

.admin-simple-table tfoot td {
    background: #f8fafc;
    border-top: 2px solid #d9e3ee !important;
}

.admin-simple-action-heading,
.admin-simple-action-cell {
    text-align: right;
}

.admin-simple-action-cell .btn,
.admin-simple-action-cell form {
    display: inline-flex;
}

.admin-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
    max-width: 100%;
}

.admin-action-row-nowrap {
    flex-wrap: nowrap;
}

.admin-action-row .btn,
.admin-action-row form {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
}

.admin-action-row .btn {
    gap: 0.25rem;
    justify-content: center;
    white-space: nowrap;
}

.admin-icon-button {
    min-width: 34px;
    padding-left: 0.45rem;
    padding-right: 0.45rem;
    width: 34px;
}

.admin-simple-action-cell > .admin-people-actions,
.admin-simple-action-cell > .company-actions {
    justify-content: flex-end;
}

.admin-simple-link {
    color: #117a8b;
    font-weight: 800;
}

.admin-simple-link:hover,
.admin-simple-link:focus {
    color: #0f6674;
    text-decoration: none;
}

.admin-icon-link,
.admin-icon-current {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    line-height: 1.25;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-icon-link {
    color: #117a8b;
    font-weight: 700;
    text-decoration: none;
}

.admin-icon-link:hover,
.admin-icon-link:focus {
    color: #0f6674;
    text-decoration: none;
}

.admin-icon-current {
    color: #25313b;
    font-weight: 700;
}

.admin-icon-link i,
.admin-icon-current i {
    color: #17a2b8;
    flex: 0 0 auto;
    font-size: 0.82rem;
}

.admin-icon-link span,
.admin-icon-current span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-log-table {
    font-size: 0.84rem;
    min-width: 980px;
}

.admin-log-time-col {
    width: 150px;
}

.admin-log-vo-col {
    width: 135px;
}

.admin-log-status-col {
    width: 90px;
}

.admin-log-response-col {
    width: 205px;
}

.admin-dms-to-kso-payload-col {
    width: 170px;
}

.admin-dms-to-kso-response-col {
    width: 300px;
}

.admin-au-cn-sync-table {
    min-width: 1160px;
}

.admin-au-cn-sync-delivery-col {
    width: 240px;
}

.admin-au-cn-sync-response-col {
    width: 270px;
}

.admin-au-cn-sync-retry-form {
    margin: 0;
}

.admin-au-cn-sync-config,
.admin-au-cn-sync-summary {
    margin-right: 0.5rem;
}

.admin-au-cn-sync-config .badge {
    margin-left: 0.2rem;
}

.admin-au-cn-sync-target {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-au-cn-sync-ionb-field .form-control {
    min-width: 170px;
}

.admin-log-vo-link {
    color: var(--admin-link-color, #117a8b);
    font-weight: 700;
    text-decoration: none;
}

.admin-log-vo-link:hover,
.admin-log-vo-link:focus {
    color: var(--admin-link-hover-color, #0f6674);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.admin-log-payload-tag {
    background: #f4f7fb;
    border: 1px solid #d9e3ee;
    border-radius: 4px;
    color: #126a7c;
    display: inline-block;
    font-size: 0.78rem;
    font-weight: 700;
    padding: 0.14rem 0.35rem;
    white-space: normal;
}

.admin-log-preview {
    color: #3d4b59;
    font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.78rem;
    line-height: 1.35;
    max-height: 4.2em;
    overflow: hidden;
}

.admin-log-view-button {
    color: #126a7c;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 700;
    margin-top: 0.25rem;
    padding: 0;
}

.admin-log-modal-copy-button {
    align-items: center;
    display: inline-flex;
    gap: 0.3rem;
}

.admin-log-modal-content {
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    color: #2f3d4a;
    font-size: 0.82rem;
    line-height: 1.45;
    margin: 0;
    max-height: 70vh;
    overflow: auto;
    padding: 0.75rem;
    white-space: pre-wrap;
    word-break: break-word;
}

.admin-log-payload-modal .modal-dialog {
    max-width: 1320px;
    width: calc(100% - 2rem);
}

.admin-log-payload-modal .modal-body {
    background: #f8fafc;
}

.admin-vos-table {
    min-width: 760px;
}

.admin-vos-table th:nth-child(1) {
    width: 24%;
}

.admin-vos-table th:nth-child(2) {
    width: 40%;
}

.admin-vos-table th:nth-child(3) {
    width: 24%;
}

.admin-vos-action-heading,
.admin-vos-action-cell {
    text-align: right;
    width: 110px;
}

.admin-table-link {
    color: #25313b;
    display: inline-flex;
    font-weight: 800;
    gap: 0.35rem;
    line-height: 1.25;
    min-width: 0;
    text-decoration: none;
}

.admin-table-link-primary {
    color: #117a8b;
    font-size: 0.95rem;
}

.admin-table-link-ref {
    color: #117a8b;
    font-size: 0.88rem;
    overflow-wrap: normal;
    white-space: nowrap;
    word-break: normal;
}

.admin-table-link:hover,
.admin-table-link:focus {
    color: #0f6674;
    text-decoration: none;
}

.admin-table-link-muted-icon i {
    color: #7c8b98;
    font-size: 0.86rem;
    margin-top: 0.12rem;
}

.admin-table-link-ref i {
    color: currentColor;
    font-size: 0.86rem;
    margin-top: 0.1rem;
}

.admin-inspector-summary-table {
    margin-bottom: 0 !important;
    min-width: 1240px;
}

.admin-inspector-summary-col-job {
    width: 158px;
}

.admin-inspector-summary-col-vo {
    width: 184px;
}

.admin-inspector-summary-col-inspector {
    width: 130px;
}

.admin-inspector-summary-col-status {
    width: 140px;
}

.admin-inspector-summary-col-exporter {
    width: 190px;
}

.admin-inspector-summary-col-yard {
    width: 205px;
}

.admin-inspector-summary-col-created {
    width: 124px;
}

.admin-inspector-summary-col-satisfied {
    width: 118px;
}

.admin-inspector-summary-scope-control {
    align-items: center;
    background: #f4f7fb;
    border: 1px solid #d9e3ee;
    border-radius: 4px;
    display: inline-flex;
    gap: 2px;
    min-height: 31px;
    padding: 2px;
}

.admin-date-filter-fields .admin-inspector-summary-scope-option {
    align-items: center;
    border-radius: 3px;
    color: #52616f;
    cursor: pointer;
    display: inline-flex;
    font-size: 0.8rem;
    font-weight: 700;
    gap: 0.32rem;
    line-height: 1.2;
    margin: 0;
    min-height: 25px;
    padding: 0.28rem 0.55rem;
    transition: background-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.admin-inspector-summary-scope-option i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.78rem;
}

.admin-inspector-summary-scope-option:hover {
    color: #126a7c;
}

.admin-inspector-summary-scope-input {
    height: 1px;
    opacity: 0;
    position: absolute;
    width: 1px;
}

.admin-inspector-summary-scope-input:checked + .admin-inspector-summary-scope-option {
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(37, 49, 59, 0.14);
    color: #126a7c;
}

.admin-inspector-summary-scope-input:focus + .admin-inspector-summary-scope-option {
    box-shadow: 0 0 0 0.18rem rgba(23, 162, 184, 0.18);
}

.admin-inspector-summary-status-note {
    color: #64707c;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.25;
    margin-top: 0.35rem;
}

.admin-inspector-summary-status-note a {
    color: #117a8b;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.admin-vo-row-meta {
    color: #6c757d;
    display: block;
    font-size: 0.78rem;
    line-height: 1.35;
    margin-top: 0.14rem;
}

.admin-vo-update-stack {
    min-width: 0;
}

.admin-vo-update-date {
    color: #25313b;
    display: block;
    font-weight: 700;
    line-height: 1.35;
}

.admin-vo-open-button {
    min-width: 76px;
}

.admin-x5-table {
    min-width: 1080px;
}

.admin-x5-table th:nth-child(1) {
    width: 13%;
}

.admin-x5-table th:nth-child(2) {
    width: 20%;
}

.admin-x5-table th:nth-child(3) {
    width: 13%;
}

.admin-x5-table th:nth-child(4) {
    width: 13%;
}

.admin-x5-table th:nth-child(5) {
    width: 22%;
}

.admin-x5-table th:nth-child(6),
.admin-x5-table th:nth-child(7) {
    width: 9%;
}

.admin-x5-table th:nth-child(8) {
    width: 100px;
}

.china-vo-summary-page .admin-subtitle i {
    color: #17a2b8;
}

.china-vo-summary-strip {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.china-vo-summary-metric {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 76px;
    min-width: 150px;
    padding: 0.75rem 0.85rem;
}

.china-vo-summary-metric strong {
    color: #126a7c;
    font-size: 1.65rem;
    line-height: 1;
}

.china-vo-summary-metric-label {
    color: #6c757d;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.admin-s3-shadow-page .admin-table-panel-header {
    align-items: center;
    border-bottom: 1px solid #e2ebf4;
    display: flex;
    justify-content: space-between;
    margin: -0.15rem 0 0.75rem;
    padding-bottom: 0.55rem;
}

.admin-s3-shadow-page .admin-table-panel-header h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.admin-s3-shadow-retry-form {
    align-self: flex-end;
    margin-left: auto;
}

.admin-s3-shadow-progress {
    background: #e8eef5;
    border-radius: 4px;
    height: 18px;
    min-width: 96px;
}

.admin-s3-shadow-progress .progress-bar {
    background-color: #17a2b8;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 18px;
    min-width: 2rem;
}

.admin-s3-shadow-key {
    max-width: 420px;
    overflow-wrap: anywhere;
}

.china-vo-summary-prefixes {
    flex: 1 1 420px;
}

.china-vo-prefix-list {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.china-vo-prefix-chip {
    align-items: center;
    background: #f4f7fb;
    border: 1px solid #d9e3ee;
    border-radius: 999px;
    color: #25313b;
    display: inline-flex;
    font-size: 0.84rem;
    font-weight: 700;
    gap: 0.35rem;
    min-height: 28px;
    padding: 0.2rem 0.5rem;
}

.china-vo-prefix-chip .badge {
    background: #fff;
    border: 1px solid #d9e3ee;
    color: #126a7c;
}

.china-vo-summary-panel {
    overflow: hidden;
    padding: 0;
}

.china-vo-summary-panel-header {
    align-items: center;
    background: #f8fafc;
    border-bottom: 1px solid #d9e3ee;
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
}

.china-vo-summary-panel-header h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 800;
    margin: 0;
}

.china-vo-summary-table {
    min-width: 1180px;
}

.china-vo-summary-table .china-vo-col-vo {
    width: 13%;
}

.china-vo-summary-table .china-vo-col-plcode {
    width: 8%;
}

.china-vo-summary-table .china-vo-col-exporter {
    width: 22%;
}

.china-vo-summary-table .china-vo-col-contact {
    width: 13%;
}

.china-vo-summary-table .china-vo-col-phone {
    width: 12%;
}

.china-vo-summary-table .china-vo-col-address {
    width: 23%;
}

.china-vo-summary-table .china-vo-col-rfi {
    width: 9%;
}

.china-vo-group-row td {
    background: #eef5f8;
    border-top: 1px solid #cfdce8 !important;
    padding: 0.5rem 0.75rem !important;
}

.china-vo-summary-table tbody tr.china-vo-group-row:hover {
    background: transparent;
    box-shadow: none;
}

.china-vo-group-heading {
    align-items: center;
    color: #126a7c;
    display: flex;
    flex-wrap: wrap;
    font-weight: 800;
    gap: 0.5rem;
    justify-content: space-between;
}

.china-vo-group-heading i {
    color: #17a2b8;
    margin-right: 0.25rem;
}

.china-vo-link {
    align-items: flex-start;
    color: #117a8b;
    display: inline-flex;
    font-weight: 800;
    gap: 0.35rem;
    line-height: 1.25;
}

.china-vo-link:hover,
.china-vo-link:focus {
    color: #0f6674;
    text-decoration: none;
}

.china-vo-link i {
    color: #7c8b98;
    font-size: 0.82rem;
    margin-top: 0.12rem;
}

.china-vo-row-cancelled {
    background: #fff1f2;
    color: #6c757d;
}

.china-vo-row-cancelled .china-vo-link {
    color: #6c757d;
}

.china-vo-rfi-badge {
    min-width: 62px;
    padding: 0.35rem 0.5rem;
}

.china-vo-empty-state i {
    color: #17a2b8;
}

.admin-settings-table td {
    padding: 0.55rem !important;
}

.admin-settings-table th:nth-child(1) {
    width: 28%;
}

.admin-settings-table th:nth-child(2) {
    width: 54%;
}

.admin-settings-table th:nth-child(3) {
    width: 160px;
}

.admin-settings-table .form-control {
    font-size: 0.84rem;
}

.admin-settings-create-row td {
    background: #f8fafc;
    border-top: 2px solid #d9e3ee !important;
}

.admin-settings-create-cell {
    display: flex;
    justify-content: flex-end;
}

.admin-banned-yard-table td {
    padding: 0.55rem !important;
}

.admin-banned-yard-table th:nth-child(1) {
    width: 15%;
}

.admin-banned-yard-table th:nth-child(2) {
    width: 20%;
}

.admin-banned-yard-table th:nth-child(3) {
    width: 16%;
}

.admin-banned-yard-table th:nth-child(4) {
    width: 14%;
}

.admin-banned-yard-table th:nth-child(5) {
    width: 16%;
}

.admin-banned-yard-table th:nth-child(6) {
    width: 90px;
}

.admin-banned-yard-table th:nth-child(7) {
    width: 128px;
}

.admin-banned-yard-table .form-control {
    font-size: 0.84rem;
}

.admin-banned-yard-type-grid {
    display: grid;
    gap: 0.25rem 0.6rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
}

.admin-banned-yard-type-grid .custom-control-label {
    line-height: 1.35;
}

.admin-banned-yard-modal-types {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    padding: 0.65rem;
}

.admin-assignment-rules-panel {
    padding: 1rem;
}

.admin-assignment-rules-list {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.admin-assignment-rule-stats {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-bottom: 0.8rem;
}

.admin-assignment-rule-stats span {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 999px;
    color: #5a6a78;
    display: inline-flex;
    font-size: 0.82rem;
    gap: 0.28rem;
    padding: 0.24rem 0.58rem;
}

.admin-assignment-rule-stats strong {
    color: #24313f;
}

.admin-assignment-rule-row {
    background: #fff;
    border: 1px solid #dbe5ef;
    border-radius: 6px;
    display: grid;
    gap: 0.8rem;
    padding: 0.9rem;
}

.admin-assignment-rule-summary-line {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    padding: 0.1rem 0.2rem;
}

.admin-assignment-rule-status,
.admin-assignment-rule-meta {
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.74rem;
    font-weight: 800;
    line-height: 1.2;
    padding: 0.18rem 0.5rem;
    white-space: nowrap;
}

.admin-assignment-rule-status {
    background: #dff7ee;
    color: #197553;
}

.admin-assignment-rule-status.is-disabled {
    background: #edf0f3;
    color: #73808c;
}

.admin-assignment-rule-meta {
    background: #eef4fb;
    color: #536f8a;
}

.admin-assignment-rule-conflict-meta {
    align-items: center;
    background: #fff1e6;
    border-radius: 999px;
    color: #9a4f16;
    display: inline-flex;
    font-size: 0.74rem;
    font-weight: 800;
    gap: 0.25rem;
    line-height: 1.2;
    padding: 0.18rem 0.5rem;
    white-space: nowrap;
}

.admin-assignment-rule-summary-text {
    color: #24313f;
    flex: 1 1 360px;
    font-size: 0.86rem;
    font-weight: 700;
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-assignment-rule-expression-lines,
.admin-inspector-rule-expression-lines {
    display: grid;
    gap: 0.12rem;
    min-width: 0;
}

.admin-assignment-rule-expression-lines > span,
.admin-inspector-rule-expression-lines > span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-assignment-conflict-warning {
    background: #fff6ec;
    border: 1px solid #f2c18d;
    border-radius: 6px;
    color: #7c4314;
    display: grid;
    gap: 0.35rem;
    padding: 0.5rem 0.6rem;
}

.admin-assignment-conflict-warning strong {
    font-size: 0.82rem;
}

.admin-assignment-conflict-warning div {
    align-items: flex-start;
    display: flex;
    gap: 0.45rem;
    min-width: 0;
}

.admin-assignment-conflict-warning span {
    flex: 0 0 auto;
    font-size: 0.78rem;
    font-weight: 800;
}

.admin-assignment-conflict-warning em {
    font-size: 0.78rem;
    font-style: normal;
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-assignment-condition-groups {
    display: flex;
    flex-direction: column;
    gap: 0.95rem;
}

.admin-assignment-condition-group-row {
    background: #fff;
    border: 1px solid #d9e5ef;
    border-radius: 6px;
    color: #334353;
    display: grid;
    gap: 0.5rem;
    padding: 0.75rem;
    position: relative;
}

.admin-assignment-condition-group-row + .admin-assignment-condition-group-row::before {
    align-items: center;
    background: #eef6f8;
    border: 1px solid #c9e2e7;
    border-radius: 999px;
    color: #1d7586;
    content: "|";
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 900;
    height: 1.45rem;
    justify-content: center;
    left: 50%;
    line-height: 1;
    position: absolute;
    top: -1.18rem;
    transform: translateX(-50%);
    width: 1.45rem;
}

.admin-assignment-condition-group-header {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.admin-assignment-condition-group-header span {
    flex: 0 0 auto;
    font-size: 0.74rem;
    font-weight: 800;
    text-transform: uppercase;
}

.admin-assignment-condition-group-header strong {
    font-size: 0.82rem;
    line-height: 1.3;
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-assignment-condition-group-header .admin-assignment-remove-group-button {
    flex: 0 0 auto;
    margin-left: auto;
}

.admin-assignment-condition-group-fields {
    display: grid;
    gap: 0.65rem;
}

.admin-assignment-condition-group-fields .form-group {
    margin-bottom: 0;
}

.admin-assignment-condition-group-fields label {
    color: #566675;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 0.22rem;
    text-transform: uppercase;
}

.admin-assignment-flow {
    align-items: stretch;
    display: grid;
    gap: 0.55rem;
    grid-template-columns: minmax(190px, 1.05fr) minmax(190px, 1.05fr) minmax(180px, 0.9fr);
}

.admin-assignment-flow.is-goods-hidden {
    grid-template-columns: minmax(190px, 1fr) minmax(190px, 1fr);
}

.admin-assignment-flow-step.is-hidden {
    display: none;
}

@media (max-width: 1199.98px) {
    .admin-assignment-flow,
    .admin-assignment-flow.is-goods-hidden {
        grid-template-columns: minmax(0, 1fr);
    }
}

.admin-assignment-flow-step {
    background: #f8fbfd;
    border: 1px solid #dbe7f0;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    min-width: 0;
    padding: 0.65rem;
}

.admin-assignment-flow-step.is-disabled {
    background: #f5f7f9;
    border-color: #e2e7ec;
    color: #7b8792;
}

.admin-assignment-flow-step-title {
    align-items: flex-start;
    display: grid;
    gap: 0.05rem 0.45rem;
    grid-template-columns: auto 1fr;
    min-width: 0;
}

.admin-assignment-flow-step-title span {
    align-items: center;
    background: #1b8293;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 900;
    height: 1.35rem;
    justify-content: center;
    line-height: 1;
    width: 1.35rem;
}

.admin-assignment-flow-step.is-disabled .admin-assignment-flow-step-title span {
    background: #a9b4be;
}

.admin-assignment-flow-step-title strong {
    color: #263645;
    font-size: 0.86rem;
    line-height: 1.15;
    min-width: 0;
}

.admin-assignment-flow-step-title small {
    color: #6b7783;
    font-size: 0.72rem;
    grid-column: 2;
    line-height: 1.25;
}

.admin-assignment-group-toolbar {
    display: flex;
    justify-content: flex-end;
}

.admin-assignment-rule-main {
    align-items: end;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: minmax(120px, 0.7fr) minmax(180px, 2fr) minmax(90px, 0.5fr);
}

.admin-assignment-rule-enabled {
    padding-bottom: 0.35rem;
}

.admin-assignment-rule-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(4, minmax(150px, 1fr));
}

.admin-assignment-rule-grid-base {
    grid-template-columns: repeat(4, minmax(180px, 1fr));
}

.admin-assignment-rule-grid-target {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
}

.admin-assignment-rule-form.has-condition-groups .admin-assignment-simple-fields {
    display: none;
}

.admin-assignment-rule-grid .form-group,
.admin-assignment-rule-main .form-group {
    margin-bottom: 0;
}

.admin-assignment-rule-grid label,
.admin-assignment-rule-main label {
    color: #5f6b76;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0;
    margin-bottom: 0.25rem;
    text-transform: uppercase;
}

.admin-tag-select-source-hidden {
    display: none;
}

.admin-tag-select {
    position: relative;
}

.admin-tag-select-tags {
    align-items: center;
    background: #fff;
    border: 1px solid #cfd9e3;
    border-radius: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 0.28rem;
    min-height: 2.15rem;
    padding: 0.24rem 0.3rem;
}

.admin-tag-select-tags:focus-within {
    border-color: #17a2b8;
    box-shadow: 0 0 0 0.12rem rgba(23, 162, 184, 0.14);
}

.admin-tag-select.is-disabled .admin-tag-select-tags {
    background: #f1f4f6;
    border-color: #d8e0e7;
}

.admin-tag-select.is-disabled .admin-tag-select-tags:focus-within {
    border-color: #d8e0e7;
    box-shadow: none;
}

.admin-tag-select-tag {
    align-items: center;
    background: #e7f5f7;
    border: 1px solid #b9dfe5;
    border-radius: 999px;
    color: #245d67;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 700;
    gap: 0.28rem;
    line-height: 1.2;
    max-width: 100%;
    overflow-wrap: anywhere;
    padding: 0.18rem 0.28rem 0.18rem 0.5rem;
}

.admin-tag-select-empty-state {
    align-items: center;
    color: #7a8792;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 700;
    min-height: 1.4rem;
    padding: 0.14rem 0.25rem;
}

.admin-tag-select-remove {
    align-items: center;
    background: transparent;
    border: 0;
    color: #41747d;
    display: inline-flex;
    font-size: 1rem;
    height: 1rem;
    justify-content: center;
    line-height: 1;
    padding: 0;
    width: 1rem;
}

.admin-tag-select-input {
    border: 0;
    flex: 1 1 120px;
    font-size: 0.84rem;
    min-width: 100px;
    outline: 0;
    padding: 0.1rem 0.2rem;
}

.admin-tag-select.is-disabled .admin-tag-select-input {
    cursor: not-allowed;
}

.admin-tag-select-menu {
    background: #fff;
    border: 1px solid #d7e1ea;
    border-radius: 6px;
    box-shadow: 0 10px 22px rgba(38, 55, 70, 0.15);
    display: none;
    left: 0;
    margin-top: 0.25rem;
    max-height: 180px;
    overflow-y: auto;
    position: absolute;
    right: 0;
    z-index: 1065;
}

.admin-tag-select-menu.is-open {
    display: block;
}

.admin-tag-select-option {
    background: #fff;
    border: 0;
    color: #2f3e4c;
    display: block;
    font-size: 0.82rem;
    padding: 0.42rem 0.55rem;
    text-align: left;
    width: 100%;
}

.admin-tag-select-option:hover,
.admin-tag-select-option:focus {
    background: #edf7f9;
    outline: 0;
}

.admin-tag-select-option-custom {
    color: #19758a;
    font-weight: 800;
}

.admin-assignment-rule-modal-dialog {
    max-width: min(1180px, calc(100vw - 1rem));
}

.admin-assignment-rule-modal .modal-body {
    max-height: calc(100vh - 170px);
    overflow-y: auto;
}

.admin-assignment-rule-actions {
    justify-content: flex-end;
}

.admin-page-actions form {
    margin: 0;
}

.admin-search-wide-field .form-control {
    min-width: 260px;
}

.admin-search-button-group {
    align-items: flex-end;
    display: flex;
    gap: 0.4rem;
}

.admin-summary-strip {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    color: #5f6b76;
    display: inline-flex;
    flex-wrap: wrap;
    font-size: 0.86rem;
    gap: 0.45rem;
    margin-bottom: 0.8rem;
    padding: 0.36rem 0.55rem;
}

.admin-summary-strip strong {
    color: #25313b;
}

.admin-section-title {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.75rem;
}

.admin-panel-header {
    align-items: center;
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem 0.85rem;
    justify-content: space-between;
    padding: 0.75rem;
}

.admin-panel-header-compact {
    gap: 0.6rem;
    padding: 0.55rem 0.68rem;
}

.admin-panel-header-start {
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.78rem 0.85rem;
}

.admin-panel-title {
    align-items: center;
    display: inline-flex;
    gap: 0.42rem;
    margin-bottom: 0;
}

.admin-panel-title i {
    color: #7c8b98;
    font-size: 0.9rem;
}

.admin-panel-count {
    color: #6c757d;
    font-size: 0.78rem;
    font-weight: 700;
    white-space: nowrap;
}

.admin-search-results-summary span:not(:first-of-type) {
    border-left: 1px solid #d9e3ee;
    padding-left: 0.5rem;
}

.admin-search-split-grid {
    display: grid;
    gap: 0.9rem;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.admin-search-result-panel {
    overflow: hidden;
    padding: 0;
}

.admin-search-table-wrap {
    border-radius: 0 0 6px 6px;
    padding: 0.65rem;
}

.admin-search-table-wrap > .dataTables_wrapper,
.admin-search-table-wrap > .admin-search-result-table {
    border: 1px solid #e2ebf4;
    border-radius: 4px;
    overflow: hidden;
}

.admin-search-result-table {
    font-size: 0.82rem;
    min-width: 820px;
}

.admin-search-result-table.admin-search-compact-table {
    min-width: 300px;
}

.admin-search-result-table.admin-search-batch-table {
    min-width: 470px;
}

.admin-search-result-table td {
    padding: 0.48rem 0.6rem !important;
}

.admin-search-col-date {
    width: 112px;
}

.admin-search-col-record {
    width: auto;
}

.admin-search-col-related-compact {
    width: 180px;
}

.admin-search-vo-link {
    align-items: flex-start;
    border-bottom: 1px solid transparent;
    color: #117a8b;
    font-family: inherit;
    font-size: 0.86rem;
    font-weight: 700;
    gap: 0.32rem;
    max-width: 100%;
    overflow-wrap: normal;
    white-space: nowrap;
}

.admin-search-vo-link i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.82rem;
    line-height: 1.25;
    margin-top: 0.05rem;
}

.admin-search-vo-link span {
    min-width: 0;
}

.admin-search-vo-link:hover,
.admin-search-vo-link:focus {
    border-bottom-color: currentColor;
}

.admin-search-row-meta {
    color: #6c757d;
    display: block;
    font-size: 0.78rem;
    line-height: 1.35;
    margin-top: 0.16rem;
    overflow-wrap: anywhere;
}

.admin-search-date {
    color: #25313b;
    font-weight: 700;
    white-space: nowrap;
}

.admin-empty-state {
    align-items: center;
    background: #f8fafc;
    border: 1px dashed #b8c7d8;
    border-radius: 6px;
    color: #64707c;
    display: flex;
    gap: 0.5rem;
    justify-content: center;
    margin: 0.85rem;
    min-height: 72px;
    padding: 1rem;
}

.admin-empty-state i {
    color: #94a3b8;
}

.admin-search-empty-state-large {
    margin: 0;
    min-height: 160px;
}

.admin-search-table td {
    padding: 0.6rem !important;
}

.admin-seal-table {
    min-width: 980px;
}

.admin-seal-col-seal {
    width: 12%;
}

.admin-seal-col-container {
    width: 120px;
}

.admin-seal-col-sample {
    width: auto;
}

.admin-seal-col-job {
    width: 150px;
}

.admin-seal-col-vo {
    width: 165px;
}

.admin-seal-col-status {
    width: 110px;
}

.admin-seal-col-inspection {
    width: 124px;
}

.admin-seal-col-created {
    width: 112px;
}

.admin-seal-col-action {
    width: 118px;
}

.admin-form-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
}

.admin-form-panel-header {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee;
    padding: 0.75rem;
}

.admin-form-panel-header h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.admin-form-panel-body {
    padding: 0.75rem;
}

.admin-form-panel label {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
}

.admin-form-fields label {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
}

.admin-form-help {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    color: #5f6b76;
    font-size: 0.86rem;
    margin-bottom: 0.75rem;
    padding: 0.55rem 0.65rem;
}

.admin-form-actions {
    align-items: center;
    border-top: 1px solid #e2ebf4;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
}

.admin-xml-editor {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    height: 500px;
    overflow: hidden;
}

.admin-kso-upload-editor {
    height: min(58vh, 440px);
    min-height: 320px;
}

.admin-warning-panel {
    border-color: #f0c36d;
}

.admin-warning-panel .admin-form-panel-header {
    background: #fff7e6;
    border-bottom-color: #f0c36d;
}

.admin-info-panel {
    border-color: #b9e1ea;
}

.admin-info-panel .admin-form-panel-header {
    background: #eef9fb;
    border-bottom-color: #b9e1ea;
}

.admin-container-report-import {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
}

.admin-container-report-textarea {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    min-height: 240px;
}

.admin-container-report-duplicates,
.admin-container-report-preview {
    margin-bottom: 0;
}

.admin-batch-form-table {
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    min-width: 860px;
}

.admin-batch-form-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
    width: 280px;
}

.admin-batch-form-table th,
.admin-batch-form-table td {
    vertical-align: middle !important;
}

.admin-batch-form-table textarea {
    min-height: 74px;
}

.admin-batch-xml-table {
    min-width: 1040px;
}

.admin-batch-xml-table table {
    min-width: 980px;
}

.admin-batch-xml-actions {
    gap: 0.5rem;
    justify-content: flex-start;
}

.admin-dls-cell {
    max-width: 0;
    overflow: hidden;
}

.admin-dls-toolbar {
    align-items: flex-start;
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    gap: 0.85rem;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    padding: 0.75rem;
}

.admin-dls-section-title {
    color: #25313b;
    font-size: 0.92rem;
    font-weight: 700;
    margin-bottom: 0.35rem;
}

.admin-dls-search {
    flex: 1 1 360px;
    max-width: 440px;
    min-width: 280px;
}

.admin-dls-search-label {
    color: #4f5d6a;
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    margin-bottom: 0.2rem;
}

.admin-dls-filter-count {
    display: block;
    min-height: 18px;
    margin-top: 0.2rem;
}

.admin-dls-bulk-actions {
    align-items: flex-end;
    display: flex;
    flex: 1 1 500px;
    flex-direction: column;
    gap: 0.45rem;
}

.admin-dls-actions-row {
    align-items: center;
    color: #4f5d6a;
    display: flex;
    flex-wrap: wrap;
    font-size: 0.82rem;
    gap: 0.4rem;
    justify-content: flex-end;
}

.admin-dls-actions-row .btn {
    margin-right: 0 !important;
}

.admin-dls-inline-select {
    width: 150px;
}

.admin-dls-table-wrap {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    max-width: 100%;
    overflow-x: auto;
    width: 100%;
}

.admin-dls-classification-table {
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.84rem;
    margin-bottom: 0 !important;
    min-width: 1180px;
    table-layout: fixed;
}

.admin-batch-xml-table .admin-dls-classification-table {
    min-width: 1180px;
}

.admin-dls-classification-table th {
    background: #f4f7fb;
    border-top: 0;
    color: #3d4b59;
    font-size: 0.76rem;
    font-weight: 700;
    width: auto;
}

.admin-dls-classification-table th,
.admin-dls-classification-table td {
    vertical-align: middle !important;
}

.admin-dls-include-cell {
    text-align: center;
}

.admin-dls-classification-table .form-control {
    min-height: 37px;
}

.admin-dls-descr-textarea {
    line-height: 1.4;
    min-height: 104px !important;
    resize: vertical;
}

.admin-dls-amount-input {
    font-weight: 600;
}

.admin-dls-col-include {
    width: 54px;
}

.admin-dls-col-code {
    width: 90px;
}

.admin-dls-col-descr {
    width: 410px;
}

.admin-dls-col-declared {
    width: 100px;
}

.admin-dls-col-amount {
    width: 170px;
}

.admin-dls-col-weight {
    width: 100px;
}

.admin-dls-col-unit {
    width: 80px;
}

.admin-dls-col-qty {
    width: 80px;
}

.admin-dls-col-pack {
    width: 96px;
}

.admin-dls-no-results td {
    color: #6c757d;
    padding: 1rem !important;
    text-align: center;
}

.admin-json-editor {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    height: 460px;
    overflow: hidden;
}

.admin-kso-workbench-panel .admin-form-panel-header {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.admin-kso-workbench {
    align-items: start;
    display: grid;
    gap: 0.85rem;
    grid-template-columns: minmax(0, 1.55fr) minmax(360px, 0.95fr);
}

.admin-kso-payload-panel,
.admin-kso-side-rail {
    min-width: 0;
}

.admin-kso-side-rail {
    align-self: start;
    display: flex;
    flex-direction: column;
    position: sticky;
    top: 0.85rem;
}

.admin-kso-panel-heading,
.admin-kso-history-title-row,
.admin-kso-history-meta,
.admin-kso-send-error-title,
.admin-kso-send-error-meta,
.admin-kso-send-note {
    align-items: center;
    display: flex;
}

.admin-kso-panel-heading {
    gap: 0.75rem;
    justify-content: space-between;
    margin-bottom: 0.65rem;
}

.admin-kso-panel-heading h5 {
    color: #25313b;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.25;
    margin: 0;
}

.admin-kso-eyebrow {
    color: #6c757d;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.2;
    text-transform: uppercase;
}

.admin-kso-readonly-badge,
.admin-kso-history-count,
.admin-kso-state-badge {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.76rem;
    font-weight: 800;
    gap: 0.3rem;
    line-height: 1.2;
    white-space: nowrap;
}

.admin-kso-readonly-badge {
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    color: #4f5d6a;
    padding: 0.28rem 0.58rem;
}

.admin-kso-main-editor {
    height: 320px;
    min-height: 320px;
}

.admin-kso-editor-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: space-between;
    margin-top: 0.75rem;
}

.admin-kso-check-icon {
    align-items: center;
    border-radius: 50%;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 1rem;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.admin-kso-alert-copy {
    color: #7a3a11;
    font-size: 0.86rem;
    font-weight: 700;
    line-height: 1.4;
}

.admin-kso-error-list {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    list-style: none;
    margin-bottom: 0;
    padding-left: 0;
}

.admin-kso-error-list li {
    align-items: flex-start;
    background: #fff;
    border: 1px solid #f3c0a4;
    border-radius: 6px;
    color: #7a2518;
    display: flex;
    font-size: 0.86rem;
    font-weight: 700;
    gap: 0.45rem;
    line-height: 1.38;
    padding: 0.55rem 0.6rem;
}

.admin-kso-error-list i {
    color: #dc3545;
    flex: 0 0 auto;
    margin-top: 0.12rem;
}

.admin-kso-edit-link {
    align-self: flex-start;
}

.admin-kso-success-box {
    align-items: flex-start;
    background: #fff;
    border: 1px solid #cfe8d5;
    border-radius: 6px;
    color: #246c36;
    display: flex;
    font-size: 0.88rem;
    font-weight: 700;
    gap: 0.48rem;
    line-height: 1.4;
    padding: 0.62rem 0.68rem;
}

.admin-kso-success-box i {
    color: #28a745;
    margin-top: 0.12rem;
}

.admin-kso-messages-panel {
    border-color: #c6e5ee;
    box-shadow: 0 8px 20px rgba(31, 60, 79, 0.06);
    margin-bottom: 0;
    overflow: hidden;
    padding: 0;
}

.admin-kso-messages-header p {
    color: #5f6b76;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0.2rem 0 0;
}

.admin-kso-readiness-banner {
    align-items: flex-start;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    gap: 0.62rem;
    margin: 0.75rem 0.85rem;
    padding: 0.72rem;
}

.admin-kso-readiness-error {
    background: #fff8f2;
    border-color: #f1b37d;
}

.admin-kso-readiness-success {
    background: #f3fbf5;
    border-color: #b9dfc2;
}

.admin-kso-readiness-error .admin-kso-check-icon {
    background: #f8d7da;
    color: #a71d2a;
}

.admin-kso-readiness-success .admin-kso-check-icon {
    background: #d8f3dd;
    color: #218838;
}

.admin-kso-readiness-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.55rem;
    min-width: 0;
}

.admin-kso-readiness-title-row {
    align-items: flex-start;
    display: flex;
    gap: 0.55rem;
    justify-content: space-between;
}

.admin-kso-readiness-title-row h6 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.25;
    margin: 0;
}

.admin-kso-mini-chip {
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(217, 227, 238, 0.8);
    border-radius: 999px;
    color: #4f5d6a;
    flex: 0 0 auto;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1.2;
    padding: 0.22rem 0.5rem;
}

.admin-kso-history-count {
    background: #eef9fc;
    border: 1px solid #c6e5ee;
    color: #24515b;
    padding: 0.28rem 0.62rem;
}

.admin-kso-message-list {
    max-height: 430px;
    overflow: auto;
    padding: 0.8rem 0.85rem 0.9rem;
}

.admin-kso-history-item {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-left-width: 4px;
    border-radius: 6px;
    margin-bottom: 0.65rem;
    overflow: hidden;
}

.admin-kso-history-item:last-child {
    margin-bottom: 0;
}

.admin-kso-history-sent {
    border-left-color: #28a745;
}

.admin-kso-history-failed {
    border-left-color: #dc3545;
}

.admin-kso-history-pending {
    border-left-color: #f0ad4e;
}

.admin-kso-history-summary {
    align-items: center;
    background: #fff;
    border: 0;
    color: #25313b;
    cursor: pointer;
    display: flex;
    gap: 0.75rem;
    padding: 0.72rem 0.8rem;
    text-align: left;
    width: 100%;
}

.admin-kso-history-summary:hover,
.admin-kso-history-summary:focus {
    background: #f8fafc;
    outline: none;
}

.admin-kso-timeline-marker {
    align-items: center;
    border-radius: 50%;
    display: inline-flex;
    flex: 0 0 auto;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.admin-kso-history-sent .admin-kso-timeline-marker {
    background: #d8f3dd;
    color: #218838;
}

.admin-kso-history-failed .admin-kso-timeline-marker {
    background: #f8d7da;
    color: #a71d2a;
}

.admin-kso-history-pending .admin-kso-timeline-marker {
    background: #fff3cd;
    color: #8a5b00;
}

.admin-kso-history-main {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.32rem;
    min-width: 0;
}

.admin-kso-history-title-row {
    flex-wrap: wrap;
    gap: 0.45rem;
}

.admin-kso-history-type {
    color: #25313b;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.admin-kso-state-badge {
    padding: 0.22rem 0.55rem;
}

.admin-kso-state-sent {
    background: #d8f3dd;
    color: #218838;
}

.admin-kso-state-failed {
    background: #f8d7da;
    color: #a71d2a;
}

.admin-kso-state-pending {
    background: #fff3cd;
    color: #745200;
}

.admin-kso-history-meta {
    color: #5f6b76;
    flex-wrap: wrap;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.32rem 0.75rem;
}

.admin-kso-history-meta span {
    align-items: center;
    display: inline-flex;
    gap: 0.28rem;
    min-width: 0;
}

.admin-kso-history-meta i {
    color: #7c8b98;
}

.admin-kso-history-chevron {
    color: #7c8b98;
    flex: 0 0 auto;
    transition: transform 0.18s ease;
}

.admin-kso-history-summary[aria-expanded="true"] .admin-kso-history-chevron {
    transform: rotate(180deg);
}

.admin-kso-history-body {
    border-top: 1px solid #e2ebf4;
    padding: 0.85rem;
}

.admin-kso-send-error,
.admin-kso-send-note {
    border-radius: 6px;
    margin-bottom: 0.85rem;
    padding: 0.68rem 0.75rem;
}

.admin-kso-send-error {
    background: #fff5f5;
    border: 1px solid #f0b6bd;
    color: #7a2518;
}

.admin-kso-send-error-title {
    gap: 0.42rem;
    margin-bottom: 0.35rem;
}

.admin-kso-send-error-title i {
    color: #dc3545;
}

.admin-kso-send-error-meta {
    color: #6c3a34;
    flex-wrap: wrap;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.35rem 0.8rem;
    margin-bottom: 0.42rem;
}

.admin-kso-send-error pre {
    background: #fff;
    border: 1px solid #f3c0a4;
    border-radius: 6px;
    color: #7a2518;
    font-size: 0.82rem;
    margin: 0;
    max-height: 170px;
    overflow: auto;
    padding: 0.55rem 0.6rem;
    white-space: pre-wrap;
}

.admin-kso-send-note {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    color: #4f5d6a;
    font-size: 0.86rem;
    font-weight: 700;
    gap: 0.45rem;
}

.admin-kso-history-detail-grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: minmax(0, 2fr) minmax(250px, 0.75fr);
}

.admin-kso-side-rail .admin-kso-history-detail-grid {
    grid-template-columns: minmax(0, 1fr);
}

.admin-kso-side-rail .admin-kso-history-body .admin-json-editor {
    height: 240px;
}

.admin-kso-history-payload,
.admin-kso-history-controls {
    min-width: 0;
}

.admin-kso-detail-label {
    color: #4f5d6a;
    font-size: 0.76rem;
    font-weight: 800;
    margin-bottom: 0.35rem;
    text-transform: uppercase;
}

.admin-kso-history-controls {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    padding: 0.72rem;
}

.admin-kso-history-controls .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    justify-content: center;
}

.admin-kso-queue-action-row {
    display: flex;
    gap: 0.45rem;
    justify-content: flex-end;
    margin-top: 0.6rem;
}

.admin-kso-queue-button {
    flex: 0 1 auto;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.2;
    min-height: 30px;
    padding: 0.28rem 0.58rem;
    white-space: nowrap;
}

.admin-kso-empty-state {
    align-items: center;
    background: #f8fafc;
    border: 1px dashed #b8c7d8;
    border-radius: 6px;
    color: #64707c;
    display: flex;
    font-size: 0.9rem;
    font-weight: 700;
    gap: 0.5rem;
    justify-content: center;
    padding: 1rem;
}

@media (max-width: 991.98px) {
    .admin-kso-workbench,
    .admin-kso-history-detail-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-kso-side-rail {
        order: -1;
        position: static;
    }

    .admin-kso-message-list {
        max-height: none;
    }

    .admin-kso-main-editor {
        height: 300px;
        min-height: 300px;
    }
}

@media (max-width: 575.98px) {
    .admin-kso-panel-heading,
    .admin-kso-messages-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-kso-readonly-badge,
    .admin-kso-history-count,
    .admin-kso-editor-actions .btn,
    .admin-kso-edit-link,
    .admin-kso-history-controls .btn {
        width: 100%;
    }

    .admin-kso-editor-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-kso-queue-action-row .btn {
        flex: 1 1 0;
        width: auto;
    }

    .admin-kso-history-summary {
        align-items: flex-start;
        gap: 0.55rem;
        padding: 0.65rem;
    }

    .admin-kso-timeline-marker {
        height: 30px;
        width: 30px;
    }

    .admin-kso-history-body,
    .admin-kso-message-list {
        padding: 0.65rem;
    }

    .admin-kso-history-meta span {
        width: 100%;
    }
}

.admin-login-page {
    align-items: flex-start;
    display: flex;
    justify-content: center;
    margin-bottom: 2rem;
    min-height: calc(100vh - 76px);
    padding-top: 0.9rem;
}

.admin-login-panel {
    margin: 1.6rem auto 0;
    max-width: 440px;
    width: 100%;
}

.login-page-heading {
    margin-bottom: 0.75rem;
}

.login-page-heading h3 {
    color: #25313b;
    font-size: 1.45rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}

.admin-login-panel .admin-form-panel {
    overflow: hidden;
}

.admin-login-panel .admin-form-panel-body {
    padding: 0.85rem;
}

.admin-login-panel .form-control {
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    color: #25313b;
    min-height: 38px;
}

.admin-login-panel .form-control:focus {
    border-color: #17a2b8;
    box-shadow: 0 0 0 0.13rem rgba(23, 162, 184, 0.14);
}

.admin-login-panel .admin-form-actions {
    border-top: 0;
    display: block;
    margin-top: 0.25rem;
    padding-top: 0;
}

.admin-login-panel .admin-page-action-button {
    width: 100%;
}

.admin-api-key-table {
    font-size: 0.84rem;
}

.admin-api-key-table td {
    padding: 0.55rem !important;
}

.admin-api-key-table th:nth-child(1) {
    width: 11%;
}

.admin-api-key-table th:nth-child(2) {
    width: 8%;
}

.admin-api-key-table th:nth-child(3) {
    width: 18%;
}

.admin-api-key-table th:nth-child(4) {
    width: 8%;
}

.admin-api-key-table th:nth-child(5) {
    width: 10%;
}

.admin-api-key-table th:nth-child(6) {
    width: 9%;
}

.admin-api-key-table th:nth-child(7) {
    width: 10%;
}

.admin-api-key-table th:nth-child(8) {
    width: 11%;
}

.admin-api-key-table th:nth-child(9) {
    width: 15%;
}

.admin-api-key-copy-group {
    min-width: 180px;
}

.admin-api-key-copy-group .form-control,
.admin-api-key-copy-group .btn {
    min-height: 31px;
}

.admin-api-key-copy-group .form-control {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}

#admin-body .admin-api-key-copy-group .input-group-append .btn {
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    padding-left: 0.62rem;
    padding-right: 0.62rem;
}

.admin-api-key-actions {
    margin-bottom: 0.5rem;
}

.admin-api-key-edit-form {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    margin-top: 0.35rem;
    padding: 0.65rem;
}

.admin-api-key-scope-grid {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: grid;
    gap: 0.25rem 0.6rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0.65rem;
}

.admin-email-detail-table {
    font-size: 0.88rem;
    margin-bottom: 0 !important;
}

.admin-email-detail-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
    vertical-align: top !important;
    width: 180px;
}

.admin-email-detail-table td {
    vertical-align: top !important;
}

.admin-email-detail-table pre {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    margin-bottom: 0;
    max-height: 18rem;
    overflow: auto;
    padding: 0.65rem;
}

.admin-review-card {
    border-color: #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
}

.admin-review-card .card-header {
    background: #f4f7fb;
    border-bottom-color: #d9e3ee;
    padding: 0.7rem 0.75rem;
}

.admin-review-card .card-header h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.admin-review-card .card-body {
    padding: 0.75rem;
}

.admin-review-card p {
    margin-bottom: 0.45rem;
}

.admin-review-card table {
    margin-bottom: 0;
}

.admin-transfer-review-page {
    color: #25313b;
}

.admin-transfer-review-heading {
    flex: 1 1 auto;
    min-width: 0;
}

.admin-transfer-review-header-actions {
    margin-left: auto;
}

.admin-transfer-back-label-short {
    display: none;
}

.admin-transfer-breadcrumb {
    gap: 0.35rem 0.5rem;
}

.admin-transfer-breadcrumb-flow {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    line-height: 1.25;
    min-width: 0;
}

.admin-transfer-breadcrumb-vo span {
    overflow-wrap: normal;
    white-space: nowrap;
}

.admin-transfer-breadcrumb-flow {
    flex-wrap: wrap;
}

.admin-transfer-breadcrumb-flow > .fa-arrow-right-long {
    color: #7f8d99;
    flex: 0 0 auto;
    font-size: 0.78rem;
}

.admin-transfer-breadcrumb-divider {
    color: #7f8d99;
    flex: 0 0 auto;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
}

.admin-transfer-review-overview {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.4fr);
    margin-bottom: 1rem;
    padding: 0.75rem;
}

.admin-transfer-review-overview-warning {
    border-color: #f0c2c7;
}

.admin-transfer-review-check-panel {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    padding: 0.75rem;
}

.admin-transfer-review-section-heading {
    align-items: flex-start;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    margin-bottom: 0.65rem;
}

.admin-transfer-review-kicker {
    color: #6c757d;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.admin-transfer-review-section-heading h5 {
    color: #25313b;
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
}

.admin-transfer-review-alert-badge {
    flex: 0 0 auto;
    font-size: 0.72rem;
    padding: 0.35rem 0.45rem;
}

.admin-transfer-check-grid {
    display: grid;
    gap: 0.5rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-transfer-check-item {
    align-items: center;
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 0.45rem;
    min-width: 0;
    padding: 0.55rem 0.6rem;
}

.admin-transfer-check-item span {
    color: #4f5d6a;
    flex: 1 1 100%;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.2;
}

.admin-transfer-check-item .badge {
    font-size: 0.78rem;
    padding: 0.3rem 0.45rem;
}

.admin-transfer-check-item em {
    color: #c82333;
    font-size: 0.74rem;
    font-style: normal;
    font-weight: 700;
}

.admin-transfer-empty-check {
    background: #fff;
    border: 1px dashed #cbd7e3;
    border-radius: 6px;
    color: #6c757d;
    padding: 0.65rem;
}

.admin-transfer-review-facts {
    display: grid;
    gap: 0.5rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-transfer-fact {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    min-width: 0;
    padding: 0.55rem 0.6rem;
}

.admin-transfer-fact-wide {
    grid-column: span 2;
}

.admin-transfer-fact > span {
    color: #64707c;
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.18rem;
}

.admin-transfer-fact strong {
    color: #25313b;
    display: block;
    font-size: 0.92rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.admin-transfer-status-value {
    line-height: 1.25;
}

.admin-transfer-status-value .badge {
    font-size: 0.78rem;
    padding: 0.32rem 0.46rem;
}

.admin-transfer-flow-fact strong {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

.admin-transfer-flow-node {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    white-space: nowrap;
}

.admin-transfer-flow-node:hover,
.admin-transfer-flow-node:focus {
    text-decoration: none;
}

.admin-transfer-flow-node i {
    color: #17a2b8;
    flex: 0 0 auto;
    font-size: 0.82rem;
}

.admin-transfer-fact small {
    color: #64707c;
    display: block;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.25;
    margin-top: 0.18rem;
    overflow-wrap: anywhere;
}

.admin-transfer-date-fact strong,
.admin-transfer-quantity-fact strong {
    display: block;
}

.admin-transfer-date-grid,
.admin-transfer-quantity-grid {
    display: grid;
    gap: 0.4rem;
}

.admin-transfer-date-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-transfer-quantity-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-transfer-date-grid div,
.admin-transfer-quantity-grid div {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 5px;
    min-width: 0;
    padding: 0.45rem 0.5rem;
}

.admin-transfer-date-grid small,
.admin-transfer-quantity-grid small {
    color: #64707c;
    display: block;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.18rem;
}

.admin-transfer-date-grid strong,
.admin-transfer-quantity-grid strong {
    font-size: 0.9rem;
}

.admin-transfer-fact i {
    color: #7c8b98;
    flex: 0 0 auto;
    font-size: 0.78rem;
}

.admin-transfer-review-warning-message {
    grid-column: 1 / -1;
    margin-bottom: 0;
    padding: 0.65rem 0.75rem;
}

.admin-transfer-vo-row {
    margin-top: 0;
}

.admin-transfer-vo-card {
    height: calc(100% - 1rem);
}

.admin-transfer-vo-meta {
    display: grid;
    gap: 0.45rem;
    grid-template-columns: minmax(0, 2fr) minmax(90px, 0.7fr) minmax(120px, 1fr);
    margin-bottom: 0.75rem;
}

.admin-transfer-vo-meta div {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    min-width: 0;
    padding: 0.45rem 0.55rem;
}

.admin-transfer-vo-meta div > span,
.admin-transfer-classification-title {
    color: #64707c;
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
}

.admin-transfer-vo-meta strong {
    color: #25313b;
    display: block;
    font-size: 0.86rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-transfer-classification-title {
    margin-bottom: 0.35rem;
}

.admin-transfer-classification-wrap {
    -webkit-overflow-scrolling: touch;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    overflow-x: auto;
}

.admin-transfer-classification-table {
    font-size: 0.84rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.admin-transfer-classification-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.76rem;
    font-weight: 700;
}

.admin-transfer-classification-table th,
.admin-transfer-classification-table td {
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.admin-transfer-classification-table th:nth-child(1) {
    width: 18%;
}

.admin-transfer-classification-table th:nth-child(3) {
    width: 16%;
}

.admin-transfer-classification-table th:nth-child(4) {
    width: 16%;
}

.admin-transfer-review-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.admin-transfer-review-actions .admin-page-action-button {
    min-width: 108px;
}

.admin-company-detail-page .app-tabs-wrap {
    margin-bottom: 0.75rem;
}

.admin-company-breadcrumb {
    gap: 0.35rem 0.55rem;
    margin-top: 0.45rem;
}

.admin-company-tab-pane {
    padding-top: 0.25rem;
}

.admin-company-code-row {
    align-items: end;
    display: grid;
    gap: 0.65rem;
    grid-template-columns: minmax(160px, 240px) minmax(0, 1fr);
}

.admin-company-code-field {
    margin-bottom: 0;
    min-width: 0;
}

.admin-company-code-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-start;
    min-width: 0;
}

.admin-company-code-actions .admin-page-action-button {
    flex: 0 0 auto;
    width: auto;
}

.admin-company-vo-panel {
    overflow: hidden;
    padding: 0;
}

.admin-company-vo-table-wrap {
    padding: 0.75rem;
}

.admin-company-vo-table {
    min-width: 760px;
}

.admin-company-vo-table th:nth-child(1) {
    width: 26%;
}

.admin-company-vo-table th:nth-child(2) {
    width: 36%;
}

.admin-company-vo-table th:nth-child(3) {
    width: 25%;
}

.admin-company-vo-table th:nth-child(4) {
    width: 13%;
}

.admin-company-vo-email {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1.4;
}

.admin-company-vo-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
}

.companys-filter-keyword {
    flex: 1 1 300px;
}

.companys-filter-limit {
    flex: 0 0 210px;
}

.companys-filter-button {
    min-width: 86px;
}

.companys-filter-toggle {
    margin-bottom: 0.65rem;
}

.companys-filter-summary {
    color: #5f6b76;
    font-size: 0.82rem;
    margin-top: 0.55rem;
}

.companys-filter-note {
    color: #126a7c;
    font-weight: 700;
    margin-left: 0.35rem;
}

.companys-table {
    font-size: 0.9rem;
}

.companys-table th,
.companys-table td {
    box-sizing: border-box;
}

.companys-table th:nth-child(1) {
    width: 44%;
}

.companys-table th:nth-child(2) {
    width: 16%;
}

.companys-table th:nth-child(3) {
    width: 18%;
}

.companys-table th:nth-child(4) {
    width: 22%;
}

.company-name-cell {
    font-weight: 600;
}

.company-code-badge {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 4px;
    color: #25313b;
    display: inline-block;
    font-family: Menlo, Consolas, monospace;
    font-size: 0.78rem;
    line-height: 1.25;
    max-width: 100%;
    overflow-wrap: anywhere;
    padding: 0.2rem 0.4rem;
}

.company-created-cell {
    color: #5f6b76;
    font-size: 0.82rem;
    white-space: nowrap;
}

.company-actions-cell {
    min-width: 160px;
}

.company-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-start;
    max-width: 100%;
}

.company-action-button {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 0.25rem;
    justify-content: center;
    max-width: 100%;
    white-space: nowrap;
}

.admin-emails-breadcrumb {
    gap: 0.35rem 0.55rem;
    margin-top: 0.45rem;
}

.admin-emails-breadcrumb-subject span {
    max-width: min(64rem, 100%);
}

.admin-emails-filter-form {
    max-width: 100%;
}

.admin-emails-failure-filter {
    align-items: center;
    display: flex;
    min-height: 31px;
}

.admin-emails-toolbar {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    padding: 0.5rem 0.65rem;
}

.admin-emails-select-all {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    margin: 0;
}

.admin-emails-selected-count {
    color: #6c757d;
    font-size: 0.82rem;
    margin-right: auto;
}

.admin-emails-bulk-actions {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.admin-emails-bulk-actions .btn,
.admin-email-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
}

.admin-emails-table td {
    padding: 0.6rem !important;
}

.admin-emails-table th:nth-child(1) {
    width: 38px;
}

.admin-emails-table th:nth-child(2) {
    width: 145px;
}

.admin-emails-table th:nth-child(3) {
    width: 16%;
}

.admin-emails-table th:nth-child(4) {
    width: 37%;
}

.admin-emails-table th:nth-child(5) {
    width: 84px;
}

.admin-emails-table th:nth-child(6) {
    width: 190px;
}

.admin-email-select-cell {
    text-align: center;
}

.admin-email-timeline {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.admin-email-timeline span {
    color: #64707c;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
}

.admin-email-timeline strong,
.admin-email-timeline small {
    display: block;
    line-height: 1.25;
}

.admin-email-recipient-list,
.admin-email-subject {
    line-height: 1.35;
    max-height: 6.3rem;
    overflow: auto;
}

.admin-email-subject a {
    font-weight: 700;
}

.admin-email-status {
    font-size: 0.75rem;
    min-width: 56px;
    padding: 0.35rem 0.45rem;
}

.admin-email-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    max-width: 100%;
}

.admin-email-actions .btn {
    flex: 1 1 76px;
    min-width: 0;
    white-space: nowrap;
}

.admin-transfer-requests-filter-form {
    max-width: 100%;
}

.admin-transfer-empty-state {
    color: #6c757d;
    margin: 0 0 1rem;
}

.admin-transfer-requests-table td {
    padding: 0.65rem !important;
}

.admin-transfer-requests-table th:nth-child(1) {
    width: 16%;
}

.admin-transfer-requests-table th:nth-child(2) {
    width: 38%;
}

.admin-transfer-requests-table th:nth-child(3) {
    width: 22%;
}

.admin-transfer-requests-table th:nth-child(4) {
    width: 90px;
}

.admin-transfer-requests-table th:nth-child(5) {
    width: 112px;
}

.admin-transfer-requests-table th:nth-child(6) {
    width: 96px;
}

.admin-transfer-job,
.admin-transfer-route,
.admin-transfer-vo-stack,
.admin-transfer-exporter {
    min-width: 0;
}

.admin-transfer-job a,
.admin-transfer-route a,
.admin-transfer-exporter a,
.admin-transfer-vo-stack a {
    color: var(--admin-link-color, #117a8b);
    font-weight: 700;
    text-decoration: none;
}

.admin-transfer-job a:hover,
.admin-transfer-job a:focus,
.admin-transfer-route a:hover,
.admin-transfer-route a:focus,
.admin-transfer-exporter a:hover,
.admin-transfer-exporter a:focus,
.admin-transfer-vo-stack a:hover,
.admin-transfer-vo-stack a:focus {
    color: var(--admin-link-hover-color, #0f6674);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.admin-transfer-route {
    align-items: start;
    column-gap: 0.55rem;
    display: grid;
    grid-template-columns: minmax(0, max-content) auto minmax(0, 1fr);
    justify-content: start;
    width: 100%;
}

.admin-transfer-route-node {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.admin-transfer-route-node a {
    overflow-wrap: anywhere;
}

.admin-transfer-route-node small {
    color: #6c757d;
    line-height: 1.25;
    margin-top: 0.18rem;
    overflow-wrap: anywhere;
}

.admin-transfer-route-node small a {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.admin-transfer-route-arrow {
    align-items: center;
    color: #6c757d;
    display: inline-flex;
    font-size: 0.78rem;
    justify-content: center;
    line-height: 1.3;
    padding-top: 0.08rem;
}

.admin-transfer-vo-stack {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.admin-transfer-vo-stack small {
    color: #6c757d;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-transfer-exporter {
    line-height: 1.35;
    max-height: 4.9rem;
    overflow: auto;
}

.admin-transfer-status {
    font-size: 0.75rem;
    min-width: 72px;
    padding: 0.35rem 0.45rem;
}

.admin-transfer-created {
    line-height: 1.3;
}

.admin-transfer-review-button {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
    white-space: nowrap;
}

.admin-containers-filter-form {
    max-width: 100%;
}

.admin-containers-filter-collapse {
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    max-width: 100%;
}

.admin-containers-search-field .form-control {
    min-width: 180px;
}

.admin-containers-summary {
    margin-bottom: 0.75rem;
}

.admin-containers-table td {
    padding: 0.6rem !important;
}

.admin-containers-table th:nth-child(1) {
    width: 18%;
}

.admin-containers-table th:nth-child(2) {
    width: 16%;
}

.admin-containers-table th:nth-child(3) {
    width: 22%;
}

.admin-containers-table th:nth-child(4) {
    width: 18%;
}

.admin-containers-table th:nth-child(5) {
    width: 13%;
}

.admin-containers-table th:nth-child(6) {
    width: 13%;
}

.admin-container-no {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 4px;
    display: inline-flex;
    font-family: Menlo, Consolas, monospace;
    font-size: 0.78rem;
    font-weight: 700;
    gap: 0.32rem;
    line-height: 1.25;
    max-width: 100%;
    padding: 0.2rem 0.4rem;
}

.admin-container-no i {
    color: #17a2b8;
    flex: 0 0 auto;
    font-size: 0.78rem;
}

.admin-container-no span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-container-date {
    color: #5f6b76;
    font-size: 0.82rem;
}

.admin-inspector-table {
    min-width: 1160px;
}

.admin-people-table td {
    padding: 0.6rem !important;
}

.admin-admin-table th:nth-child(1) {
    width: 14%;
}

.admin-admin-table th:nth-child(2) {
    width: 12%;
}

.admin-admin-table th:nth-child(3) {
    width: 16%;
}

.admin-admin-table th:nth-child(4) {
    width: 25%;
}

.admin-admin-table th:nth-child(5) {
    width: 23%;
}

.admin-admin-table th:nth-child(6) {
    width: 96px;
}

.admin-inspector-table th:nth-child(1),
.admin-inspector-table td:nth-child(1) {
    width: 34px;
}

.admin-inspector-table th:nth-child(1) {
    padding-left: 0.35rem !important;
}

.admin-inspector-table td:nth-child(1) {
    padding-left: 0.35rem !important;
    padding-right: 0.35rem !important;
}

#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting,
#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting_asc,
#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting_desc {
    padding-right: 0.95rem !important;
}

#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting:before,
#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting:after,
#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting_asc:before,
#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting_asc:after,
#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting_desc:before,
#admin-body div.dataTables_wrapper table.dataTable.admin-inspector-table thead > tr > th:first-child.sorting_desc:after {
    font-size: 0.82rem;
    right: 0.22rem;
}

.admin-inspector-table .admin-person-id {
    padding-left: 0.3rem;
    padding-right: 0.3rem;
}

.admin-inspector-table th:nth-child(2) {
    width: 14%;
}

.admin-inspector-table th:nth-child(3) {
    width: 17%;
}

.admin-inspector-table th:nth-child(4) {
    width: 42%;
}

.admin-inspector-table th:nth-child(5) {
    width: 27%;
}

.admin-person-id,
.admin-role-grid,
.admin-inspector-type-grid,
.admin-person-contact,
.admin-inspector-rule-summary,
.admin-people-actions {
    min-width: 0;
}

.admin-inspector-rule-summary {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 0.32rem;
}

.admin-inspector-rule-expression-button {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #dce8f2;
    border-radius: 6px;
    color: #24313f;
    display: flex;
    gap: 0.45rem;
    justify-content: space-between;
    line-height: 1.25;
    max-width: 100%;
    padding: 0.36rem 0.45rem;
    text-align: left;
    width: 100%;
}

.admin-inspector-rule-expression-button:hover,
.admin-inspector-rule-expression-button:focus {
    background: #edf7f9;
    border-color: #badfe5;
    outline: 0;
}

.admin-inspector-rule-expression-button.is-readonly {
    cursor: default;
}

.admin-inspector-rule-expression-button.is-readonly:hover,
.admin-inspector-rule-expression-button.is-readonly:focus {
    background: #f8fafc;
    border-color: #dce8f2;
}

.admin-inspector-rule-expression-button.has-conflict {
    background: #fff6ec;
    border-color: #f2c18d;
}

.admin-inspector-rule-expression-button.has-conflict:hover,
.admin-inspector-rule-expression-button.has-conflict:focus {
    background: #ffeddc;
    border-color: #e59b53;
}

.admin-inspector-rule-expression-button.has-conflict.is-readonly:hover,
.admin-inspector-rule-expression-button.has-conflict.is-readonly:focus {
    background: #fff6ec;
    border-color: #f2c18d;
}

.admin-inspector-rule-expression {
    color: #24636d;
    font-size: 0.76rem;
    font-weight: 700;
    flex: 1 1 auto;
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-inspector-rule-expression.is-disabled {
    color: #6b7680;
}

.admin-inspector-rule-conflict-badge {
    align-items: center;
    background: #f08a24;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.72rem;
    font-weight: 800;
    gap: 0.18rem;
    line-height: 1;
    padding: 0.22rem 0.42rem;
}

.admin-inspector-rule-edit {
    align-items: center;
    color: #607485;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.74rem;
    font-weight: 800;
    gap: 0.22rem;
}

.admin-inspector-rule-empty {
    color: #8a96a3;
    font-size: 0.78rem;
}

.admin-inspector-modal-rule-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.admin-inspector-modal-rule-row {
    background: #f6f8fb;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: grid;
    gap: 0.75rem;
    padding: 0.75rem;
}

.admin-inspector-modal-create-rule {
    background: #f8fafc;
    border: 1px solid #dbe5ef;
    border-radius: 6px;
    display: grid;
    gap: 0.75rem;
    margin-top: 1rem;
    padding: 0.75rem;
}

.admin-inspector-modal-create-header {
    color: #24313f;
    font-size: 0.9rem;
}

.admin-inspector-rules-modal-dialog {
    max-width: min(1180px, calc(100vw - 1rem));
}

.admin-inspector-rules-modal .modal-body {
    max-height: calc(100vh - 170px);
    overflow-y: auto;
}

.admin-assignment-locations-modal-dialog {
    max-width: min(1040px, calc(100vw - 1rem));
}

.admin-assignment-locations-body {
    display: grid;
    gap: 1rem;
    max-height: calc(100vh - 170px);
    overflow-y: auto;
}

.admin-inspection-location-layout {
    align-items: start;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
}

.admin-inspection-country-panel,
.admin-inspection-city-panel {
    display: grid;
    gap: 0.75rem;
    padding: 0.85rem;
}

.admin-inspection-panel-header,
.admin-inspection-city-header {
    align-items: center;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
}

.admin-inspection-panel-header strong,
.admin-inspection-city-header h4 {
    color: #24313f;
}

.admin-inspection-city-header h4 {
    font-size: 1.08rem;
    margin: 0;
}

.admin-inspection-city-kicker {
    color: #607485;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.2;
    text-transform: uppercase;
}

.admin-inspection-country-list {
    display: grid;
    gap: 0.55rem;
    max-height: calc(100vh - 270px);
    overflow-y: auto;
    padding-right: 0.15rem;
}

.admin-inspection-country-row {
    background: #fff;
    border: 1px solid #dfe8f1;
    border-radius: 6px;
    display: grid;
    gap: 0.5rem;
    padding: 0.58rem;
}

.admin-inspection-country-row.is-selected {
    background: #f2fbfc;
    border-color: #7bc5d1;
    box-shadow: inset 3px 0 0 #18a2b8;
}

.admin-inspection-country-static {
    background: #f8fafc;
}

.admin-inspection-country-link {
    align-items: center;
    color: inherit;
    display: grid;
    gap: 0.55rem;
    grid-template-columns: auto minmax(0, 1fr);
    text-decoration: none;
}

.admin-inspection-country-link:hover,
.admin-inspection-country-link:focus {
    color: inherit;
    text-decoration: none;
}

.admin-inspection-country-code {
    align-items: center;
    background: #eef3f7;
    border: 1px solid #d8e2eb;
    border-radius: 4px;
    color: #2e3d4b;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 800;
    justify-content: center;
    min-height: 1.65rem;
    min-width: 2.8rem;
    padding: 0.1rem 0.38rem;
}

.admin-inspection-country-meta {
    display: grid;
    gap: 0.08rem;
    min-width: 0;
}

.admin-inspection-country-meta strong {
    color: #25313b;
    font-size: 0.86rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-inspection-country-meta small {
    color: #6f7f8d;
    font-size: 0.76rem;
    font-weight: 700;
}

.admin-inspection-country-edit,
.admin-inspection-country-create {
    align-items: center;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: minmax(56px, 0.45fr) minmax(0, 1fr) auto;
}

.admin-inspection-city-panel {
    min-width: 0;
}

.admin-inspection-city-toolbar {
    align-items: start;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 640px), 1fr));
}

.admin-inspection-city-search {
    display: flex;
    gap: 0.45rem;
    min-width: 0;
}

.admin-inspection-city-search .form-control {
    min-width: 0;
}

.admin-inspection-city-create {
    align-items: center;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: minmax(78px, 0.44fr) minmax(140px, 1fr) minmax(128px, 0.72fr) minmax(96px, max-content) max-content;
    min-width: 0;
}

.admin-inspection-city-create .form-control {
    min-width: 0;
}

.admin-inspection-city-create .custom-control {
    margin-bottom: 0;
    white-space: nowrap;
}

.admin-inspection-city-result-bar {
    align-items: center;
    color: #64707c;
    display: flex;
    flex-wrap: wrap;
    font-size: 0.8rem;
    font-weight: 700;
    gap: 0.5rem;
    justify-content: space-between;
}

.admin-inspection-city-table {
    min-width: 920px;
}

.admin-inspection-city-pagination {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.admin-prefix-config-panel {
    display: grid;
    gap: 0.85rem;
    padding: 0.85rem;
}

.admin-prefix-panel-header {
    align-items: center;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: auto minmax(0, 1fr);
}

.admin-prefix-panel-header strong {
    color: #24313f;
}

.admin-prefix-create-form {
    align-items: center;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: minmax(110px, 1fr) auto;
    justify-self: end;
    max-width: 360px;
    min-width: 0;
    width: 100%;
}

.admin-prefix-config-table {
    min-width: 720px;
}

.admin-prefix-source-badge {
    background: #f2f6fa;
    border: 1px solid #dbe5ef;
    border-radius: 999px;
    color: #607485;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 800;
    padding: 0.18rem 0.52rem;
}

.admin-prefix-code {
    background: #f8fafc;
    border: 1px solid #dbe5ef;
    border-radius: 4px;
    color: #25313b;
    display: inline-flex;
    font-size: 0.86rem;
    font-weight: 800;
    line-height: 1.2;
    padding: 0.24rem 0.48rem;
}

.admin-assignment-location-section {
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: grid;
    gap: 0.6rem;
    padding: 0.75rem;
}

.admin-assignment-location-table {
    min-width: 720px;
}

@media (max-width: 991.98px) {
    .admin-inspection-location-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-inspection-country-list {
        max-height: none;
    }

    .admin-inspection-city-toolbar {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-prefix-panel-header {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-prefix-create-form {
        justify-self: stretch;
        max-width: none;
    }
}

@media (max-width: 767.98px) {
    .admin-inspection-city-create,
    .admin-prefix-create-form {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }

    .admin-inspection-city-create .admin-page-action-button,
    .admin-prefix-create-form .admin-page-action-button {
        grid-column: 1 / -1;
        justify-content: center;
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .admin-inspection-country-edit,
    .admin-inspection-country-create,
    .admin-inspection-city-create,
    .admin-prefix-create-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-inspection-city-header,
    .admin-inspection-city-result-bar {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-inspection-city-search {
        width: 100%;
    }
}

.admin-person-id {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 4px;
    display: inline-block;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.2rem 0.4rem;
}

.admin-person-contact {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.admin-person-username {
    color: #25313b;
    font-weight: 700;
    line-height: 1.25;
}

.admin-person-contact small {
    color: #6c757d;
    line-height: 1.25;
}

.admin-role-grid,
.admin-inspector-type-grid {
    display: grid;
    gap: 0.25rem 0.6rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-role-grid .custom-control-label,
.admin-inspector-type-grid .custom-control-label {
    line-height: 1.35;
}

.admin-inspector-name-stack {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.admin-inspector-name-stack strong {
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-sub-inspector-count {
    color: #126a7c;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.25;
}

.admin-sub-inspector-empty {
    color: #6c757d;
    font-size: 0.82rem;
}

.admin-inspector-header-controls {
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    min-width: 0;
}

.admin-inspector-header-controls .admin-page-actions {
    width: 100%;
}

.admin-inspector-month-form {
    align-self: flex-end;
}

.admin-inspector-month-form .admin-date-filter-fields {
    align-items: flex-end;
}

.admin-inspector-breadcrumb {
    gap: 0.35rem 0.5rem;
}

.admin-inspector-breadcrumb-divider {
    color: #7f8d99;
    flex: 0 0 auto;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
}

.admin-sub-inspector-detail-table tr.admin-inspector-row-highlight td {
    background: #eaf7f9;
}

.admin-inspector-month-form .form-control-sm,
.admin-inspector-month-form .admin-date-filter-button {
    min-height: 31px;
}

.admin-inspector-month-input {
    width: 142px;
}

.admin-inspector-info-form {
    max-width: 980px;
}

.admin-inspector-info-grid {
    display: grid;
    gap: 0.75rem 0.85rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-inspector-info-field {
    margin-bottom: 0;
    min-width: 0;
}

.admin-inspector-info-email-field,
.admin-inspector-info-password-field {
    grid-column: 1 / -1;
}

.admin-inspector-info-field label {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    margin-bottom: 0.28rem;
}

.admin-inspector-info-field label i {
    color: #17a2b8;
    flex: 0 0 auto;
    font-size: 0.82rem;
}

.admin-inspector-info-field .form-control {
    background: #fff;
    border-color: #d7e1eb;
    border-radius: 4px;
    color: #25313b;
    font-weight: 600;
    min-height: 34px;
}

.admin-inspector-info-field .form-control:focus {
    border-color: #17a2b8;
    box-shadow: 0 0 0 0.15rem rgba(23, 162, 184, 0.16);
}

.admin-inspector-info-email {
    line-height: 1.35;
    min-height: 86px;
    resize: vertical;
}

.admin-inspector-info-field small {
    color: #6c757d;
    display: block;
    font-size: 0.78rem;
    line-height: 1.3;
    margin-top: 0.28rem;
}

.admin-inspector-detail-table-header,
.admin-sub-inspector-detail-header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0.75rem;
    justify-content: space-between;
    margin-bottom: 0.75rem;
}

.admin-inspector-detail-heading {
    min-width: 0;
}

.admin-inspector-detail-table-header .admin-section-title,
.admin-sub-inspector-detail-header .admin-section-title {
    margin-bottom: 0;
}

.admin-inspector-detail-table-stats,
.admin-sub-inspector-detail-stats {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.admin-inspector-detail-table-stats span,
.admin-sub-inspector-detail-stats span {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 4px;
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.25rem 0.45rem;
}

.admin-inspector-batch-filter-form {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-end;
    max-width: 100%;
}

.admin-inspector-batch-filter-form .form-group {
    margin-bottom: 0;
}

.admin-inspector-batch-filter-form label {
    color: #4f5d6a;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-bottom: 0.18rem;
    text-transform: uppercase;
}

.admin-inspector-filter-select {
    min-width: 230px;
}

.admin-inspector-batch-table,
.admin-sub-inspector-detail-table {
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.admin-inspector-batch-table {
    min-width: 1120px;
}

.admin-sub-inspector-detail-table {
    min-width: 980px;
}

.admin-inspector-batch-table th,
.admin-sub-inspector-detail-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
}

.admin-inspector-batch-table th,
.admin-inspector-batch-table td,
.admin-sub-inspector-detail-table th,
.admin-sub-inspector-detail-table td {
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.admin-inspector-batch-table td small {
    color: #6c757d;
    display: block;
    font-size: 0.78rem;
    line-height: 1.3;
    margin-top: 0.1rem;
}

.admin-inspector-batch-link {
    align-items: flex-start;
    color: #126a7c;
    display: inline-flex;
    gap: 0.35rem;
    font-weight: 700;
    line-height: 1.25;
    min-width: 0;
}

.admin-inspector-batch-link:hover,
.admin-inspector-batch-link:focus {
    color: #0f6674;
    text-decoration: none;
}

.admin-inspector-batch-link i {
    color: #7c8b98;
    flex: 0 0 auto;
    font-size: 0.84rem;
    line-height: 1.25;
    margin-top: 0.05rem;
}

.admin-inspector-batch-link span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-inspector-vo-link {
    align-items: center;
    max-width: 100%;
    white-space: nowrap;
}

.admin-inspector-vo-link span {
    overflow-wrap: normal;
    white-space: nowrap;
}

.admin-inspector-detail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
}

.admin-inspector-reporter {
    display: flex;
    flex-direction: column;
    gap: 0.28rem;
    min-width: 0;
}

.admin-inspector-reporter strong {
    color: #25313b;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-inspector-batch-table th:nth-child(1) {
    width: 15%;
}

.admin-inspector-batch-table th:nth-child(2) {
    width: 16%;
}

.admin-inspector-batch-table th:nth-child(3) {
    width: 18%;
}

.admin-inspector-batch-table th:nth-child(4) {
    width: 13%;
}

.admin-inspector-batch-table th:nth-child(5) {
    width: 13%;
}

.admin-inspector-batch-table th:nth-child(6) {
    width: 12%;
}

.admin-inspector-batch-table th:nth-child(7) {
    width: 13%;
}

.admin-inspector-batch-table td:nth-child(7) {
    white-space: nowrap;
}

.admin-inspector-satisfaction-badge {
    align-items: center;
    display: inline-flex;
    font-size: 0.78rem;
    justify-content: center;
    line-height: 1.25;
    min-width: 92px;
    padding-bottom: 0.28rem;
    padding-top: 0.28rem;
    white-space: nowrap;
}

.admin-sub-inspector-detail-table th:nth-child(1) {
    width: 52px;
}

.admin-sub-inspector-detail-table th:nth-child(2) {
    width: 18%;
}

.admin-sub-inspector-detail-table th:nth-child(3) {
    width: 28%;
}

.admin-sub-inspector-detail-table th:nth-child(4) {
    width: 17%;
}

.admin-sub-inspector-detail-table th:nth-child(5) {
    width: 110px;
}

.admin-sub-inspector-detail-table th:nth-child(6) {
    width: 165px;
}

.admin-sub-inspector-assigned-count {
    color: #25313b;
    font-weight: 700;
    line-height: 1.25;
}

.admin-reset-password {
    min-width: 150px;
}

.admin-reset-password .form-control,
.admin-reset-password .btn {
    min-height: 31px;
}

.admin-people-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.admin-inspector-table .admin-people-actions {
    display: grid;
    gap: 0.32rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
}

.admin-people-actions .btn,
.admin-people-save-bar .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
}

.admin-people-actions .btn {
    flex: 0 0 auto;
    min-width: 78px;
    white-space: nowrap;
}

.admin-inspector-table .admin-people-actions .btn:not(.admin-people-icon-button) {
    font-size: 0.78rem;
    min-width: 0;
    padding-left: 0.42rem;
    padding-right: 0.42rem;
    width: 100%;
}

.admin-inspector-table .admin-people-actions .admin-people-primary-action {
    background: #f0fbfd;
    border-color: #70c8d6;
    color: #166d7b;
    font-weight: 800;
}

.admin-inspector-table .admin-people-actions .admin-people-primary-action:hover,
.admin-inspector-table .admin-people-actions .admin-people-primary-action:focus {
    background: #dff6fa;
    border-color: #3fb2c4;
    color: #135b66;
}

.admin-people-actions .admin-people-icon-button {
    flex-basis: auto;
    min-width: 34px;
    padding-left: 0.45rem;
    padding-right: 0.45rem;
    width: 34px;
}

.admin-inspector-table .admin-people-actions .admin-people-icon-button {
    width: 100%;
}

.admin-people-modal-form label {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
}

.admin-people-save-bar {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
    padding: 0.6rem;
}

.admin-vo-summary-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
    padding: 0.55rem;
}

.admin-vo-summary-grid {
    display: grid;
    gap: 0.45rem;
    grid-template-columns: minmax(220px, 1.5fr) minmax(120px, 0.75fr) minmax(150px, 0.9fr) minmax(240px, 1.5fr);
}

.admin-vo-summary-item {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 0.55rem 0.65rem;
}

.admin-vo-summary-item strong {
    display: block;
    font-size: 0.98rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-vo-company-item strong a {
    color: #117a8b;
    text-decoration: none;
}

.admin-vo-company-item strong a:hover,
.admin-vo-company-item strong a:focus {
    color: #0f6674;
    text-decoration: none;
}

.admin-vo-summary-item small {
    color: #6c757d;
    display: block;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.admin-vo-batches-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
    padding: 0.75rem;
}

.admin-vo-batch-table-wrap {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
}

.admin-vo-batch-table {
    font-size: 0.86rem;
    table-layout: fixed;
}

.admin-vo-batch-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
}

table.admin-vo-batch-table th,
table.admin-vo-batch-table td {
    /* DataTables forces box-sizing: content-box on table.dataTable cells; keep fixed table cells predictable. */
    box-sizing: border-box;
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.admin-vo-batch-table td {
    padding: 0.65rem !important;
}

.admin-vo-batch-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem;
}

.admin-vo-batch-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
}

.admin-vo-batch-actions .admin-vo-transfer-button {
    width: auto;
}

.admin-vo-select-cell {
    text-align: center;
    width: 34px;
}

.admin-vo-batch-table .admin-vo-select-cell {
    padding-left: 0.45rem !important;
    padding-right: 0.45rem !important;
    text-align: center;
}

.admin-vo-select-cell input[type="checkbox"] {
    margin: 0;
    vertical-align: middle;
}

.admin-batch-id-stack,
.admin-batch-status-stack {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    max-width: 100%;
    min-width: 0;
}

.admin-batch-status-stack > .badge:first-child {
    font-size: 1em;
}

.admin-batch-id-stack .batch-job-link,
.admin-batch-id-stack .batch-muted,
.admin-batch-id-stack .batch-partial {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.admin-vo-page .admin-batch-id-stack .batch-job-link {
    align-items: flex-start;
    border-bottom: 1px solid transparent;
    color: #117a8b;
    display: inline-flex;
    gap: 0.35rem;
    line-height: 1.25;
    width: fit-content;
    text-decoration: none;
}

.admin-vo-page .admin-batch-id-stack .batch-job-link i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.84rem;
    line-height: 1.25;
    margin-top: 0.05rem;
}

.admin-vo-page .admin-batch-id-stack .batch-job-link span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.admin-vo-page .admin-batch-id-stack .batch-job-link:hover,
.admin-vo-page .admin-batch-id-stack .batch-job-link:focus {
    border-bottom-color: currentColor;
    color: #0f6674;
    text-decoration: none;
}

.admin-batch-inspector {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    padding: 0.35rem 0.45rem;
}

.admin-batch-inspector span,
.admin-batch-quantity span,
.admin-print-label-item span {
    color: #64707c;
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
}

.admin-batch-inspector strong,
.admin-batch-quantity strong,
.admin-print-label-item strong {
    display: block;
    font-size: 0.86rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.admin-batch-quantity {
    display: grid;
    gap: 0.35rem;
    grid-template-columns: minmax(0, 1fr);
    max-width: 100%;
    min-width: 0;
}

.admin-batch-quantity div {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    min-width: 0;
    padding: 0.4rem;
}

.admin-batch-note {
    display: block;
    line-height: 1.35;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.admin-print-label-list {
    container-name: admin-print-label-list;
    container-type: inline-size;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    max-width: 100%;
    min-width: 0;
}

.admin-print-label-item {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    display: grid;
    gap: 0.35rem 0.55rem;
    grid-template-columns: minmax(104px, 1.1fr) minmax(82px, 0.75fr) minmax(126px, 1fr);
    max-width: 100%;
    min-width: 0;
    padding: 0.45rem;
}

.admin-print-label-field {
    min-width: 0;
}

.admin-print-label-item strong {
    overflow-wrap: anywhere;
}

@container admin-print-label-list (max-width: 360px) {
    .admin-print-label-item {
        grid-template-columns: minmax(0, 1fr) minmax(82px, 0.72fr);
    }

    .admin-print-label-field-ls {
        grid-column: 1 / -1;
    }
}

@container admin-print-label-list (max-width: 215px) {
    .admin-print-label-item {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-print-label-field-ls {
        grid-column: auto;
    }
}

@media (max-width: 1199.98px) {
    .admin-transfer-review-overview {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-transfer-review-facts {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .admin-transfer-fact-wide {
        grid-column: span 2;
    }

    .admin-vo-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-vo-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-vo-batch-table {
        min-width: 1200px;
    }
}

@media (max-width: 767.98px) {
    .admin-transfer-review-overview {
        padding: 0.65rem;
    }

    .admin-transfer-review-section-heading {
        flex-direction: column;
    }

    .admin-transfer-check-grid,
    .admin-transfer-review-facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-transfer-vo-meta {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-transfer-fact-wide {
        grid-column: 1 / -1;
    }

    .admin-transfer-date-grid,
    .admin-transfer-quantity-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-transfer-classification-table {
        min-width: 620px;
    }

    .admin-transfer-review-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-transfer-review-actions .admin-page-action-button {
        width: 100%;
    }

    .admin-vo-header-actions {
        justify-content: flex-end;
        width: 100%;
    }

    .admin-vo-header-actions > .admin-page-action-button {
        flex: 0 0 auto;
        order: 1;
        width: auto;
    }

    .admin-vo-code-form {
        min-width: 0;
        width: 100%;
    }

    .admin-vo-login-form,
    .admin-vo-login-form .btn {
        min-width: 0;
        width: auto;
    }

    .admin-vo-header-actions .admin-vo-login-form {
        flex: 0 0 auto;
        order: 2;
        width: auto;
    }

    .admin-vo-admin-tools {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-vo-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-vo-info-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-vo-field-wide {
        grid-column: auto;
    }

    .admin-vo-info-actions,
    .admin-vo-raw-actions {
        justify-content: flex-start;
    }

    .admin-vo-info-actions .btn,
    .admin-vo-raw-actions .btn {
        width: 100%;
    }

    .admin-vo-batch-actions {
        align-items: flex-start;
    }

    .admin-vo-batch-actions .btn {
        width: auto;
    }

    .companys-filter-limit {
        flex-basis: 100%;
    }

    .companys-header-actions {
        flex-wrap: nowrap;
        gap: 0.28rem;
        justify-content: flex-end;
        max-width: 100%;
        overflow-x: auto;
        width: auto;
    }

    .companys-header-actions .companys-add-button {
        flex: 0 1 auto;
        font-size: 0.7rem;
        gap: 0.2rem;
        min-height: 26px;
        padding: 0.18rem 0.38rem;
        width: auto;
    }

    .companys-header-actions .companys-add-button i {
        font-size: 0.72rem;
    }

    #admin-body .companys-header-actions .companys-add-button {
        font-size: 0.7rem;
        gap: 0.2rem;
        min-height: 26px;
        padding: 0.18rem 0.38rem;
    }

    .admin-company-code-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-company-code-actions {
        justify-content: flex-end;
    }

    .admin-company-code-actions .admin-page-action-button {
        width: auto;
    }

    .companys-table {
        min-width: 760px;
        table-layout: fixed;
    }

    .company-actions {
        align-items: center;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 0.28rem;
        justify-content: flex-start;
    }

    .company-action-button {
        flex: 0 0 auto;
        width: auto;
    }

    .admin-emails-selected-count {
        margin-right: 0;
        width: 100%;
    }

    .admin-emails-table {
        min-width: 960px;
    }

    .admin-transfer-requests-table {
        min-width: 1120px;
    }

    .admin-transfer-requests-table .admin-transfer-route {
        align-items: start;
        column-gap: 0.42rem;
        display: grid;
        grid-template-columns: minmax(0, max-content) auto minmax(0, 1fr);
        row-gap: 0.12rem;
    }

    .admin-transfer-requests-table .admin-transfer-route-node {
        max-width: 100%;
    }

    .admin-transfer-requests-table .admin-transfer-route-arrow {
        align-self: start;
        padding-top: 0.08rem;
    }

    .admin-scroll-table {
        min-width: 760px;
    }

    .admin-scroll-table-md,
    .admin-search-table {
        min-width: 860px;
    }

    .admin-scroll-table-lg {
        min-width: 980px;
    }

    .admin-scroll-table-xl {
        min-width: 1120px;
    }

    .china-vo-summary-table {
        min-width: 1120px;
    }

    .admin-containers-table {
        min-width: 840px;
    }

    .monthly-invoice-rules-modal .modal-dialog {
        margin: 0.5rem;
        max-width: calc(100% - 1rem);
    }

    .admin-permission-rules-modal .modal-dialog {
        margin: 0.5rem;
        max-width: calc(100% - 1rem);
    }

    .monthly-invoice-rules-table {
        min-width: 920px;
    }

    .admin-permission-rules-table {
        min-width: 780px;
    }

    .admin-permission-rules-table th:nth-child(1) {
        width: 11%;
    }

    .admin-permission-rules-table th:nth-child(2) {
        width: 16%;
    }

    .admin-permission-rules-table th:nth-child(3) {
        width: 33%;
    }

    .admin-permission-rules-table th:nth-child(4) {
        width: 40%;
    }

    .admin-filter-toggle,
    .arrangement-filter-toggle {
        align-self: center;
        display: flex;
        font-size: 0.78rem;
        margin-left: auto;
        padding: 0.25rem 0.55rem;
        width: fit-content;
    }

    #admin-body .admin-page-header > .btn.admin-filter-toggle,
    #admin-body .admin-table-panel > .btn.admin-filter-toggle {
        display: flex;
        margin-left: auto;
        width: fit-content;
    }

    .admin-page-actions > .admin-filter-toggle {
        margin-left: auto;
        order: 2;
    }

    .admin-page-actions > .admin-page-action-button {
        order: 1;
    }

    .admin-page-actions > .admin-mobile-filter-collapse {
        order: 3;
    }

    .admin-mobile-filter-collapse {
        background: #f8fafc;
        border: 1px solid #d9e3ee;
        border-radius: 6px;
        padding: 0.75rem;
        width: 100%;
    }

    .admin-mobile-filter-collapse.show {
        margin-top: 0.25rem;
    }

    .admin-mobile-filter-collapse .admin-date-filter-fields {
        gap: 0.65rem;
    }

    .admin-page-header,
    .admin-page-header form,
    .admin-page-actions,
    .admin-date-filter-form,
    .admin-date-filter-fields,
    .admin-date-filter-fields .form-group,
    .admin-date-filter-fields .form-control,
    .admin-inspector-summary-scope-control,
    .admin-date-filter-fields .btn,
    .admin-page-action-button {
        width: 100%;
    }

    .admin-page-header > .admin-page-action-button,
    .admin-page-actions > .admin-page-action-button {
        flex: 0 0 auto;
        width: auto;
    }

    .admin-filter-card,
    .admin-filter-fields,
    .admin-filter-fields > *,
    .admin-filter-button {
        width: 100%;
    }

    .admin-page-actions,
    .admin-date-filter-fields,
    .admin-filter-fields {
        justify-content: flex-start;
    }

    .admin-page-actions.admin-vo-header-actions {
        justify-content: flex-end;
    }

    .admin-page-actions:has(> .admin-filter-toggle) {
        justify-content: flex-end;
    }

    .admin-page-actions:has(> .admin-page-action-button) > .admin-filter-toggle {
        margin-left: 0;
    }

    .admin-page-actions:has(> .admin-filter-toggle) > .admin-mobile-filter-collapse {
        flex: 1 1 100%;
    }

    .admin-page-title-row {
        flex-wrap: nowrap;
        justify-content: space-between;
        width: 100%;
    }

    .admin-page-header > div:first-child:has(.admin-page-title-row) {
        width: 100%;
    }

    .admin-page-title-row h3,
    .admin-page-title-row h1 {
        min-width: 0;
    }

    .admin-page-title-actions {
        flex: 0 0 auto;
        flex-wrap: nowrap;
        margin-left: auto;
    }

    #admin-body .admin-page-title-actions .admin-page-title-action {
        flex: 0 0 auto;
        font-size: 0.72rem;
        gap: 0.22rem;
        min-height: 28px;
        padding: 0.2rem 0.45rem;
        width: auto;
    }

    .admin-date-filter-fields .admin-inspector-summary-scope-option {
        flex: 1 1 0;
        justify-content: center;
    }

    .admin-mobile-filter-collapse .admin-search-button-group {
        display: flex;
        flex-wrap: nowrap;
    }

    .admin-mobile-filter-collapse .admin-search-button-group .admin-date-filter-button {
        flex: 1 1 0;
        width: auto;
    }

    .admin-emails-bulk-actions {
        display: flex;
        flex: 1 1 100%;
        flex-wrap: nowrap;
    }

    .admin-emails-bulk-actions .admin-page-action-button {
        flex: 1 1 0;
        width: auto;
    }

    .admin-containers-search-form .admin-containers-filter-fields {
        align-items: flex-end;
        display: grid;
        gap: 0.5rem;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .admin-containers-search-form .admin-containers-search-field,
    .admin-containers-search-form .admin-containers-search-field .form-control {
        min-width: 0;
        width: 100%;
    }

    .admin-containers-search-form .admin-date-filter-button {
        min-width: 92px;
        width: auto;
    }

    .admin-containers-search-form .admin-containers-clear-button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .companys-page .admin-page-actions,
    .admin-people-page .admin-page-actions,
    .admin-banned-yard-page .admin-page-actions,
    .admin-api-keys-page .admin-page-actions {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .companys-page .admin-page-actions .admin-page-action-button,
    .admin-people-page .admin-page-actions .admin-page-action-button,
    .admin-banned-yard-page .admin-page-actions .admin-page-action-button,
    .admin-api-keys-page .admin-page-actions .admin-page-action-button {
        flex: 0 1 auto;
        min-width: 0;
        width: auto;
    }

    .companys-page .companys-header-actions {
        flex-wrap: nowrap;
    }

    .admin-inspector-header-controls {
        width: 100%;
    }

    .admin-settings-table {
        min-width: 760px;
    }

    .admin-banned-yard-table {
        min-width: 1080px;
    }

    .admin-banned-yard-type-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-assignment-rule-main,
    .admin-assignment-rule-grid,
    .admin-assignment-condition-group-fields,
    .admin-assignment-flow {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-search-wide-field .form-control,
    .admin-search-button-group {
        min-width: 0;
        width: 100%;
    }

    .admin-search-results-summary span:not(:first-of-type) {
        border-left: 0;
        padding-left: 0;
    }

    .admin-search-panel-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-search-split-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-container-report-import,
    .admin-kso-editor-actions,
    .admin-batch-xml-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-dls-toolbar,
    .admin-dls-bulk-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-dls-search,
    .admin-dls-actions-row,
    .admin-dls-actions-row .btn,
    .admin-dls-inline-select {
        max-width: none;
        min-width: 0;
        width: 100%;
    }

    .admin-dls-actions-row {
        justify-content: flex-start;
    }

    .admin-batch-form-table,
    .admin-container-report-duplicates,
    .admin-container-report-preview {
        min-width: 860px;
    }

    .admin-batch-xml-table {
        min-width: 1040px;
    }

    .admin-dls-classification-table {
        min-width: 1180px;
    }

    .admin-api-key-table {
        min-width: 1280px;
    }

    .admin-api-key-scope-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-email-detail-table {
        min-width: 860px;
    }

    .admin-people-table {
        min-width: 980px;
    }

    .admin-inspector-table {
        min-width: 1040px;
    }

    .admin-inspector-table .admin-people-actions {
        grid-template-columns: repeat(4, 34px);
        justify-content: flex-start;
    }

    .admin-inspector-table .admin-people-actions .btn {
        height: 32px;
        min-width: 34px !important;
        padding-left: 0.35rem !important;
        padding-right: 0.35rem !important;
        width: 34px !important;
    }

    .admin-inspector-table .admin-people-actions .btn span {
        display: none;
    }

    .admin-inspector-detail-table-header,
    .admin-inspector-batch-filter-form,
    .admin-inspector-batch-filter-form .form-group,
    .admin-inspector-batch-filter-form .form-control,
    .admin-inspector-batch-filter-form .btn {
        width: 100%;
    }

    .admin-inspector-batch-filter-form {
        justify-content: flex-start;
    }

    .admin-inspector-filter-select {
        min-width: 0;
    }

    .admin-inspector-info-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .admin-inspector-info-email-field,
    .admin-inspector-info-password-field {
        grid-column: auto;
    }

    .admin-role-grid,
    .admin-inspector-type-grid {
        grid-template-columns: minmax(0, 1fr);
    }

}

@media (max-width: 359.98px) {
    .admin-transfer-check-grid,
    .admin-transfer-review-facts,
    .admin-transfer-date-grid,
    .admin-transfer-quantity-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 767.98px) {
    .admin-transfer-review-header {
        align-items: center;
        display: grid;
        gap: 0.25rem 0.6rem;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .admin-transfer-review-header .admin-transfer-review-heading {
        display: contents;
    }

    .admin-transfer-review-header .admin-page-label {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .admin-transfer-review-header h3 {
        grid-column: 1;
        grid-row: 2;
        min-width: 0;
    }

    .admin-transfer-review-header .admin-transfer-breadcrumb {
        grid-column: 1 / -1;
        grid-row: 3;
        margin-top: 0;
    }

    .admin-transfer-review-header .admin-transfer-review-header-actions {
        align-self: center;
        grid-column: 2;
        grid-row: 2;
        justify-content: flex-end;
        margin-left: 0;
        width: auto;
    }

    .admin-transfer-review-header .admin-transfer-review-header-actions > .admin-page-action-button {
        width: auto;
    }

    .admin-transfer-back-label-full {
        display: none;
    }

    .admin-transfer-back-label-short {
        display: inline;
    }

    .admin-transfer-review-actions {
        display: grid;
        gap: 0.5rem;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-transfer-review-actions .admin-page-action-button {
        min-width: 0;
        width: 100%;
    }

    .admin-transfer-review-actions .admin-page-action-button:only-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 575.98px) {
    .app-tabs-wrap,
    .admin-vo-tabs-wrap {
        margin-left: 0;
        margin-right: 0;
    }

    .app-segmented-tabs,
    .admin-vo-tabs {
        min-width: max-content;
    }

    .app-segmented-tabs .nav-link,
    .admin-vo-tabs .nav-link {
        font-size: 0.82rem;
        gap: 0.32rem;
        padding: 0.5rem 0.62rem;
    }

    .admin-vo-page .admin-vo-tabs-wrap {
        margin-left: 0;
        margin-right: 0;
        max-width: 100%;
        padding: 0.35rem;
        scroll-padding-inline: 0.35rem;
    }

    .admin-vo-page .admin-vo-tabs {
        padding-right: 0.35rem;
    }

}

#batch-manage .list-group-item ul {
    font-size: 0.8rem;
}

#batch-manage hr {
    border-top-color: #dfe8f2;
}

.batch-manage-header {
    align-items: flex-start;
    background: #f8fafc;
    border: 1px solid #dfe8f2;
    border-radius: 6px;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.9rem 1rem;
}

.batch-manage-title {
    align-items: center;
    color: #2C3E50;
    display: inline-flex;
    gap: 0.45rem;
    line-height: 1.1;
    margin: 0;
}

.batch-manage-title i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.92em;
    line-height: 1;
}

.batch-manage-title span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.batch-manage-meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.55rem;
    margin-top: 0.35rem;
}

.batch-manage-meta span:not(.badge) {
    color: #6c757d;
}

.batch-manage-meta .admin-batch-context-link span {
    color: inherit;
}

.batch-manage-status {
    padding-top: 0.1rem;
    white-space: nowrap;
}

.batch-manage-status .badge:not(.app-status-badge) {
    font-size: 0.95rem;
    padding: 0.38rem 0.62rem;
}

#batch-manage > .row > [class*="col-lg-"] > .card {
    border-color: #dfe8f2;
    border-radius: 6px;
    box-shadow: 0 1px 2px rgba(44, 62, 80, 0.05);
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-header {
    background: #f8fafc;
    border-bottom-color: #dfe8f2;
    color: #2C3E50;
    font-weight: 700;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-header.bg-success {
    background-color: #18BC9C !important;
    color: #fff !important;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-body {
    padding: 1rem;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-footer {
    background: #fbfcfe;
    border-top-color: #dfe8f2;
    padding: 0.75rem 1rem;
}

#batch-manage .card-body > .row > .col-4.text-right {
    color: #6c757d;
}

#batch-manage .card-body > .row > .col-4.text-right b {
    font-weight: 700;
}

#batch-manage .card-body > .row > .col-8 {
    line-height: 1.45;
    overflow-wrap: anywhere;
}

#batch-manage .card-body h4,
#batch-manage .card-body h5 {
    line-height: 1.2;
    margin-bottom: 0;
}

#batch-manage .card-body h4 .badge,
#batch-manage .card-body h5 .badge {
    font-size: 0.9rem;
}

#batch-manage .card-body hr {
    margin: 0.9rem 0;
}

@media (max-width: 575.98px) {
    .batch-manage-header {
        flex-direction: column;
    }

    .batch-manage-status {
        white-space: normal;
    }
}

.rfi-workbench-page {
    padding-bottom: 2rem;
}

.rfi-hero {
    align-items: flex-start;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    gap: 1rem;
    margin-bottom: 0.75rem;
    padding: 0;
}

.rfi-hero .batch-manage-title {
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.2;
}

.rfi-hero-main,
.rfi-hero-side {
    min-width: 0;
}

.rfi-hero-side {
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    justify-content: space-between;
}

.rfi-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-end;
}

.rfi-hero-actions .admin-page-action-button:not(.btn-sm):not(.btn-lg) {
    min-height: 36px;
}

.rfi-hero-actions .btn-sm.admin-page-action-button {
    min-height: 31px;
}

.rfi-hero-actions .btn-lg.admin-page-action-button {
    min-height: 42px;
}

.rfi-action-label-mobile {
    display: none;
}

.rfi-status-strip {
    display: grid;
    gap: 0.55rem;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-top: 0;
}

.rfi-status-chip {
    align-items: center;
    background: #ffffff;
    border: 1px solid #dfe8f2;
    border-radius: 8px;
    display: flex;
    gap: 0.5rem;
    min-height: 58px;
    min-width: 0;
    padding: 0.5rem 0.6rem;
}

.rfi-status-chip.is-good {
    border-color: #cfe9dd;
    background: #f7fcf9;
}

.rfi-status-chip.is-danger {
    border-color: #f2c6c2;
    background: #fff8f7;
}

.rfi-status-chip.is-muted {
    background: #f8fafc;
}

.rfi-status-icon {
    align-items: center;
    background: #eaf7f7;
    border-radius: 999px;
    color: #117a8b;
    display: inline-flex;
    flex: 0 0 30px;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.rfi-status-chip.is-good .rfi-status-icon {
    background: #e9f7ef;
    color: #1e7e34;
}

.rfi-status-chip.is-danger .rfi-status-icon {
    background: #fdecea;
    color: #c0392b;
}

.rfi-status-chip.is-muted .rfi-status-icon {
    background: #eef2f6;
    color: #6c757d;
}

.rfi-status-copy {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.rfi-status-label,
.rfi-note-editor label {
    color: #6c757d;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.rfi-status-copy strong {
    color: #25313b;
    font-size: 0.82rem;
    line-height: 1.18;
    overflow-wrap: anywhere;
}

.rfi-status-copy .badge {
    align-self: flex-start;
    margin-top: 0.1rem;
}

#batch-manage > .row {
    align-items: flex-start;
}

#batch-manage > .row > [class*="col-lg-"] > .card,
#batch-manage > .row > [class*="col-xl-"] > .card {
    border-color: #d9e3ee;
    border-radius: 8px;
    box-shadow: 0 7px 20px rgba(30, 46, 61, 0.045);
    overflow: hidden;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-header,
#batch-manage > .row > [class*="col-xl-"] > .card > .card-header {
    align-items: center;
    background: #ffffff;
    border-bottom-color: #e3ebf3;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    min-height: 58px;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-header.bg-success,
#batch-manage > .row > [class*="col-xl-"] > .card > .card-header.bg-success {
    background: #18BC9C !important;
    border-bottom-color: #18BC9C;
    color: #ffffff !important;
}

#batch-manage .card-header .float-right {
    float: none !important;
    margin-left: auto;
}

#batch-manage .rfi-panel > .card-body {
    padding: 0.65rem 0.85rem;
}

.rfi-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 0.85rem;
}

.rfi-summary-pair {
    border-bottom: 1px solid #edf2f7;
    min-width: 0;
    padding: 0.28rem 0;
}

.rfi-summary-pair span {
    color: #6c757d;
    display: block;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.15;
    text-transform: uppercase;
}

.rfi-summary-pair strong {
    color: #25313b;
    display: block;
    font-size: 0.84rem;
    font-weight: 600;
    line-height: 1.22;
    margin-top: 0.08rem;
    min-height: 1.02rem;
    overflow-wrap: anywhere;
}

.rfi-summary-pair em {
    color: #6c757d;
    font-style: normal;
    font-weight: 600;
}

#batch-manage .rfi-summary-pair a:not(.btn),
#batch-manage .status-note-line a:not(.btn) {
    color: var(--admin-link-color, #117a8b);
    font-weight: 700;
    text-decoration: none;
}

#batch-manage .rfi-summary-pair a:not(.btn):hover,
#batch-manage .rfi-summary-pair a:not(.btn):focus,
#batch-manage .status-note-line a:not(.btn):hover,
#batch-manage .status-note-line a:not(.btn):focus {
    color: var(--admin-link-hover-color, #0f6674);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.rfi-summary-pair .badge {
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.15;
    padding: 0.2rem 0.45rem;
}

.rfi-summary-pair .badge-success {
    background-color: #157347;
    color: #ffffff;
}

.rfi-summary-pair .badge-danger {
    background-color: #c82333;
    color: #ffffff;
}

.admin-created-report-badge {
    background-color: #e8f6f9;
    border: 1px solid #8fd4df;
    color: #0f6674;
}

.rfi-summary-classification-button {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
}

.rfi-summary-span-2 {
    grid-column: span 2;
}

.rfi-summary-full {
    align-items: start;
    column-gap: 0.75rem;
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: 120px minmax(0, 1fr);
}

.rfi-summary-full strong {
    margin-top: 0;
}

.rfi-summary-note strong {
    color: #7a5200;
}

.rfi-note-editor {
    align-items: flex-start;
    background: #f8fafc;
    border: 1px solid #e5edf5;
    border-radius: 4px;
    display: grid;
    gap: 0.5rem;
    grid-template-columns: 110px minmax(0, 1fr) auto;
    margin-top: 0.65rem;
    padding: 0.55rem;
}

.rfi-note-editor label {
    margin: 0.28rem 0 0;
}

.rfi-note-editor textarea {
    min-height: 38px;
    resize: vertical;
}

.inspection-report-action-row {
    border-bottom-color: #e5edf5;
}

.inspection-report-action-label i {
    color: #117a8b;
}

.inspection-report-action-buttons .btn {
    border-radius: 4px;
}

.rfi-file-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
}

.rfi-file-actions .btn {
    align-items: center;
    display: inline-flex;
    flex: 0 1 auto;
    gap: 0.25rem;
    justify-content: center;
    max-width: 100%;
    white-space: nowrap;
}

.rfi-file-actions .btn-width-100 {
    min-width: 100px;
    width: auto;
}

.rfi-file-actions .btn i {
    flex: 0 0 auto;
    margin-right: 0 !important;
}

#batch-manage #jstree_menu {
    background: #fbfcfe;
    border: 1px solid #e5edf5;
    border-radius: 7px;
    padding: 0.55rem;
}

#batch-manage .batch-log-list {
    position: relative;
}

#batch-manage .batch-log-list .list-group-item {
    border-color: #e5edf5;
    padding-left: 1rem;
}

#batch-manage .batch-log-list .list-group-item:first-child {
    border-top: 0;
}

#batch-manage > .row > [class*="col-lg-"] > .card,
#batch-manage > .row > [class*="col-xl-"] > .card {
    color: #25313b;
    font-size: 0.86rem;
    line-height: 1.35;
}

#batch-manage > .row > [class*="col-lg-"] > .card + .card,
#batch-manage > .row > [class*="col-xl-"] > .card + .card {
    margin-top: 0.8rem !important;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-header,
#batch-manage > .row > [class*="col-xl-"] > .card > .card-header {
    min-height: 46px;
    padding: 0.55rem 0.8rem;
}

#batch-manage .card-header strong {
    display: block;
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.2;
}

#batch-manage .card-header .badge {
    font-size: 0.72rem;
    font-weight: 700;
}

#batch-manage .card-header.bg-success .btn {
    border-color: rgba(255, 255, 255, 0.85);
    color: #ffffff;
}

#batch-manage .card-header.bg-success .btn:hover {
    background: rgba(255, 255, 255, 0.16);
    color: #ffffff;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-body,
#batch-manage > .row > [class*="col-xl-"] > .card > .card-body,
#batch-manage .rfi-panel > .card-body {
    padding: 0.72rem 0.85rem;
}

#batch-manage > .row > [class*="col-lg-"] > .card > .card-footer,
#batch-manage > .row > [class*="col-xl-"] > .card > .card-footer {
    padding: 0.58rem 0.85rem;
}

#batch-manage .card-body > .row > .col-4.text-right {
    color: #6c757d;
    font-size: 0.72rem;
    line-height: 1.3;
    padding-top: 0.18rem;
}

#batch-manage .card-body > .row > .col-4.text-right b,
#batch-manage .print-label-field label {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

#batch-manage .card-body > .row > .col-8 {
    font-size: 0.86rem;
    line-height: 1.35;
}

#batch-manage .card-body p {
    font-size: 0.86rem;
    line-height: 1.35;
    margin-bottom: 0.5rem;
}

#batch-manage .btn-sm {
    align-items: center;
    display: inline-flex;
    font-size: 0.82rem;
    gap: 0.25rem;
    justify-content: center;
    line-height: 1.2;
    min-height: 30px;
}

#batch-manage .btn-sm i {
    line-height: 1;
    margin-right: 0.15rem;
}

#batch-manage .form-control-sm {
    font-size: 0.84rem;
    min-height: 30px;
}

#batch-manage .form-check-label,
#batch-manage small {
    font-size: 0.78rem;
    line-height: 1.3;
}

#batch-manage #jstree_menu {
    font-size: 0.84rem;
    line-height: 1.35;
}

#batch-manage .print-label-row {
    padding: 0.6rem;
}

#batch-manage .print-label-fields {
    gap: 0.45rem 0.6rem;
}

#batch-manage .print-label-actions {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
}

#batch-manage .inspection-report-action-row {
    min-height: 54px;
    padding: 0.55rem 0;
}

#batch-manage .inspection-report-action-row.is-ready {
    background: #f0fbf4;
    border-color: #b8e7c5;
}

#batch-manage .inspection-report-action-row.is-ready .inspection-report-action-label i {
    color: #28a745;
}

#batch-manage .inspection-report-action-title {
    font-size: 0.88rem;
    line-height: 1.2;
}

#batch-manage .inspection-report-action-note {
    font-size: 0.74rem;
}

#batch-manage .inspection-report-action-note.is-ready {
    color: #218838;
    font-weight: 700;
}

#batch-manage .inspection-report-action-note.is-empty {
    color: #95a5a6;
}

#batch-manage .inspection-report-action-label i {
    font-size: 1rem;
    margin-right: 0.45rem;
    width: 1.45rem;
}

#batch-manage .inspection-report-action-buttons .btn {
    height: 30px;
    min-height: 30px;
    width: 32px;
}

#batch-manage .batch-log-list .list-group-item {
    font-size: 0.86rem;
    line-height: 1.35;
    padding: 0.58rem 0.85rem;
}

#batch-manage .batch-log-list h4 {
    line-height: 1;
}

#batch-manage .batch-log-list .badge {
    font-size: 0.72rem;
    line-height: 1.2;
}

@media (max-width: 1199.98px) {
    .rfi-status-strip {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .rfi-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rfi-summary-span-2,
    .rfi-summary-full {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767.98px) {
    .rfi-hero {
        flex-direction: column;
    }

    .rfi-hero .batch-manage-title {
        font-size: 1.45rem;
    }

    .rfi-hero-side {
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 100%;
    }

    .rfi-hero-actions {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        margin-left: auto;
        max-width: 100%;
        width: auto;
    }

    .rfi-hero-actions .admin-page-action-button {
        flex: 0 0 auto;
        min-width: 0;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        width: auto;
    }

    .rfi-hero-side .batch-manage-status {
        flex: 0 0 auto;
    }

    .rfi-action-label-full {
        display: none;
    }

    .rfi-action-label-mobile {
        display: inline;
    }

    .rfi-status-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rfi-summary-grid {
        grid-template-columns: 1fr;
    }

    .rfi-summary-full {
        grid-template-columns: 1fr;
    }

    .rfi-summary-span-2 {
        grid-column: auto;
    }

    .rfi-note-editor {
        grid-template-columns: 1fr;
    }

    .rfi-file-actions {
        justify-content: flex-end;
    }
}

@media (max-width: 575.98px) {
    .rfi-hero-actions {
        gap: 0.3rem;
    }

    .rfi-hero-actions .admin-page-action-button {
        padding-left: 0.38rem;
        padding-right: 0.38rem;
    }

    .rfi-status-strip {
        gap: 0.55rem;
    }

    .rfi-status-chip {
        min-height: 62px;
    }

    .rfi-file-actions .btn {
        flex: 0 1 auto;
        min-width: 0;
        width: auto;
    }
}

.upload-file-shell {
    background: #f8fafc;
    border: 1px solid #dfe8f2;
    border-radius: 6px;
    padding: 0.75rem;
}

.upload-file-shell-title {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: space-between;
    margin-bottom: 0.55rem;
}

.upload-file-shell-title h6 {
    font-weight: 700;
    margin: 0;
}

.upload-file-title-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
}

.upload-file-bulk-actions {
    align-items: center;
    background: #fff;
    border: 1px solid #d9e3ee;
    border-left: 3px solid #28a745;
    border-radius: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    justify-content: space-between;
    margin-bottom: 0.55rem;
    padding: 0.45rem 0.5rem;
}

.upload-file-bulk-status,
.upload-file-bulk-controls,
.upload-file-bulk-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.3rem;
}

.upload-file-bulk-status {
    min-width: 0;
}

.upload-file-bulk-controls {
    flex-wrap: wrap;
    gap: 0.35rem;
    justify-content: flex-end;
}

.upload-file-bulk-status-icon {
    align-items: center;
    background: #edf9f1;
    border-radius: 50%;
    color: #1f7a3b;
    display: inline-flex;
    flex: 0 0 auto;
    height: 1.65rem;
    justify-content: center;
    width: 1.65rem;
}

.upload-file-selected-count {
    color: #263746;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.upload-file-view-toggle,
.upload-file-view-toggle-group .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.3rem;
}

.upload-file-view-toggle-group .btn {
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.1;
    padding: 0.28rem 0.48rem;
}

.upload-file-view-toggle-group .btn.active {
    background: #2C3E50;
    border-color: #2C3E50;
    color: #fff;
}

.upload-file-count {
    background: #2C3E50;
    border-radius: 999px;
    color: #fff;
    font-size: 0.72rem;
    padding: 0.18rem 0.5rem;
}

.upload-file-empty {
    background: #fff;
    border: 1px dashed #b9c8d8;
    border-radius: 6px;
    color: #6c757d;
    font-size: 0.86rem;
    padding: 0.9rem;
}

.upload-file-list {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.upload-file-item {
    align-items: center;
    background: #fff;
    border: 1px solid #dfe8f2;
    border-radius: 6px;
    display: grid;
    gap: 0.45rem;
    grid-template-columns: 1.35rem minmax(0, 1fr) auto;
    padding: 0.45rem 0.5rem;
}

.upload-file-shell-bulk .upload-file-item {
    grid-template-columns: 1rem 1.35rem minmax(0, 1fr) auto;
}

.upload-file-select {
    align-items: center;
    display: flex;
    justify-content: center;
}

.upload-file-select input,
.upload-file-photo-select input {
    cursor: pointer;
    height: 1rem;
    margin: 0;
    width: 1rem;
}

.upload-file-select input:focus,
.upload-file-photo-select input:focus {
    box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.18);
    outline: none;
}

.upload-file-item.is-upload-file-selectable:hover {
    border-color: #bfd0df;
}

.upload-file-item.is-selected,
.upload-file-photo.is-selected {
    background: #fbfffc;
    border-color: #72c49b;
    box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.1);
}

.upload-file-icon {
    color: #2C3E50;
    font-size: 1rem;
    line-height: 1.4;
    text-align: center;
}

.upload-file-name {
    color: #2C3E50;
    display: block;
    font-size: 0.84rem;
    font-weight: 600;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.upload-file-name:hover {
    color: #1a252f;
}

.inspector-upload-files-panel .upload-file-name,
.inspector-upload-files-panel .upload-file-photo-body .upload-file-name,
.exporter-upload-files-panel .upload-file-name,
.exporter-upload-files-panel .upload-file-photo-body .upload-file-name {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.upload-file-meta {
    margin-top: 0.18rem;
}

.upload-file-type {
    background: #eaf4ff;
    border-radius: 999px;
    color: #2C3E50;
    display: inline-block;
    font-size: 0.68rem;
    line-height: 1;
    padding: 0.18rem 0.4rem;
}

.upload-file-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.18rem;
    justify-content: flex-end;
    min-width: 0;
}

.upload-file-actions .btn {
    align-items: center;
    display: inline-flex;
    font-size: 0;
    height: 28px;
    justify-content: center;
    min-width: 0;
    padding: 0;
    width: 30px;
}

.upload-file-actions .btn i {
    font-size: 0.85rem;
    margin-right: 0;
}

.upload-file-photo-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fit, minmax(min(150px, calc((100% - 0.75rem) / 2)), 1fr));
}

.upload-file-photo {
    background: #fff;
    border: 1px solid #dfe8f2;
    border-radius: 6px;
    overflow: hidden;
    position: relative;
}

.upload-file-photo-select {
    align-items: center;
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid #d9e3ee;
    border-radius: 0.2rem;
    box-shadow: 0 2px 8px rgba(38, 55, 70, 0.12);
    display: flex;
    height: 28px;
    justify-content: center;
    left: 0.45rem;
    margin: 0;
    position: absolute;
    top: 0.45rem;
    width: 28px;
    z-index: 2;
}

.upload-file-photo-select:hover {
    border-color: #9fcfb4;
}

.upload-file-photo-preview {
    background: #eef3f8;
    display: block;
}

.upload-file-photo-preview img {
    aspect-ratio: 4 / 3;
    display: block;
    height: auto;
    object-fit: cover;
    width: 100%;
}

.upload-file-photo-body {
    padding: 0.6rem;
}

.upload-file-photo-body .upload-file-name {
    font-size: 0.82rem;
}

.upload-file-photo-body .upload-file-actions {
    justify-content: flex-start;
}

.inspector-upload-page .inspector-upload-files-panel {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 120px);
    max-height: calc(100vh - 2rem);
    position: sticky;
    top: 1rem;
}

.inspector-upload-page .inspector-upload-files-panel .upload-file-shell-title {
    flex: 0 0 auto;
}

.inspector-upload-page .inspector-upload-files-panel .upload-file-scroll-body {
    flex: 1 1 auto;
    max-height: none;
    min-height: 0;
    overflow-y: auto;
    padding-right: 0.15rem;
}

.exporter-upload-page .exporter-upload-files-panel {
    display: flex;
    flex-direction: column;
    max-height: min(620px, calc(100vh - 165px));
    position: sticky;
    top: 1rem;
}

.exporter-upload-page .exporter-upload-files-panel .upload-file-shell-title {
    flex: 0 0 auto;
}

.exporter-upload-page .exporter-upload-files-panel .upload-file-scroll-body {
    flex: 1 1 auto;
    max-height: min(540px, calc(100vh - 240px));
    min-height: 0;
    overflow-y: auto;
    padding-right: 0.15rem;
}

.inspector-upload-page .inspector-form-submit {
    margin-top: 0.8rem;
}

.inspector-upload-photo-status {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.2;
    margin-top: 0.35rem;
}

.inspector-upload-photo-status.is-uploaded {
    color: #1f7a3b;
}

.inspector-upload-photo-status.is-required {
    color: #b45309;
}

.inspector-direct-upload-panel {
    background: #f8fbff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-top: 0.85rem;
    padding: 0.85rem;
}

.inspector-direct-upload-header {
    align-items: flex-start;
    display: flex;
    gap: 0.6rem;
}

.inspector-direct-upload-icon {
    align-items: center;
    background: #e8f5ec;
    border-radius: 6px;
    color: #1f7a3b;
    display: inline-flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.inspector-direct-upload-copy {
    color: #4f5d6a;
    display: flex;
    flex-direction: column;
    font-size: 0.82rem;
    line-height: 1.35;
    min-width: 0;
}

.inspector-direct-upload-copy strong {
    color: #25313b;
    font-size: 0.9rem;
    font-weight: 700;
}

.inspector-direct-upload-progress {
    background: #e6edf4;
    border-radius: 4px;
    height: 1rem;
    margin-top: 0.75rem;
}

.inspector-direct-upload-progress .progress-bar {
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1rem;
    min-width: 2.5rem;
}

.inspector-direct-upload-files {
    display: grid;
    gap: 0.35rem;
    margin-top: 0.75rem;
}

.inspector-direct-upload-file {
    align-items: center;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    color: #4f5d6a;
    display: grid;
    font-size: 0.78rem;
    gap: 0.45rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 34px;
    padding: 0.4rem 0.5rem;
}

.inspector-direct-upload-file-icon {
    color: #8a98a8;
}

.inspector-direct-upload-file-name {
    color: #25313b;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.inspector-direct-upload-file-size {
    color: #6c757d;
    font-size: 0.72rem;
}

.inspector-direct-upload-file.is-uploading {
    border-color: rgba(40, 167, 69, 0.45);
    box-shadow: inset 3px 0 0 #28a745;
}

.inspector-direct-upload-file.is-done .inspector-direct-upload-file-icon {
    color: #1f7a3b;
}

.direct-s3-upload-panel {
    background: #f8fbff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-top: 0.85rem;
    padding: 0.85rem;
}

.direct-s3-upload-header {
    align-items: flex-start;
    display: flex;
    gap: 0.6rem;
}

.direct-s3-upload-icon {
    align-items: center;
    background: #e8f5ec;
    border-radius: 6px;
    color: #1f7a3b;
    display: inline-flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.direct-s3-upload-copy {
    color: #4f5d6a;
    display: flex;
    flex-direction: column;
    font-size: 0.82rem;
    line-height: 1.35;
    min-width: 0;
}

.direct-s3-upload-copy strong {
    color: #25313b;
    font-size: 0.9rem;
    font-weight: 700;
}

.direct-s3-upload-progress {
    background: #e6edf4;
    border-radius: 4px;
    height: 1rem;
    margin-top: 0.75rem;
}

.direct-s3-upload-progress .progress-bar {
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1rem;
    min-width: 2.5rem;
}

.direct-s3-upload-files {
    display: grid;
    gap: 0.35rem;
    margin-top: 0.75rem;
}

.direct-s3-upload-file {
    align-items: center;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    color: #4f5d6a;
    display: grid;
    font-size: 0.78rem;
    gap: 0.45rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 34px;
    padding: 0.4rem 0.5rem;
}

.direct-s3-upload-file-icon {
    color: #8a98a8;
}

.direct-s3-upload-file-name {
    color: #25313b;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.direct-s3-upload-file-size {
    color: #6c757d;
    font-size: 0.72rem;
}

.direct-s3-upload-file.is-uploading {
    border-color: rgba(40, 167, 69, 0.45);
    box-shadow: inset 3px 0 0 #28a745;
}

.direct-s3-upload-file.is-done .direct-s3-upload-file-icon {
    color: #1f7a3b;
}

.inspector-photo-dropzone {
    min-height: 78px;
}

@media (min-width: 992px) {
    .inspector-upload-page > .row {
        align-items: stretch;
    }

    .inspector-upload-page > .row > [class*="col-lg-"] {
        display: flex;
        flex-direction: column;
    }

    .inspector-upload-page .inspector-upload-form {
        flex: 1 1 auto;
        width: 100%;
    }

    .inspector-upload-page .inspector-upload-files-panel {
        flex: 0 0 auto;
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .direct-s3-upload-header {
        gap: 0.5rem;
    }

    .direct-s3-upload-file {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .direct-s3-upload-file-size {
        grid-column: 2;
    }

    .inspector-direct-upload-header {
        gap: 0.5rem;
    }

    .inspector-direct-upload-file {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .inspector-direct-upload-file-size {
        grid-column: 2;
    }
}

@media (max-width: 575.98px) {
    .upload-file-bulk-actions {
        align-items: flex-start;
    }

    .upload-file-bulk-controls {
        justify-content: flex-start;
        width: 100%;
    }

    .upload-file-item {
        grid-template-columns: 1.5rem minmax(0, 1fr);
    }

    .upload-file-shell-bulk .upload-file-item {
        grid-template-columns: 1rem 1.5rem minmax(0, 1fr);
    }

    .upload-file-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
        min-width: 0;
    }
}

@media (max-width: 991.98px) {
    .inspector-upload-page .inspector-upload-files-panel {
        height: auto;
        max-height: none;
        min-height: 0;
        position: static;
    }

    .exporter-upload-page .exporter-upload-files-panel {
        max-height: none;
        position: static;
    }

    .inspector-upload-page .inspector-upload-files-panel .upload-file-scroll-body,
    .exporter-upload-page .exporter-upload-files-panel .upload-file-scroll-body {
        max-height: none;
        overflow-y: visible;
        padding-right: 0;
    }
}

.arrangement-filter-toggle {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    justify-content: center;
}

.arrangement-page-subtitle i {
    flex: 0 0 auto;
    color: #17a2b8;
}

.arrangement-page-subtitle > span {
    align-items: center;
    display: inline-flex;
    min-width: 0;
}

.arrangement-subtitle-text {
    min-width: 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

.arrangement-summary-strip {
    display: grid;
    gap: 0.45rem;
    grid-template-columns: repeat(4, minmax(130px, 1fr));
    margin-bottom: 0.65rem;
}

.arrangement-summary-card {
    align-items: center;
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    gap: 0.45rem;
    min-height: 40px;
    min-width: 0;
    padding: 0.42rem 0.55rem;
}

.arrangement-summary-card span {
    color: #64707c;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.2;
    min-width: 0;
    overflow-wrap: anywhere;
    text-transform: uppercase;
}

.arrangement-summary-card strong {
    color: #126a7c;
    font-size: 1.08rem;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
    line-height: 1;
    margin-left: auto;
}

.arrangement-summary-card i {
    align-items: center;
    background: #eaf6fb;
    border-radius: 999px;
    color: #17a2b8;
    display: inline-flex;
    flex: 0 0 24px;
    font-size: 0.72rem;
    height: 24px;
    justify-content: center;
    order: -1;
    width: 24px;
}

.arrangement-summary-card-primary {
    border-color: #b9dfe8;
}

.arrangement-summary-card-warning i {
    background: #fff4e6;
    color: #d9822b;
}

.arrangement-table-panel {
    overflow: hidden;
    padding: 0;
}

.arrangement-table-heading {
    align-items: center;
    background: linear-gradient(90deg, rgba(23, 162, 184, 0.08) 0, rgba(23, 162, 184, 0) 44%), #fff;
    border-bottom: 1px solid #d9e3ee;
    display: flex;
    gap: 0.75rem;
    justify-content: space-between;
    padding: 0.85rem 1rem;
}

.arrangement-table-heading h5 {
    color: #126a7c;
    font-size: 1rem;
    font-weight: 800;
    margin: 0;
}

.arrangement-table-heading span {
    color: #4f5d6a;
    display: block;
    font-size: 0.82rem;
    line-height: 1.35;
    margin-top: 0.15rem;
}

.arrangement-result-count {
    background: #eaf8fb;
    border: 1px solid #b9dfe8;
    border-radius: 999px;
    color: #126a7c !important;
    flex: 0 0 auto;
    font-weight: 800;
    margin-top: 0 !important;
    padding: 0.24rem 0.62rem;
}

.arrangement-table-scroll {
    padding: 0.75rem;
}

.arrangement-list-table {
    font-size: 0.86rem;
    table-layout: fixed;
}

.arrangement-list-table thead th {
    font-size: 0.77rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.65rem !important;
    vertical-align: middle;
}

.arrangement-column-sort-hint {
    color: #6c757d;
    display: block;
    font-size: 0.68rem;
    font-weight: 600;
}

.arrangement-list-table tbody td {
    border-color: #dfe8f2 !important;
    color: #25313b;
    font-size: 0.86rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
    padding: 0.65rem !important;
    vertical-align: top !important;
    white-space: normal;
}

.arrangement-list-table tbody tr.table-status-inspected {
    background: var(--admin-status-inspected-bg, #dff5e8) !important;
}

.arrangement-list-table tbody tr.table-status-pre_inspect_doc_received,
.arrangement-list-table tbody tr.table-status-doc_received {
    background: var(--admin-status-doc-received-bg, #ffffff) !important;
}

.arrangement-list-table tbody tr.table-status-arranged {
    background: var(--admin-status-arranged-bg, #ffffff) !important;
}

.arrangement-list-table tbody tr.table-status-finish {
    background: var(--admin-status-finish-bg, #f1f4f7) !important;
}

.arrangement-list-table tbody tr.table-status-cancelled {
    background: var(--admin-status-cancelled-bg, #ffe6e9) !important;
}

.arrangement-list-table tbody tr.table-status-transferred {
    background: var(--admin-status-transferred-bg, #f5f1fb) !important;
}

.arrangement-list-table tbody tr.table-inspection-unsatisfied {
    background: var(--admin-status-warning-bg, #fff4e6) !important;
}

.arrangement-list-table tbody td:first-child {
    --admin-sticky-status-bar: transparent;
    box-shadow: inset 4px 0 0 var(--admin-sticky-status-bar);
    height: 1px;
}

.arrangement-list-table tbody td:first-child .arrangement-job-stack {
    height: 100%;
    min-height: 100%;
}

.arrangement-list-table tbody tr.table-status-inspected td:first-child {
    --admin-sticky-status-bar: var(--admin-status-inspected-bar, #218838);
}

.arrangement-list-table tbody tr.table-status-pre_inspect_doc_received td:first-child,
.arrangement-list-table tbody tr.table-status-doc_received td:first-child {
    --admin-sticky-status-bar: var(--admin-status-doc-received-bar, #cfdce8);
}

.arrangement-list-table tbody tr.table-status-arranged td:first-child {
    --admin-sticky-status-bar: var(--admin-status-arranged-bar, #2f80ed);
}

.arrangement-list-table tbody tr.table-status-finish td:first-child {
    --admin-sticky-status-bar: var(--admin-status-finish-bar, #6c757d);
}

.arrangement-list-table tbody tr.table-status-cancelled td:first-child {
    --admin-sticky-status-bar: var(--admin-status-cancelled-bar, #dc3545);
}

.arrangement-list-table tbody tr.table-status-transferred td:first-child {
    --admin-sticky-status-bar: var(--admin-status-transferred-bar, #6f42c1);
}

.arrangement-list-table tbody tr.table-inspection-unsatisfied td:first-child {
    --admin-sticky-status-bar: var(--admin-status-warning-bar, #d9822b);
}

.arrangement-date-list {
    display: grid;
    gap: 0.4rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.arrangement-date-row {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    min-width: 0;
    padding: 0.4rem;
}

.arrangement-date-row span {
    color: #64707c;
    cursor: help;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.2rem;
}

.arrangement-date-row strong {
    color: #25313b;
    display: block;
    font-size: 0.84rem;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    line-height: 1.25;
    overflow-wrap: anywhere;
    white-space: normal;
}

.arrangement-job-stack {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.arrangement-job-main {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.arrangement-job-link {
    align-items: flex-start;
    border-bottom: 1px solid transparent;
    color: #117a8b;
    display: inline-flex;
    font-size: 0.86rem;
    font-weight: 700;
    gap: 0.35rem;
    line-height: 1.2;
    max-width: 100%;
    overflow-wrap: anywhere;
    text-decoration: none;
    white-space: normal;
}

.arrangement-job-link i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.84rem;
    line-height: 1.2;
    margin-top: 0.05rem;
}

.arrangement-vo-ref > i {
    color: #7c8b98;
    flex: 0 0 auto;
    font-size: 0.84rem;
    line-height: 1.2;
    margin-top: 0.05rem;
}

.arrangement-job-link span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.arrangement-job-link:hover,
.arrangement-job-link:focus {
    border-bottom-color: currentColor;
    color: #0c6370;
    text-decoration: none;
}

.arrangement-vo-ref {
    align-items: flex-start;
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    color: #25313b;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.35rem;
    line-height: 1.25;
    max-width: 100%;
    overflow-wrap: normal;
    padding: 0.35rem 0.4rem;
    white-space: nowrap;
}

.arrangement-vo-text {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.arrangement-vo-link {
    color: #25313b;
    font-weight: 700;
    text-decoration: none;
}

.arrangement-vo-link:hover,
.arrangement-vo-link:focus {
    color: #117a8b;
    text-decoration: underline;
    text-underline-offset: 2px;
}

@media (max-width: 767.98px) {
    .admin-inspection-schedule-table .arrangement-job-link i,
    .admin-inspection-schedule-table .arrangement-vo-ref > i {
        display: none;
    }
}

.arrangement-job-created {
    border-top: 1px solid #e8eef5;
    color: #64707c;
    display: flex;
    flex-direction: column;
    font-size: 0.82rem;
    font-variant-numeric: tabular-nums;
    gap: 0.2rem;
    margin-top: auto;
    padding-top: 0.55rem;
}

.arrangement-job-created span {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.15rem;
}

.arrangement-job-created strong {
    color: #25313b;
    display: block;
    font-weight: 600;
    line-height: 1.25;
}

.arrangement-status-stack {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    min-width: 0;
}

.arrangement-status-primary .badge:not(.app-status-badge) {
    font-size: 0.72rem;
    line-height: 1.15;
    padding: 0.22rem 0.42rem;
    white-space: normal;
}

.arrangement-status-inspection {
    border-top: 1px solid #e8eef5;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding-top: 0.55rem;
    width: 100%;
}

.arrangement-status-inspection .badge {
    font-size: 0.72rem;
    line-height: 1.15;
    padding: 0.22rem 0.42rem;
    white-space: normal;
}

.arrangement-detail-list {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.arrangement-detail-line {
    display: grid;
    gap: 0.35rem;
    grid-template-columns: 86px minmax(0, 1fr);
}

.arrangement-detail-line > span {
    color: #64707c;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
}

.arrangement-detail-line strong {
    font-weight: 600;
    line-height: 1.25;
    min-width: 0;
}

.arrangement-description-text {
    color: inherit;
    display: -webkit-box;
    line-height: inherit;
    overflow: hidden;
    white-space: normal;
    -webkit-box-orient: vertical;
}

.arrangement-description-text.is-collapsed {
    -webkit-line-clamp: 5;
}

.arrangement-description-text.is-expanded {
    display: block;
    overflow: visible;
}

.arrangement-description-toggle {
    display: none;
    font-size: 0.78rem;
    line-height: 1.2;
    margin-top: 0.15rem;
    padding: 0;
}

.arrangement-description-toggle.is-needed {
    display: inline-block;
}

.admin-exporter-submission-table {
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.admin-exporter-submission-table thead th {
    background: #f4f7fb;
    border-bottom-color: #d9e3ee !important;
    color: #3d4b59;
    font-size: 0.77rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.65rem !important;
    vertical-align: middle;
}

.admin-exporter-submission-sort-hint {
    color: #7b8794;
    display: block;
    font-size: 0.68rem;
    font-weight: 600;
}

.admin-exporter-submission-table tbody td {
    border-color: #dfe8f2 !important;
    color: #25313b;
    font-size: 0.86rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
    padding: 0.65rem !important;
    vertical-align: top !important;
    white-space: normal;
}

.admin-exporter-submission-table tbody td:first-child {
    height: 1px;
}

.admin-exporter-submission-table tbody td:first-child .exporter-submission-job-stack {
    height: 100%;
    min-height: 100%;
}

.exporter-submission-job-stack,
.exporter-submission-status-stack {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    min-width: 0;
}

.exporter-submission-job-main {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.exporter-submission-job-link {
    align-items: flex-start;
    border-bottom: 1px solid transparent;
    color: var(--admin-link-color, #117a8b);
    display: inline-flex;
    font-size: 0.98rem;
    font-weight: 700;
    gap: 0.35rem;
    line-height: 1.2;
    max-width: 100%;
    overflow-wrap: anywhere;
    text-decoration: none;
    white-space: normal;
}

.exporter-submission-job-link i,
.exporter-submission-vo-ref > i {
    color: currentColor;
    flex: 0 0 auto;
    font-size: 0.84rem;
    line-height: 1.2;
    margin-top: 0.05rem;
}

.exporter-submission-job-link span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.exporter-submission-job-link:hover,
.exporter-submission-job-link:focus {
    border-bottom-color: currentColor;
    color: var(--admin-link-hover-color, #0f6674);
    text-decoration: none;
}

.exporter-submission-vo-ref {
    align-items: flex-start;
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    color: #25313b;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.35rem;
    line-height: 1.25;
    max-width: 100%;
    overflow-wrap: anywhere;
    padding: 0.35rem 0.4rem;
}

.exporter-submission-vo-text {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}

.exporter-submission-vo-link {
    color: var(--admin-link-color, #117a8b);
    font-weight: 700;
    text-decoration: none;
}

.exporter-submission-vo-link:hover,
.exporter-submission-vo-link:focus {
    color: var(--admin-link-hover-color, #0f6674);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.exporter-submission-detail-list {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    min-width: 0;
}

.exporter-submission-detail-line,
.exporter-submission-note-line {
    display: block;
}

.exporter-submission-detail-line > span,
.exporter-submission-note-line > span {
    color: #64707c;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.25;
}

.exporter-submission-detail-line strong,
.exporter-submission-note-line strong {
    display: block;
    font-weight: 600;
    line-height: 1.25;
    margin-top: 0.3rem;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.exporter-submission-date-list {
    display: grid;
    gap: 0.4rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.exporter-submission-date-row {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    min-width: 0;
    padding: 0.4rem;
}

.exporter-submission-date-row span {
    color: #64707c;
    cursor: help;
    display: block;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.2rem;
}

.exporter-submission-date-row strong {
    color: #25313b;
    display: block;
    font-size: 0.84rem;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    line-height: 1.25;
    overflow-wrap: anywhere;
    white-space: normal;
}

.exporter-submission-status-primary .badge {
    font-size: 0.72rem;
    line-height: 1.15;
    padding: 0.22rem 0.42rem;
    white-space: normal;
}

.exporter-submission-note-line {
    border-top: 1px solid #e8eef5;
    padding-top: 0.45rem;
    width: 100%;
}

.exporter-submission-note-text {
    color: inherit;
    display: -webkit-box;
    line-height: inherit;
    overflow: hidden;
    white-space: normal;
    -webkit-box-orient: vertical;
}

.exporter-submission-note-text.is-collapsed {
    -webkit-line-clamp: 4;
}

.exporter-submission-note-text.is-expanded {
    display: block;
    overflow: visible;
}

.exporter-submission-note-toggle {
    display: none;
    font-size: 0.78rem;
    line-height: 1.2;
    margin-top: 0.15rem;
    padding: 0;
}

.exporter-submission-note-toggle.is-needed {
    display: inline-block;
}

.exporter-submission-empty-value {
    color: #7b8794;
    font-weight: 600;
}

@media (max-width: 575.98px) {
    .arrangement-summary-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .arrangement-table-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .arrangement-date-list {
        grid-template-columns: minmax(0, 1fr);
    }

    .arrangement-list-table {
        min-width: 960px;
    }

    .admin-exporter-submission-table {
        min-width: 960px;
    }
}

@media (max-width: 767.98px) {
    .admin-inspection-schedule-page .admin-page-header,
    .admin-work-queue-page .admin-page-header,
    .admin-kso-log-page .admin-page-header {
        align-items: flex-start;
        display: grid;
        gap: 0.22rem 0.75rem;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .admin-inspection-schedule-page .admin-page-header > div:first-child,
    .admin-work-queue-page .admin-page-header > div:first-child,
    .admin-kso-log-page .admin-page-header > div:first-child {
        display: contents;
        min-width: 0;
    }

    .admin-inspection-schedule-page .admin-page-label,
    .admin-work-queue-page .admin-page-label,
    .admin-kso-log-page .admin-page-label {
        grid-column: 1;
        grid-row: 1;
    }

    .admin-inspection-schedule-page .admin-page-header h3,
    .admin-work-queue-page .admin-page-header h3,
    .admin-kso-log-page .admin-page-header h3 {
        grid-column: 1;
        grid-row: 2;
    }

    .admin-inspection-schedule-page .arrangement-page-subtitle,
    .admin-work-queue-page .admin-subtitle {
        align-items: flex-start;
        grid-column: 1 / -1;
        grid-row: 3;
        line-height: 1.3;
        margin-top: 0.15rem;
    }

    .admin-inspection-schedule-page .arrangement-page-subtitle > span {
        align-items: flex-start;
        flex: 1 1 100%;
        max-width: 100%;
    }

    .admin-inspection-schedule-page .arrangement-page-subtitle i {
        margin-top: 0.08rem;
    }

    .admin-inspection-schedule-page .arrangement-filter-toggle {
        align-self: flex-start;
        grid-column: 2;
        grid-row: 2;
        justify-self: end;
    }

    .admin-work-queue-page .admin-filter-toggle,
    .admin-kso-to-dms-page .admin-filter-toggle {
        align-self: flex-start;
        grid-column: 2;
        grid-row: 2;
        justify-self: end;
    }

    .admin-inspection-schedule-page .arrangement-filter-collapse,
    .admin-work-queue-page .admin-mobile-filter-collapse {
        grid-column: 1 / -1;
        grid-row: 4;
    }

    .admin-kso-log-page .admin-mobile-filter-collapse {
        grid-column: 1 / -1;
        grid-row: 3;
    }

    .admin-dms-to-kso-page .admin-page-actions,
    .admin-au-cn-sync-page .admin-page-actions {
        align-self: flex-start;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 0.35rem;
        grid-column: 2;
        grid-row: 2;
        justify-content: flex-end;
        justify-self: end;
        width: auto;
    }

    .admin-dms-to-kso-page .admin-page-actions .admin-page-action-button,
    .admin-dms-to-kso-page .admin-page-actions .admin-filter-toggle,
    .admin-au-cn-sync-page .admin-page-actions .admin-page-action-button,
    .admin-au-cn-sync-page .admin-page-actions .admin-filter-toggle {
        flex: 0 1 auto;
        margin-left: 0;
        width: auto;
    }

    .admin-dms-to-kso-page .admin-kso-manual-label-full {
        display: none;
    }

    #manualKsoUploadModal .modal-footer {
        justify-content: flex-start;
    }

    #manualKsoUploadModal .modal-footer .btn {
        flex: 0 0 auto;
        width: auto;
    }

    #manualKsoUploadSubmit.admin-page-action-button {
        min-height: 31px;
        order: 1;
        width: auto;
    }

    #manualKsoUploadModal .modal-footer [data-dismiss="modal"] {
        order: 2;
    }

    .arrangement-list-table {
        min-width: 960px;
    }

    .admin-exporter-submission-table {
        min-width: 960px;
    }

    .arrangement-filter-toggle {
        align-self: center;
        font-size: 0.78rem;
        margin-left: auto;
        padding: 0.25rem 0.55rem;
        width: auto;
    }

    .arrangement-filter-collapse {
        background: #f8fafc;
        border: 1px solid #d9e3ee;
        border-radius: 6px;
        padding: 0.75rem;
        width: 100%;
    }

    .arrangement-filter-collapse.show {
        margin-top: 0.25rem;
    }
}

@media (max-width: 991.98px) {
    .admin-inspection-schedule-panel div.dataTables_wrapper div.dataTables_filter,
    .admin-inspection-schedule-panel div.dataTables_wrapper div.dataTables_info,
    .admin-inspection-schedule-panel div.dataTables_wrapper div.dataTables_paginate {
        text-align: left;
    }

    .admin-inspection-schedule-panel div.dataTables_wrapper div.dataTables_filter label {
        align-items: center;
        display: flex;
        gap: 0.5rem;
        justify-content: flex-start;
        text-align: left;
        white-space: nowrap;
        width: 100%;
    }

    .admin-inspection-schedule-panel div.dataTables_wrapper div.dataTables_filter input.form-control {
        flex: 1 1 auto;
        margin-left: 0;
        margin-top: 0;
        max-width: 100%;
        min-width: 0;
        width: auto;
    }

    .admin-inspection-schedule-table {
        min-width: 960px;
    }
}

.text-underline {
    text-decoration: underline;
}

.jstree-default .jstree-open>.jstree-ocl {
    background: url('/static/img/icons/icons8-minus-67.png') 3px 5px no-repeat white ! important;
    background-size: 16px 16px ! important;
}

.jstree-default .jstree-closed>.jstree-ocl {
    background: url('/static/img/icons/icons8-plus-67.png') 3px 5px no-repeat white ! important;
    background-size: 16px 16px ! important;
}

.navbar-logo {
    margin-right: 1rem;
    margin-left: 1rem;
    width: 32px;
    transform: scale(1.75);
}

#admin-body .admin-navbar {
    background: linear-gradient(135deg, #183841 0%, #177f95 54%, #22a8c2 100%);
    box-shadow: 0 10px 28px rgba(24, 56, 65, 0.2);
    margin-bottom: 1.25rem;
    padding: 0.6rem 1rem;
}

#admin-body .admin-navbar-brand {
    align-items: center;
    color: #fff;
    display: inline-flex;
    margin-right: 1rem;
    min-width: 0;
}

#admin-body .admin-navbar-brand:hover,
#admin-body .admin-navbar-brand:focus {
    color: #fff;
}

.admin-brand-logo-shell {
    align-items: center;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 8px;
    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.14);
    display: inline-flex;
    flex: 0 0 42px;
    height: 42px;
    justify-content: center;
    margin-right: 0.7rem;
    overflow: hidden;
    width: 42px;
}

.admin-brand-logo {
    display: block;
    height: 32px;
    object-fit: contain;
    width: 32px;
}

.admin-brand-copy {
    display: flex;
    flex-direction: column;
    line-height: 1.05;
    min-width: 0;
}

.admin-brand-title {
    color: #fff;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: 0;
    white-space: nowrap;
}

.admin-brand-subtitle {
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0;
    margin-top: 0.18rem;
    text-transform: uppercase;
    white-space: nowrap;
}

#admin-body .admin-navbar-toggler {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.28);
    border-radius: 8px;
    padding: 0.42rem 0.55rem;
}

#admin-body .admin-navbar-toggler:focus,
#admin-body .admin-navbar .nav-link:focus,
#admin-body .admin-search-button:focus {
    box-shadow: 0 0 0 2px rgba(244, 197, 66, 0.62);
    outline: 0;
}

#admin-body .admin-navbar-collapse {
    min-width: 0;
}

#admin-body .admin-navbar-search {
    flex: 0 1 280px;
    margin: 0 0.75rem 0 0.25rem;
    max-width: 300px;
}

#admin-body .admin-navbar-search .input-group {
    align-items: stretch;
    border-radius: 4px;
    box-shadow: 0 5px 18px rgba(11, 50, 59, 0.12);
    overflow: hidden;
}

#admin-body .admin-navbar-search .input-group-text {
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.25);
    border-right: 0;
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
    color: #fff;
    height: 34px;
    min-height: 34px;
    padding-left: 0.7rem;
    padding-right: 0.55rem;
}

#admin-body .admin-navbar-search .form-control {
    background: rgba(255, 255, 255, 0.96);
    border-color: transparent;
    border-radius: 0;
    color: #25313b;
    font-weight: 600;
    height: 34px;
    min-height: 34px;
    min-width: 0;
}

#admin-body .admin-navbar-search .form-control::placeholder {
    color: #7d8c99;
    opacity: 1;
}

#admin-body .admin-navbar-search .input-group-append .admin-search-button {
    align-items: center;
    align-self: stretch;
    background: #f4c542;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 0;
    border-top-right-radius: 4px;
    border-color: #f4c542;
    box-sizing: border-box;
    color: #20323a;
    display: inline-flex;
    flex: 0 0 auto;
    font-weight: 800;
    height: 34px;
    justify-content: center;
    letter-spacing: 0;
    line-height: 1;
    min-height: 34px;
    padding-bottom: 0;
    padding-left: 0.72rem;
    padding-right: 0.72rem;
    padding-top: 0;
}

#admin-body .admin-search-button:hover,
#admin-body .admin-search-button:focus {
    background: #ffd45a;
    border-color: #ffd45a;
    color: #1b2a31;
}

#admin-body .admin-navbar-nav {
    align-items: center;
    gap: 0.25rem;
    min-width: 0;
}

#admin-body .admin-navbar .nav-item {
    min-width: 0;
}

#admin-body .admin-navbar .nav-link {
    align-items: center;
    border-radius: 4px;
    color: rgba(255, 255, 255, 0.82);
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 700;
    gap: 0.45rem;
    line-height: 1.1;
    min-height: 38px;
    padding: 0.52rem 0.68rem;
    white-space: nowrap;
}

#admin-body .admin-navbar .nav-link:hover,
#admin-body .admin-navbar .nav-link:focus,
#admin-body .admin-navbar .show > .nav-link {
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
}

#admin-body .admin-navbar .nav-link.active,
#admin-body .admin-navbar .nav-link.active:hover,
#admin-body .admin-navbar .nav-link.active:focus {
    background: rgba(255, 255, 255, 0.92);
    color: #126a7c;
}

#admin-body .admin-navbar .dropdown-toggle::after {
    margin-left: 0.3rem;
}

#admin-body .admin-navbar .nav-link-icon {
    font-size: 0.88rem;
    opacity: 0.9;
}

#admin-body .admin-nav-menu,
#admin-body .notification-menu {
    border: 1px solid rgba(22, 114, 135, 0.12);
    border-radius: 8px;
    box-shadow: 0 16px 34px rgba(37, 49, 59, 0.18);
    margin-top: 0.58rem;
    padding: 0.45rem;
}

#admin-body .admin-nav-menu {
    min-width: 280px;
}

#admin-body .admin-nav-menu .dropdown-header {
    color: #697b89;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0;
    padding: 0.35rem 0.65rem 0.28rem;
    text-transform: uppercase;
}

#admin-body .admin-nav-menu .dropdown-divider {
    border-top-color: #e4edf3;
    margin: 0.38rem 0.25rem;
}

#admin-body .admin-nav-menu .dropdown-item {
    align-items: center;
    border-radius: 4px;
    color: #263746;
    display: flex;
    font-weight: 700;
    gap: 0.65rem;
    line-height: 1.25;
    padding: 0.56rem 0.65rem;
    white-space: normal;
}

#admin-body .admin-nav-menu .dropdown-item:hover,
#admin-body .admin-nav-menu .dropdown-item:focus,
#admin-body .admin-nav-menu .dropdown-item.active {
    background: #eaf6fb;
    color: #126a7c;
}

#admin-body .dropdown-item-icon {
    align-items: center;
    background: #eef7fa;
    border-radius: 6px;
    color: #16849a;
    display: inline-flex;
    flex: 0 0 28px;
    height: 28px;
    justify-content: center;
    width: 28px;
}

#admin-body .dropdown-item-icon i {
    font-size: 0.82rem;
}

#notification-container {
    align-items: center;
    display: flex;
}

#notification-container .notification-link {
    justify-content: center;
    min-width: 38px;
    padding-left: 0.55rem;
    padding-right: 0.55rem;
}

.notification-icon-stack {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    position: relative;
}

#notification-container .fa-bell {
    font-size: 0.9rem;
}

.notification-label {
    display: none;
}

.notification-badge {
    align-items: center;
    background: #dc3545;
    border: 2px solid #177f95;
    border-radius: 999px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.28);
    color: #fff;
    display: inline-flex;
    font-size: 9px;
    font-weight: 800;
    height: 15px;
    justify-content: center;
    line-height: 1;
    min-width: 15px;
    padding: 0 3px;
    pointer-events: none;
    position: absolute;
    right: -8px;
    top: -8px;
    white-space: nowrap;
}

#admin-body .notification-menu {
    max-width: calc(100vw - 1.5rem);
    min-width: 220px;
    width: 240px;
}

#notification-list .dropdown-item {
    border-radius: 4px;
    padding: 0.7rem 0.75rem;
    white-space: normal;
}

#notification-list .dropdown-item:hover,
#notification-list .dropdown-item:focus {
    background-color: #f2f8fb;
    color: #212529;
}

.notification-item {
    align-items: flex-start;
    display: flex;
    gap: 0.65rem;
}

.notification-item-icon {
    align-items: center;
    background: #fff3cd;
    border-radius: 6px;
    color: #856404;
    display: inline-flex;
    flex: 0 0 30px;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.notification-item-title {
    color: #212529;
    display: block;
    font-weight: 800;
    line-height: 1.25;
}

.notification-item-subtitle {
    color: #6c757d;
    display: block;
    font-size: 12px;
    line-height: 1.35;
    margin-top: 2px;
}

.admin-user-avatar {
    align-items: center;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 24px;
    height: 24px;
    justify-content: center;
    width: 24px;
}

.admin-user-avatar i {
    font-size: 0.72rem;
}

.admin-user-name {
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#admin-body .admin-user-menu {
    min-width: 180px;
}

@media (max-width: 1199.98px) {
    #admin-body .admin-navbar {
        padding: 0.65rem 0.85rem;
    }

    #admin-body .admin-navbar-collapse {
        background: rgba(12, 55, 65, 0.58);
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 8px;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
        flex-basis: 100%;
        margin-top: 0.75rem;
        padding: 0.75rem;
    }

    #admin-body .admin-navbar-search {
        flex: 1 1 auto;
        margin: 0 0 0.75rem;
        max-width: none;
        width: 100%;
    }

    #admin-body .admin-navbar-nav {
        align-items: stretch;
        gap: 0.35rem;
        width: 100%;
    }

    #admin-body .admin-navbar .nav-link {
        background: rgba(255, 255, 255, 0.07);
        justify-content: flex-start;
        min-height: 42px;
        padding: 0.68rem 0.75rem;
        width: 100%;
    }

    #admin-body .admin-navbar .dropdown-toggle::after {
        margin-left: auto;
    }

    #notification-container {
        align-items: stretch;
        display: block;
        width: 100%;
    }

    #notification-container .notification-link {
        justify-content: flex-start;
        width: 100%;
    }

    .notification-label {
        display: inline;
    }

    #admin-body .admin-nav-menu,
    #admin-body .notification-menu {
        float: none;
        margin: 0.3rem 0 0.55rem;
        max-height: min(64vh, 480px);
        min-width: 0;
        overflow-y: auto;
        position: static;
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .admin-brand-logo-shell {
        flex-basis: 38px;
        height: 38px;
        margin-right: 0.6rem;
        width: 38px;
    }

    .admin-brand-logo {
        height: 29px;
        width: 29px;
    }

    .admin-brand-title {
        font-size: 1rem;
    }

    .admin-brand-subtitle {
        display: none;
    }

    #admin-body .admin-navbar-search .input-group {
        display: flex;
        flex-wrap: nowrap;
    }

    #admin-body .admin-navbar-search .form-control {
        min-width: 0;
    }

    #admin-body .admin-navbar-search .input-group-append .admin-search-button {
        padding-left: 0.58rem;
        padding-right: 0.58rem;
    }

    #admin-body .admin-nav-menu .dropdown-item,
    #notification-list .dropdown-item {
        padding-bottom: 0.64rem;
        padding-top: 0.64rem;
    }
}

#exporter-body .portal-navbar {
    --portal-start: #1d3558;
    --portal-mid: #2269ad;
    --portal-end: #3f8bd5;
    --portal-active: #155a9d;
    --portal-active-soft: rgba(21, 90, 157, 0.12);
    --portal-active-border: rgba(21, 90, 157, 0.22);
    --portal-panel: rgba(18, 57, 96, 0.6);
    --portal-accent: #f4c542;
}

#inspector-body .portal-navbar {
    --portal-start: #153c31;
    --portal-mid: #16806a;
    --portal-end: #20b193;
    --portal-active: #11745f;
    --portal-active-soft: rgba(17, 116, 95, 0.12);
    --portal-active-border: rgba(17, 116, 95, 0.22);
    --portal-panel: rgba(15, 67, 55, 0.62);
    --portal-accent: #f4c542;
}

#common-body .portal-navbar {
    --portal-start: #183846;
    --portal-mid: #176f83;
    --portal-end: #20a3b8;
    --portal-active: #126b7c;
    --portal-active-soft: rgba(18, 107, 124, 0.12);
    --portal-active-border: rgba(18, 107, 124, 0.22);
    --portal-panel: rgba(17, 77, 91, 0.62);
    --portal-accent: #f4c542;
}

.portal-navbar {
    background: linear-gradient(135deg, var(--portal-start) 0%, var(--portal-mid) 54%, var(--portal-end) 100%);
    box-shadow: 0 10px 28px rgba(37, 49, 59, 0.18);
    margin-bottom: 1.25rem;
    padding: 0.6rem 1rem;
}

.portal-navbar-brand {
    align-items: center;
    color: #fff;
    display: inline-flex;
    margin-right: 1rem;
    min-width: 0;
}

.portal-navbar-brand:hover,
.portal-navbar-brand:focus {
    color: #fff;
}

.portal-brand-logo-shell {
    align-items: center;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 8px;
    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.14);
    display: inline-flex;
    flex: 0 0 42px;
    height: 42px;
    justify-content: center;
    margin-right: 0.7rem;
    overflow: hidden;
    width: 42px;
}

.portal-brand-logo {
    display: block;
    height: 32px;
    object-fit: contain;
    width: 32px;
}

.portal-brand-copy {
    display: flex;
    flex-direction: column;
    line-height: 1.05;
    min-width: 0;
}

.portal-brand-title {
    color: #fff;
    display: block;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: 0;
    max-width: min(46vw, 360px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.portal-brand-subtitle {
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0;
    margin-top: 0.18rem;
    text-transform: uppercase;
    white-space: nowrap;
}

.portal-navbar-toggler {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(255, 255, 255, 0.28);
    border-radius: 8px;
    padding: 0.42rem 0.55rem;
}

.portal-navbar-toggler:focus,
.portal-navbar .nav-link:focus,
.portal-login-link:focus {
    box-shadow: 0 0 0 2px rgba(244, 197, 66, 0.62);
    outline: 0;
}

.portal-navbar-collapse {
    min-width: 0;
}

.portal-navbar-nav {
    align-items: center;
    gap: 0.25rem;
    min-width: 0;
}

.portal-navbar .nav-item {
    min-width: 0;
}

.portal-navbar .nav-link {
    align-items: center;
    border-radius: 4px;
    color: rgba(255, 255, 255, 0.82);
    display: inline-flex;
    font-size: 0.9rem;
    font-weight: 700;
    gap: 0.45rem;
    line-height: 1.1;
    min-height: 38px;
    padding: 0.52rem 0.68rem;
    white-space: nowrap;
}

.portal-navbar .nav-link:hover,
.portal-navbar .nav-link:focus,
.portal-navbar .show > .nav-link {
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
}

.portal-navbar.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.84);
}

.portal-navbar.navbar-dark .navbar-nav .nav-link:hover,
.portal-navbar.navbar-dark .navbar-nav .nav-link:focus,
.portal-navbar.navbar-dark .navbar-nav .show > .nav-link {
    color: #fff;
}

.portal-navbar .nav-link.active,
.portal-navbar .nav-link.active:hover,
.portal-navbar .nav-link.active:focus {
    background: rgba(255, 255, 255, 0.92);
    color: var(--portal-active);
}

.portal-navbar.navbar-dark .navbar-nav .nav-link.active,
.portal-navbar.navbar-dark .navbar-nav .nav-link.active:hover,
.portal-navbar.navbar-dark .navbar-nav .nav-link.active:focus {
    color: var(--portal-active) !important;
}

.portal-navbar.navbar-dark .navbar-nav .nav-link.active .nav-link-icon,
.portal-navbar.navbar-dark .navbar-nav .nav-link.active .portal-user-avatar,
.portal-navbar.navbar-dark .navbar-nav .nav-link.active::after {
    color: var(--portal-active) !important;
    opacity: 1;
}

.portal-navbar.navbar-dark .navbar-nav .nav-link.active .portal-user-avatar {
    background: var(--portal-active-soft);
}

.portal-navbar .dropdown-toggle::after {
    margin-left: 0.3rem;
}

.portal-navbar .nav-link-icon {
    font-size: 0.88rem;
    opacity: 0.9;
}

.portal-nav-reference {
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(255, 255, 255, 0.96);
    border-radius: 999px;
    color: var(--portal-active);
    font-size: 0.72rem;
    font-weight: 800;
    padding: 0.18rem 0.45rem;
}

.portal-navbar .nav-link.active .portal-nav-reference {
    background: var(--portal-active-soft);
    border-color: var(--portal-active-border);
    color: var(--portal-active);
}

.portal-nav-menu {
    border: 1px solid rgba(22, 114, 135, 0.12);
    border-radius: 8px;
    box-shadow: 0 16px 34px rgba(37, 49, 59, 0.18);
    margin-top: 0.58rem;
    min-width: 260px;
    padding: 0.45rem;
}

.portal-nav-menu .dropdown-header {
    color: #697b89;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0;
    padding: 0.35rem 0.65rem 0.28rem;
    text-transform: uppercase;
}

.portal-nav-menu .dropdown-divider {
    border-top-color: #e4edf3;
    margin: 0.38rem 0.25rem;
}

.portal-nav-menu .dropdown-item {
    align-items: center;
    border-radius: 4px;
    color: #263746;
    display: flex;
    font-weight: 700;
    gap: 0.65rem;
    line-height: 1.25;
    padding: 0.56rem 0.65rem;
    white-space: normal;
}

.portal-nav-menu .dropdown-item:hover,
.portal-nav-menu .dropdown-item:focus,
.portal-nav-menu .dropdown-item.active {
    background: #eaf6fb;
    color: var(--portal-active);
}

.portal-nav-menu .dropdown-item-icon {
    align-items: center;
    background: #eef7fa;
    border-radius: 6px;
    color: var(--portal-active);
    display: inline-flex;
    flex: 0 0 28px;
    height: 28px;
    justify-content: center;
    width: 28px;
}

.portal-nav-menu .dropdown-item-icon i {
    font-size: 0.82rem;
}

.portal-user-avatar {
    align-items: center;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 24px;
    height: 24px;
    justify-content: center;
    width: 24px;
}

.portal-user-avatar i {
    font-size: 0.72rem;
}

.portal-user-name {
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.portal-user-menu {
    min-width: 180px;
}

.portal-language-toggle {
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.portal-navbar .portal-language-toggle {
    gap: 0.35rem;
    min-width: 64px;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.portal-navbar.navbar-dark .navbar-nav .portal-language-toggle {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.portal-navbar.navbar-dark .navbar-nav .portal-language-toggle:hover,
.portal-navbar.navbar-dark .navbar-nav .portal-language-toggle:focus,
.portal-navbar.navbar-dark .navbar-nav .show > .portal-language-toggle {
    background: rgba(255, 255, 255, 0.16);
    border-color: rgba(255, 255, 255, 0.36);
    color: #fff;
}

.portal-language-icon {
    align-items: center;
    color: rgba(255, 255, 255, 0.92);
    display: inline-flex;
    flex: 0 0 18px;
    height: 18px;
    justify-content: center;
    width: 18px;
}

.portal-language-icon i {
    font-size: 0.92rem;
}

.portal-language-current {
    font-size: 0.8rem;
    font-weight: 800;
    line-height: 1;
}

.portal-language-menu {
    min-width: 210px;
}

.portal-navbar > .portal-public-language-nav {
    align-items: center;
    flex: 0 0 auto;
    flex-direction: row;
    justify-content: flex-end;
    margin-left: auto;
    min-width: 0;
    width: auto;
}

.portal-public-language-nav .portal-language-item {
    position: relative;
}

.portal-navbar > .portal-public-language-nav .portal-language-toggle {
    justify-content: center;
    width: auto;
}

@media (max-width: 1199.98px) {
    .portal-navbar {
        padding: 0.65rem 0.85rem;
    }

    .portal-navbar-collapse {
        background: var(--portal-panel);
        border: 1px solid rgba(255, 255, 255, 0.16);
        border-radius: 8px;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
        flex-basis: 100%;
        margin-top: 0.75rem;
        padding: 0.75rem;
    }

    .portal-navbar-nav {
        align-items: stretch;
        gap: 0.35rem;
        width: 100%;
    }

    .portal-navbar .nav-link {
        background: rgba(255, 255, 255, 0.14);
        justify-content: flex-start;
        min-height: 42px;
        padding: 0.68rem 0.75rem;
        width: 100%;
    }

    .portal-navbar .dropdown-toggle::after {
        margin-left: auto;
    }

    .portal-nav-menu {
        float: none;
        margin: 0.3rem 0 0.55rem;
        max-height: min(64vh, 480px);
        min-width: 0;
        overflow-y: auto;
        position: static;
        width: 100%;
    }

    .portal-nav-reference {
        margin-left: auto;
    }

    .portal-navbar .portal-language-toggle {
        padding-left: 0.75rem;
    }

    .portal-navbar-public {
        flex-wrap: nowrap;
    }

    .portal-navbar > .portal-public-language-nav {
        align-items: center;
        flex-direction: row;
        gap: 0;
        margin-left: auto !important;
        width: auto;
    }

    .portal-navbar > .portal-public-language-nav .nav-item {
        flex: 0 0 auto;
    }

    .portal-navbar > .portal-public-language-nav .nav-link {
        justify-content: center;
        min-height: 38px;
        width: auto;
    }

    .portal-navbar > .portal-public-language-nav .dropdown-toggle::after {
        margin-left: 0.3rem;
    }

    .portal-navbar > .portal-public-language-nav .portal-language-toggle {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .portal-navbar > .portal-public-language-nav .portal-nav-menu {
        left: auto;
        margin-top: 0.45rem;
        max-height: min(64vh, 480px);
        max-width: calc(100vw - 1.5rem);
        min-width: 210px;
        position: absolute;
        right: 0;
        width: 210px;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    #inspector-body .portal-navbar-collapse {
        background: transparent;
        border: 0;
        box-shadow: none;
        flex-basis: auto;
        margin-top: 0;
        padding: 0;
    }

    #inspector-body .portal-navbar-nav {
        align-items: center;
        gap: 0.25rem;
        width: auto;
    }

    #inspector-body .portal-navbar .nav-link {
        justify-content: flex-start;
        min-height: 38px;
        padding: 0.52rem 0.68rem;
        width: auto;
    }

    #inspector-body .portal-navbar .nav-link:not(.active):not(:hover):not(:focus) {
        background: transparent;
    }

    #inspector-body .portal-navbar .show > .nav-link {
        background: rgba(255, 255, 255, 0.14);
    }

    #inspector-body .portal-navbar .dropdown-toggle::after {
        margin-left: 0.3rem;
    }

    #inspector-body .portal-nav-menu {
        float: left;
        margin-top: 0.58rem;
        max-height: none;
        min-width: 260px;
        overflow-y: visible;
        position: absolute;
        width: auto;
    }

    #inspector-body .dropdown-menu-right.portal-nav-menu {
        left: auto;
        right: 0;
    }
}

@media (max-width: 575.98px) {
    .portal-brand-logo-shell {
        flex-basis: 38px;
        height: 38px;
        margin-right: 0.6rem;
        width: 38px;
    }

    .portal-brand-logo {
        height: 29px;
        width: 29px;
    }

    .portal-brand-title {
        font-size: 1rem;
        max-width: 64vw;
    }

    .portal-navbar-public .portal-brand-title {
        max-width: min(48vw, 240px);
    }

    .portal-brand-subtitle {
        display: none;
    }

    .portal-user-name {
        max-width: none;
    }
}

.query-page {
    color: #25313b;
    margin-bottom: 2rem;
    padding-top: 0.9rem;
}

.query-page-shell {
    margin: 0 auto;
    max-width: 960px;
}

.query-login-page {
    align-items: flex-start;
    display: flex;
    justify-content: center;
    min-height: calc(100vh - 76px);
}

.query-login-panel {
    margin: 1.6rem auto 0;
    max-width: 440px;
    width: 100%;
}

.query-login-panel .query-panel-body {
    padding: 0.85rem;
}

.query-login-panel .form-control {
    min-height: 38px;
}

.query-login-panel .query-form-actions {
    border-top: 0;
    display: block;
    margin-top: 0.25rem;
    padding-top: 0;
}

.query-login-panel .query-action-button {
    width: 100%;
}

.query-page-header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.query-page-header h1 {
    color: #25313b;
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
    overflow-wrap: anywhere;
}

.query-page-label {
    color: #6c757d;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.query-panel,
.query-table-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
}

.query-panel {
    overflow: hidden;
}

.query-panel-header {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee;
    padding: 0.75rem;
}

.query-panel-header h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.query-panel-body,
.query-search-panel {
    padding: 0.85rem;
}

.query-panel label,
.query-search-form label {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
}

.query-page .form-control {
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    color: #25313b;
    min-height: 36px;
}

.query-page .form-control:focus {
    border-color: #17a2b8;
    box-shadow: 0 0 0 0.13rem rgba(23, 162, 184, 0.14);
}

.query-form-actions {
    align-items: center;
    border-top: 1px solid #e2ebf4;
    display: flex;
    justify-content: flex-end;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
}

.query-action-button {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
    white-space: nowrap;
}

.query-search-form {
    margin: 0;
}

.query-search-form label {
    margin-bottom: 0.35rem;
}

.query-table-panel {
    overflow-x: visible;
    padding: 0.75rem;
}

.query-table-panel .dataTables_wrapper > .row {
    margin-left: 0;
    margin-right: 0;
}

.query-table-panel .dataTables_wrapper > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}

.query-table {
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.88rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
    width: 100% !important;
}

.query-simple-table {
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.query-simple-table thead th {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee !important;
    border-top: 0 !important;
    color: #3d4b59;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    vertical-align: middle !important;
}

.query-simple-table th,
.query-simple-table td {
    border-color: #e7eef5 !important;
    overflow-wrap: anywhere;
    white-space: normal;
}

.query-simple-table td {
    color: #25313b;
    padding: 0.62rem 0.7rem !important;
    vertical-align: middle !important;
}

.query-simple-table tbody tr {
    transition: background-color 0.12s ease, box-shadow 0.12s ease;
}

.query-simple-table tbody tr:hover {
    background: #f8fbfd;
    box-shadow: inset 3px 0 0 #17a2b8;
}

.query-table thead th {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee !important;
    color: #3d4b59;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0;
}

.query-table th,
.query-table td {
    overflow-wrap: anywhere;
    vertical-align: middle !important;
    white-space: normal;
}

.query-table td {
    color: #25313b;
    padding: 0.65rem !important;
}

.query-table th:nth-child(2) {
    width: 34%;
}

.query-status-badge {
    background: #eaf6fb;
    border: 1px solid #cce8ef;
    border-radius: 999px;
    color: #126b7c;
    display: inline-flex;
    font-size: 0.76rem;
    font-weight: 800;
    line-height: 1.2;
    padding: 0.22rem 0.55rem;
    text-transform: capitalize;
}

.query-empty-state {
    background: #f8fafc;
    border: 1px dashed #c9d6e2;
    border-radius: 6px;
    color: #5f6b76;
    font-weight: 700;
    padding: 1rem;
}

@media (max-width: 575.98px) {
    .query-search-form .input-group {
        display: block;
    }

    .query-search-form .input-group .form-control,
    .query-search-form .input-group .btn {
        border-radius: 4px;
        width: 100%;
    }

    .query-search-form .input-group-append {
        display: block;
        margin-left: 0;
        margin-top: 0.5rem;
    }
}

.upload-dropzone {
    align-items: center;
    background: #f8fafc;
    border: 1px dashed #c8d1dc;
    border-radius: 6px;
    color: #4b5563;
    cursor: pointer;
    display: flex;
    gap: 0.75rem;
    margin-bottom: 0;
    min-height: 82px;
    padding: 0.75rem;
    position: relative;
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
    width: 100%;
}

.upload-dropzone:hover,
.upload-dropzone.is-dragover {
    background: #f1f4f7;
    border-color: #8d99a8;
    box-shadow: inset 0 0 0 1px rgba(108, 117, 125, 0.16);
}

.upload-dropzone input[type="file"] {
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.upload-dropzone-icon {
    color: #6c757d;
    font-size: 1.35rem;
    line-height: 1;
}

.upload-dropzone-main {
    flex: 1;
    min-width: 0;
}

.upload-dropzone-title {
    color: #263746;
    font-weight: 700;
    line-height: 1.2;
}

.upload-dropzone-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.35rem;
}

.upload-dropzone-actions .btn {
    border-color: #adb5bd;
    color: #495057;
}

.upload-dropzone-actions .btn:hover,
.upload-dropzone-actions .btn:focus {
    background: #6c757d;
    border-color: #6c757d;
    color: #fff;
}

.upload-dropzone-hint {
    color: #6c757d;
    font-size: 0.78rem;
    line-height: 1.25;
}

.upload-dropzone-summary {
    color: #607080;
    flex-basis: 100%;
    font-size: 0.82rem;
    line-height: 1.3;
    margin-top: 0.35rem;
    overflow-wrap: anywhere;
}

.admin-upload-modal .modal-title {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
}

.admin-upload-modal .modal-footer .btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
}

.packer-confirm-page {
    max-width: 1180px;
}

.packer-confirm-form-panel label {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
}

.packer-confirm-photo-reminder {
    align-items: flex-start;
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    gap: 0.65rem;
    margin-bottom: 0.85rem;
    padding: 0.75rem;
}

.packer-confirm-photo-reminder-icon {
    align-items: center;
    background: #eaf6fb;
    border-radius: 999px;
    color: var(--portal-page-brand-dark, #126a7c);
    display: inline-flex;
    flex: 0 0 32px;
    height: 32px;
    justify-content: center;
    width: 32px;
}

.packer-confirm-photo-reminder-copy {
    color: #5f6b76;
    font-size: 0.86rem;
    line-height: 1.4;
    min-width: 0;
}

.packer-confirm-photo-reminder-copy strong,
.packer-confirm-photo-reminder-copy span,
.packer-confirm-photo-reminder-copy a {
    display: block;
}

.packer-confirm-photo-reminder-copy strong {
    color: #25313b;
}

.packer-confirm-photo-reminder-copy a {
    color: var(--portal-page-brand-dark, #126a7c);
    font-weight: 700;
    margin-top: 0.35rem;
}

.packer-transfer-destination-reminder {
    background: #fff8e1;
    border-color: #f2d27a;
}

.packer-transfer-destination-reminder .packer-confirm-photo-reminder-icon {
    background: #fff1bd;
    color: #8a5b00;
}

.packer-transfer-destination-reminder .packer-confirm-photo-reminder-copy a {
    color: #7a4f00;
}

.packer-confirm-readonly-list {
    color: #25313b;
    font-size: 0.88rem;
}

.packer-confirm-readonly-list dt {
    color: #4f5d6a;
    font-weight: 700;
}

.packer-confirm-readonly-list dd {
    overflow-wrap: anywhere;
}

@media (max-width: 767.98px) {
    .packer-confirm-page .portal-page-actions {
        justify-content: flex-end;
        width: 100%;
    }

    .packer-confirm-page .portal-page-actions .btn {
        flex: 0 1 auto;
        max-width: 100%;
        width: auto;
    }
}

.inspector-dashboard-page {
    color: #25313b;
    margin-bottom: 2rem;
    padding-top: 0.9rem;
}

.inspector-login-page {
    align-items: flex-start;
    display: flex;
    justify-content: center;
    min-height: calc(100vh - 76px);
}

.inspector-login-panel {
    margin: 1.6rem auto 0;
    max-width: 440px;
    width: 100%;
}

.inspector-login-panel .inspector-form-submit {
    width: 100%;
}

.inspector-profile-shell {
    margin: 0 auto;
    max-width: 820px;
}

.inspector-profile-form {
    min-width: 0;
}

.inspector-form-grid {
    display: grid;
    gap: 0.8rem 0.85rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.inspector-form-field {
    margin-bottom: 0;
    min-width: 0;
}

.inspector-form-span-all {
    grid-column: 1 / -1;
}

.inspector-icon-label {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
    margin-bottom: 0.28rem;
}

.inspector-icon-label i {
    color: #28a745;
    flex: 0 0 auto;
    font-size: 0.84rem;
}

.inspector-form-field .form-control {
    font-weight: 600;
}

.inspector-profile-email {
    line-height: 1.35;
    min-height: 88px;
    resize: vertical;
}

.inspector-form-help {
    color: #6c757d;
    display: block;
    font-size: 0.78rem;
    line-height: 1.3;
    margin-top: 0.28rem;
}

.inspector-signature-group {
    margin-top: 0.85rem;
}

.inspector-dashboard-header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.inspector-dashboard-header h3 {
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}

.inspector-dashboard-label {
    color: #6c757d;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.inspector-header-badge {
    border: 1px solid #d9e3ee;
    color: #25313b;
    font-size: 0.82rem;
    line-height: 1.2;
    padding: 0.42rem 0.55rem;
}

.badge-success.inspector-header-badge {
    border-color: #28a745;
    color: #fff;
}

.inspector-context-meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.45rem;
}

.inspector-context-chip {
    align-items: center;
    color: #25313b;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 700;
    gap: 0.38rem;
    line-height: 1.2;
}

.inspector-context-link {
    text-decoration: none;
}

.inspector-context-link:hover,
.inspector-context-link:focus {
    color: #1f7d35;
    text-decoration: none;
}

.inspector-context-chip i {
    color: #28a745;
    font-size: 0.85rem;
}

.inspector-context-chip span {
    overflow-wrap: anywhere;
}

.inspector-section-header {
    margin-top: 1rem;
}

.inspector-dashboard-actions,
.inspector-bulk-assign-bar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-end;
}

.inspector-dashboard-actions .btn {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.25rem;
    line-height: 1.2;
}

.inspector-dashboard-actions .btn:not(.btn-sm):not(.btn-lg),
.inspector-date-filter-fields .btn:not(.btn-sm):not(.btn-lg),
.inspector-date-filter-button:not(.btn-sm):not(.btn-lg),
.inspector-bulk-assign-bar .btn:not(.btn-sm):not(.btn-lg),
.inspector-doc-buttons .btn:not(.btn-sm):not(.btn-lg),
.inspector-action-buttons .btn:not(.btn-sm):not(.btn-lg),
.inspector-form-submit:not(.btn-sm):not(.btn-lg),
.inspector-sub-create-button:not(.btn-sm):not(.btn-lg),
.inspector-sub-actions .btn:not(.btn-sm):not(.btn-lg),
.inspector-signature-actions .btn:not(.btn-sm):not(.btn-lg) {
    min-height: 36px;
}

.inspector-dashboard-actions .btn-sm,
.inspector-date-filter-fields .btn-sm,
.btn-sm.inspector-date-filter-button,
.inspector-bulk-assign-bar .btn-sm,
.inspector-doc-buttons .btn-sm,
.inspector-action-buttons .btn-sm,
.btn-sm.inspector-form-submit,
.btn-sm.inspector-sub-create-button,
.inspector-sub-actions .btn-sm,
.inspector-signature-actions .btn-sm {
    min-height: 31px;
}

.inspector-dashboard-actions .btn-lg,
.inspector-date-filter-fields .btn-lg,
.btn-lg.inspector-date-filter-button,
.inspector-bulk-assign-bar .btn-lg,
.inspector-doc-buttons .btn-lg,
.inspector-action-buttons .btn-lg,
.btn-lg.inspector-form-submit,
.btn-lg.inspector-sub-create-button,
.inspector-sub-actions .btn-lg,
.inspector-signature-actions .btn-lg {
    min-height: 42px;
}

.inspector-dashboard-actions .btn i {
    font-size: 0.9rem;
    margin-right: 0;
}

.inspector-date-filter-form {
    margin: 0;
    max-width: 100%;
}

.inspector-date-filter-fields {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
}

.inspector-date-filter-fields .form-group {
    margin-bottom: 0;
}

.inspector-date-filter-fields label {
    color: #4f5d6a;
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    margin-bottom: 0.2rem;
}

.inspector-date-filter-fields .form-control {
    min-width: 130px;
}

.inspector-date-filter-fields .inspector-date-input {
    min-width: 118px;
    width: 118px;
}

.inspector-date-filter-fields .btn,
.inspector-date-filter-button {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.25rem;
    justify-content: center;
    line-height: 1.25;
}

.inspector-date-type-toggle {
    display: inline-flex;
    min-height: 31px;
}

.inspector-date-type-toggle .btn {
    align-items: center;
    display: inline-flex;
    min-height: 31px;
}

.inspector-bulk-assign-bar {
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 0.8rem;
    padding: 0.55rem;
}

.inspector-bulk-assign-bar .btn,
.inspector-signature-actions .btn,
.inspector-sub-actions .btn {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.28rem;
    justify-content: center;
    line-height: 1.2;
}

.inspector-bulk-select {
    max-width: 260px;
    width: auto;
}

.inspector-schedule-page .inspector-bulk-assign-bar {
    justify-content: flex-start;
}

.inspector-schedule-page .inspector-bulk-select,
.inspector-schedule-page .inspector-bulk-assign-button {
    flex: 0 0 178px;
    height: 32px;
    max-width: 178px;
    min-height: 32px;
    width: 178px;
}

.inspector-bulk-assign-label-short {
    display: none;
}

.inspector-table-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
    padding: 0.55rem;
}

.inspector-table-panel .dataTables_length,
.inspector-table-panel .dataTables_filter,
.inspector-table-panel .dataTables_info,
.inspector-table-panel .dataTables_paginate {
    font-size: 0.85rem;
}

.inspector-table-panel .dataTables_filter input,
.inspector-table-panel .dataTables_length select {
    border-radius: 4px;
}

.inspector-form-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    padding: 0.85rem;
}

.inspector-form-panel-header {
    align-items: center;
    border-bottom: 1px solid #e8eef5;
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.85rem;
    padding-bottom: 0.65rem;
}

.inspector-form-panel-header h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.inspector-form-panel label {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
}

.inspector-form-panel .form-control {
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    color: #25313b;
    min-height: 38px;
}

.inspector-form-panel .form-control:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.13rem rgba(40, 167, 69, 0.12);
}

.inspector-form-submit {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.35rem;
    justify-content: center;
    line-height: 1.25;
}

.inspector-detail-table {
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.inspector-detail-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
    vertical-align: top !important;
    width: 210px;
}

.inspector-detail-table td {
    color: #25313b;
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.inspector-upload-table th {
    width: 205px;
}

.inspector-batch-detail-panel {
    margin-bottom: 1rem;
}

.inspector-signature-pad {
    height: 220px;
    max-width: 100%;
    touch-action: none;
    user-select: none;
    width: 100%;
}

.inspector-signature-canvas-wrap {
    max-width: 100%;
    overflow-x: auto;
    padding-bottom: 0.15rem;
}

.inspector-signature-canvas-wrap .inspector-signature-pad {
    display: block;
    height: 220px !important;
    max-width: none;
    width: 700px !important;
}

.inspector-signature-actions {
    display: flex;
    gap: 0.4rem;
    margin-top: 0.45rem;
}

.inspector-empty-state {
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    color: #64707c;
    font-weight: 700;
    padding: 1rem;
}

.inspector-classification-modal-body {
    padding: 0.8rem;
}

.inspector-classification-table-wrap {
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

#inspector-body .inspector-classification-table {
    border-collapse: separate;
    border-spacing: 0;
    color: #25313b;
    font-size: 0.84rem;
    margin-bottom: 0 !important;
    min-width: 760px;
    table-layout: fixed;
}

#inspector-body .inspector-classification-table thead th {
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee !important;
    color: #3d4b59;
    font-size: 0.73rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.2;
    padding: 0.58rem 0.65rem !important;
    text-transform: uppercase;
    vertical-align: middle !important;
}

#inspector-body .inspector-classification-table th:nth-child(1) {
    width: 15%;
}

#inspector-body .inspector-classification-table th:nth-child(2) {
    width: 57%;
}

#inspector-body .inspector-classification-table th:nth-child(3) {
    width: 14%;
}

#inspector-body .inspector-classification-table th:nth-child(4) {
    width: 14%;
}

#inspector-body .inspector-classification-table tbody td {
    background: #fff;
    border-color: #e7eef5 !important;
    color: #25313b;
    line-height: 1.35;
    padding: 0.62rem 0.65rem !important;
    vertical-align: top !important;
}

#inspector-body .inspector-classification-table tbody tr {
    transition: background-color 0.12s ease, box-shadow 0.12s ease;
}

#inspector-body .inspector-classification-table tbody tr:hover td {
    background: #f8fcf9;
}

#inspector-body .inspector-classification-table .classification-description {
    font-weight: 600;
}

#inspector-body .inspector-classification-table .classification-code,
#inspector-body .inspector-classification-table .classification-origin,
#inspector-body .inspector-classification-table .classification-quantity {
    border-radius: 4px;
    font-size: 0.83rem;
    padding: 0.22rem 0.45rem;
}

@media (max-width: 575.98px) {
    #inspector-body .inspector-classification-page .classification-table-wrap,
    #inspector-body .inspector-classification-modal-body .classification-table-wrap {
        border: 1px solid #d9e3ee;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }

    #inspector-body .inspector-classification-page .inspector-table-panel,
    #inspector-body .inspector-classification-modal-body {
        padding: 0.55rem;
    }

    #inspector-body .inspector-classification-table {
        font-size: 0.78rem;
        min-width: 700px;
        width: 100%;
    }

    #inspector-body .inspector-classification-table thead th {
        font-size: 0.68rem;
        padding: 0.5rem 0.45rem !important;
    }

    #inspector-body .inspector-classification-table th:nth-child(1) {
        width: 112px;
    }

    #inspector-body .inspector-classification-table th:nth-child(2) {
        width: 400px;
    }

    #inspector-body .inspector-classification-table th:nth-child(3) {
        width: 92px;
    }

    #inspector-body .inspector-classification-table th:nth-child(4) {
        width: 96px;
    }

    #inspector-body .inspector-classification-table tbody td {
        padding: 0.55rem 0.45rem !important;
    }

    #inspector-body .inspector-classification-table .classification-code,
    #inspector-body .inspector-classification-table .classification-origin,
    #inspector-body .inspector-classification-table .classification-quantity {
        font-size: 0.78rem;
        padding: 0.22rem 0.42rem;
    }
}

.report-edit-header {
    align-items: flex-start;
    margin-bottom: 1rem;
}

.report-edit-title-block {
    flex: 1 1 420px;
    min-width: 0;
}

.report-edit-meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.55rem;
    justify-content: flex-start;
    margin-top: 0.45rem;
}

.report-edit-meta-item {
    align-items: center;
    color: #4f5d6a;
    display: inline-flex;
    font-size: 0.84rem;
    font-weight: 700;
    gap: 0.32rem;
    line-height: 1.2;
    max-width: 100%;
    text-decoration: none;
}

.report-edit-meta-item i {
    flex: 0 0 auto;
    font-size: 0.75rem;
    margin-right: 0;
}

.report-edit-meta-item span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.report-edit-actions {
    align-content: flex-start;
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-left: auto;
}

.report-edit-form .inspector-form-submit {
    align-items: center;
    display: inline-flex;
    font-weight: 700;
    gap: 0.38rem;
    justify-content: center;
    line-height: 1.25;
    min-height: 38px;
}

.report-edit-form .inspector-form-submit i {
    font-size: 0.95rem;
    margin-right: 0;
}

.report-edit-form {
    margin-bottom: 1rem;
    padding: 1rem;
}

.report-edit-form h4 {
    align-items: center;
    color: #25313b;
    display: flex;
    font-size: 1rem;
    font-weight: 700;
    gap: 0.45rem;
    margin-bottom: 0.8rem;
}

.report-edit-form h4::before {
    background: #28a745;
    border-radius: 2px;
    content: "";
    display: inline-block;
    flex: 0 0 5px;
    height: 18px;
    width: 5px;
}

#admin-body .report-edit-form h4::before {
    background: #17a2b8;
}

.report-edit-form .form-group {
    margin-bottom: 0.9rem;
}

.report-edit-form p {
    margin-bottom: 0.45rem;
}

.report-edit-form p small,
.report-edit-form label small {
    color: #71808f;
    font-weight: 600;
}

.report-edit-form .form-check {
    margin-bottom: 0.22rem;
}

.report-edit-form .form-check-label {
    color: #25313b;
    font-weight: 600;
}

.report-edit-form hr {
    border-top-color: #e8eef5;
    margin-bottom: 1.15rem;
    margin-top: 1.2rem;
}

.report-edit-form .signature-pad {
    max-width: 100%;
}

.report-signature-canvas-wrap {
    max-width: 100%;
    overflow-x: auto;
    padding-bottom: 0.15rem;
}

.report-edit-form .report-signature-canvas-wrap .signature-pad {
    display: block;
    flex: 0 0 auto;
    height: 200px !important;
    max-width: none;
    width: 400px !important;
}

#admin-body .report-edit-form .form-control:focus {
    border-color: #17a2b8;
    box-shadow: 0 0 0 0.13rem rgba(23, 162, 184, 0.12);
}

.report-signature-grid {
    align-items: stretch;
    row-gap: 0.85rem;
}

.report-signature-grid > [class*="col-"] {
    display: flex;
}

.report-signature-card {
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    padding: 0.85rem;
    width: 100%;
}

.report-signature-card .form-group:last-child {
    margin-bottom: 0;
}

.report-signature-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.45rem;
}

.report-signature-actions .btn,
.report-signature-admin-row .btn,
.report-signature-raw .btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
}

.report-signature-admin-tools,
.report-signature-raw {
    border-top: 1px solid #e2ebf4;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
}

.report-signature-admin-row {
    align-items: stretch;
    display: flex;
    gap: 0.5rem;
}

.report-signature-admin-row .form-control {
    flex: 1 1 auto;
    min-width: 0;
}

.report-signature-admin-row .btn {
    flex: 0 0 auto;
    white-space: nowrap;
}

.report-signature-raw textarea.form-control {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.74rem;
    line-height: 1.35;
    min-height: 82px;
}

.report-signature-raw .btn {
    margin-top: 0.45rem;
}

.report-edit-form .inspector-form-submit {
    min-width: 130px;
}

@media (max-width: 767.98px) {
    .report-edit-form {
        padding: 0.85rem;
    }

    .report-edit-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .report-edit-actions .btn {
        min-width: 0;
        width: 100%;
    }

    #inspector-body .report-edit-page .report-edit-actions {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    #inspector-body .report-edit-page .report-edit-actions .btn {
        flex: 0 0 auto;
        width: auto;
    }

    .report-edit-actions .btn:only-child,
    .report-edit-actions .btn:nth-child(n+3) {
        grid-column: 1 / -1;
    }

    .report-signature-card {
        padding: 0.75rem;
    }

    .report-signature-admin-row {
        flex-direction: column;
    }

    .report-signature-actions .btn,
    .report-signature-admin-row .btn,
    .report-edit-form .inspector-form-submit {
        width: 100%;
    }
}

.inspector-dashboard-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.inspector-dashboard-table {
    font-size: 0.86rem;
    table-layout: fixed;
}

.inspector-schedule-table,
.inspector-list-table {
    min-width: 1120px;
}

.inspector-dashboard-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.77rem;
    font-weight: 700;
}

.inspector-column-sort-hint {
    color: #7b8794;
    display: block;
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.2;
}

.inspector-dashboard-table th,
.inspector-dashboard-table td {
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.inspector-dashboard-table td {
    padding: 0.65rem !important;
}

.inspector-simple-table tbody tr:hover {
    background: #f8fcf9;
    box-shadow: inset 3px 0 0 #28a745;
}

.inspector-dashboard-table tbody tr.table-status-inspected {
    background: var(--inspector-status-inspected-bg, #dff5e8) !important;
}

.inspector-dashboard-table tbody tr.table-status-pre_inspect_doc_received,
.inspector-dashboard-table tbody tr.table-status-doc_received {
    background: var(--inspector-status-doc-received-bg, #ffffff) !important;
}

.inspector-dashboard-table tbody tr.table-status-arranged {
    background: var(--inspector-status-arranged-bg, #f1f7ff) !important;
}

.inspector-dashboard-table tbody tr.table-status-finish {
    background: var(--inspector-status-finish-bg, #f1f4f7) !important;
}

.inspector-dashboard-table tbody tr.table-status-cancelled {
    background: var(--inspector-status-cancelled-bg, #ffe6e9) !important;
}

.inspector-dashboard-table tbody tr.table-status-transferred {
    background: var(--inspector-status-transferred-bg, #f5f1fb) !important;
}

.inspector-dashboard-table tbody tr.table-inspection-unsatisfied {
    background: var(--inspector-status-warning-bg, #fff4e6) !important;
}

#vo-table1 tbody tr.inspector-assigned-sub-row {
    background: #e9f7ef !important;
}

#vo-table1 tbody tr.inspector-vo-expiry-warning-row {
    background: #fff8ed !important;
}

#vo-table1 tbody tr.inspector-assigned-sub-row.inspector-vo-expiry-warning-row {
    background: #fff8ed !important;
}

.inspector-expiry-badge {
    border: 1px solid transparent;
    border-radius: 0.2rem;
    display: inline-flex;
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.34rem 0.45rem;
    white-space: normal;
}

.inspector-expiry-badge-warning {
    background: #fff4d8;
    border-color: #f1c67a;
    color: #7a4b00;
}

.inspector-expiry-badge-expired {
    background: #ffe8e8;
    border-color: #f1a7a7;
    color: #8f1d1d;
}

.inspector-dashboard-table tbody td:first-child {
    --inspector-sticky-status-bar: transparent;
    box-shadow: inset 4px 0 0 var(--inspector-sticky-status-bar);
}

#vo-table1 tbody tr.inspector-assigned-sub-row td:first-child {
    --inspector-sticky-status-bar: #28a745;
}

#vo-table1 tbody tr.inspector-vo-expiry-warning-row td:first-child {
    --inspector-sticky-status-bar: #d9822b;
}

#vo-table1 tbody tr.inspector-assigned-sub-row.inspector-vo-expiry-warning-row td:first-child {
    --inspector-sticky-status-bar: #d9822b;
}

.inspector-dashboard-table tbody tr.table-status-inspected td:first-child {
    --inspector-sticky-status-bar: var(--inspector-status-inspected-bar, #218838);
}

.inspector-dashboard-table tbody tr.table-status-pre_inspect_doc_received td:first-child,
.inspector-dashboard-table tbody tr.table-status-doc_received td:first-child {
    --inspector-sticky-status-bar: var(--inspector-status-doc-received-bar, #cfdce8);
}

.inspector-dashboard-table tbody tr.table-status-arranged td:first-child {
    --inspector-sticky-status-bar: var(--inspector-status-arranged-bar, #2f80ed);
}

.inspector-dashboard-table tbody tr.table-status-finish td:first-child {
    --inspector-sticky-status-bar: var(--inspector-status-finish-bar, #6c757d);
}

.inspector-dashboard-table tbody tr.table-status-cancelled td:first-child {
    --inspector-sticky-status-bar: var(--inspector-status-cancelled-bar, #dc3545);
}

.inspector-dashboard-table tbody tr.table-status-transferred td:first-child {
    --inspector-sticky-status-bar: var(--inspector-status-transferred-bar, #6f42c1);
}

.inspector-dashboard-table tbody tr.table-inspection-unsatisfied td:first-child {
    --inspector-sticky-status-bar: var(--inspector-status-warning-bar, #d9822b);
}

:where(#inspector-body table.dataTable.inspector-dashboard-table tbody tr) {
    background-color: #fff;
}

#inspector-body div.dataTables_wrapper table.dataTable.inspector-dashboard-table td:first-child {
    box-shadow: inset 4px 0 0 var(--inspector-sticky-status-bar, transparent);
}

.inspector-batch-header,
.inspector-batch-title-row {
    align-items: center;
    display: inline-flex;
    gap: 0.45rem;
    min-width: 0;
}

.inspector-batch-checkbox,
#selectAll {
    flex: 0 0 auto;
}

.inspector-batch-stack,
.inspector-detail-list,
.inspector-doc-status,
.inspector-actions {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.inspector-doc-status {
    align-items: flex-start;
}

.inspector-doc-status-detail {
    border-top: 1px solid #e8eef5;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding-top: 0.55rem;
    width: 100%;
}

.inspector-doc-status-detail .inspector-doc-buttons {
    width: 100%;
}

.inspector-batch-doc-status {
    border-top: 1px solid #e8eef5;
    padding-top: 0.4rem;
}

.inspector-batch-main {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.inspector-dashboard-table td.inspector-batch-cell {
    height: 1px;
}

.inspector-batch-cell .inspector-batch-stack {
    height: 100%;
    min-height: 100%;
}

.inspector-batch-assigned {
    border-top: 1px solid #e8eef5;
    margin-top: auto;
    padding-top: 0.55rem;
}

.inspector-batch-assigned span {
    color: #64707c;
    display: block;
    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.2rem;
}

.inspector-batch-assigned .form-control-sm {
    background: #fbfcfe;
    border-color: #dfe8f2;
    color: #53606c;
    font-size: 0.78rem;
    height: 30px;
    padding-bottom: 0.18rem;
    padding-top: 0.18rem;
}

.inspector-batch-assigned .form-control-sm:hover {
    border-color: #c7d6e4;
    color: #25313b;
}

.inspector-batch-assigned .form-control-sm:focus {
    background: #fff;
    border-color: #9ccdab;
    box-shadow: 0 0 0 0.12rem rgba(40, 167, 69, 0.1);
    color: #25313b;
}

.inspector-assigned-name.inspector-assigned-name-badge {
    align-items: center;
    background: #eef8f1;
    border: 1px solid #b9dfc3;
    border-radius: 4px;
    color: #1f6f37;
    display: inline-flex;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.2;
    max-width: 100%;
    min-height: 30px;
    overflow-wrap: anywhere;
    padding: 0.35rem 0.45rem;
    white-space: normal;
}

.inspector-assigned-name.inspector-assigned-name-badge-self {
    background: #ffffff;
    border-color: #dfe8f2;
    color: #53606c;
}

.inspector-batch-assigned-readonly .inspector-assigned-name-badge {
    display: flex;
    width: 100%;
}

.inspector-doc-status > .badge,
.inspector-doc-status-detail > .badge,
.inspector-status-badge .badge:not(.app-status-badge) {
    font-size: 0.72rem;
    line-height: 1.15;
    padding: 0.22rem 0.42rem;
}

.inspector-batch-stack strong {
    font-size: 0.98rem;
    line-height: 1.2;
}

.inspector-batch-job-no {
    display: inline-block;
    overflow-wrap: normal;
    white-space: nowrap;
    word-break: keep-all;
}

.inspector-batch-meta {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    padding: 0.35rem 0.4rem;
}

.inspector-batch-meta span {
    color: #64707c;
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
}

.inspector-batch-meta strong {
    display: block;
    font-size: 0.88rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.inspector-batch-meta-compact strong {
    font-size: 0.82rem;
}

.inspector-detail-line > span,
.inspector-date-row span,
.inspector-action-title {
    color: #64707c;
    font-size: 0.74rem;
    font-weight: 700;
}

.inspector-detail-line {
    display: grid;
    gap: 0.35rem;
    grid-template-columns: 86px minmax(0, 1fr);
}

.inspector-dashboard-table td.inspector-detail-cell {
    height: 1px;
    padding: 0.5rem 0.55rem !important;
}

.inspector-detail-cell .inspector-detail-list {
    gap: 0.26rem;
    height: 100%;
    min-height: 100%;
}

.inspector-detail-cell .inspector-detail-line {
    gap: 0.25rem;
    grid-template-columns: 76px minmax(0, 1fr);
}

.inspector-detail-cell .inspector-detail-line > span {
    font-size: 0.7rem;
    line-height: 1.2;
}

.inspector-detail-cell .inspector-detail-line strong {
    font-size: 0.82rem;
    line-height: 1.25;
}

.inspector-detail-cell .inspector-description-text.is-collapsed {
    -webkit-line-clamp: 4;
}

.inspector-detail-line-goods-type {
    align-items: center;
}

.inspector-goods-type-badge {
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    color: #3d4b59;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1.15;
    padding: 0.22rem 0.42rem;
    white-space: normal;
}

.inspector-detail-tools {
    display: flex;
    justify-content: flex-end;
    margin-top: auto;
}

.inspector-copy-arrangement-btn {
    font-size: 0.72rem;
    line-height: 1.1;
    min-height: 25px;
    padding: 0.18rem 0.45rem;
}

.inspector-detail-line strong {
    font-weight: 600;
    min-width: 0;
}

.inspector-description-text {
    display: -webkit-box;
    line-height: 1.35;
    overflow: hidden;
    white-space: normal;
    -webkit-box-orient: vertical;
}

.inspector-description-text.is-collapsed {
    -webkit-line-clamp: 5;
}

.inspector-description-text.is-expanded {
    display: block;
    overflow: visible;
}

.inspector-description-toggle {
    display: none;
    font-size: 0.78rem;
    line-height: 1.2;
    margin-top: 0.15rem;
    padding: 0;
}

.inspector-description-toggle.is-needed {
    display: inline-block;
}

.inspector-date-list {
    display: grid;
    gap: 0.4rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.inspector-date-row {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    min-width: 0;
    padding: 0.4rem;
}

.inspector-date-row span,
.inspector-date-row strong {
    display: block;
    line-height: 1.25;
}

.inspector-status-badge h5,
.inspector-status-badge h6,
.inspector-status-badge p {
    margin: 0;
}

.inspector-status-badge.status-arranged-true {
    border-radius: 6px;
    padding: 0;
}

.inspector-status-badge.status-arranged-true .badge:not(.app-status-badge) {
    background: #eaf3ff;
    border: 1px solid #9cc7ff;
    color: #2C3E50;
}

.inspector-status-badge.status-cancel-true .badge:not(.app-status-badge) {
    background: #dc3545;
    border: 1px solid #bd2130;
    color: #ffffff;
}

.inspector-status-legend {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.65rem;
}

.inspector-legend-item {
    border-radius: 6px;
    display: inline-flex;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.28rem 0.5rem;
}

.inspector-legend-cancelled {
    background: #dc3545;
    border: 1px solid #bd2130;
    color: #ffffff;
}

.inspector-legend-arranged {
    background: #eaf3ff;
    border: 1px solid #9cc7ff;
    color: #2C3E50;
}

.inspector-assigned-name {
    color: #25313b;
    display: inline;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.25;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.inspector-doc-buttons,
.inspector-action-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.inspector-doc-buttons .btn,
.inspector-action-buttons .btn {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.28rem;
    justify-content: flex-start;
    line-height: 1.15;
    text-align: left;
    white-space: normal;
}

.inspector-doc-buttons .btn i,
.inspector-action-buttons .btn i,
.inspector-form-submit i,
.inspector-sub-create-button i,
.inspector-sub-actions .btn i,
.inspector-signature-actions .btn i {
    flex: 0 0 auto;
    margin-right: 0;
}

.inspector-action-group {
    border-bottom: 1px solid #e8eef5;
    padding-bottom: 0.45rem;
}

.inspector-action-group:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.inspector-packer-actions {
    margin-top: 0.45rem;
}

.inspector-action-title {
    letter-spacing: 0;
    margin-bottom: 0.28rem;
}

.inspector-action-badge {
    align-items: center;
    display: inline-flex;
    line-height: 1.25;
    min-height: 31px;
    text-align: left;
    white-space: normal;
}

.inspector-dashboard-table .form-control-sm {
    min-width: 0;
}

.inspector-sub-inspector-header {
    align-items: center;
}

.inspector-sub-create-button {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.35rem;
    justify-content: center;
    line-height: 1.25;
}

.inspector-sub-config {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 0.85rem;
    padding: 0.75rem 0.85rem;
}

.inspector-sub-config-title {
    color: #25313b;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.25;
}

.inspector-sub-config-text,
.inspector-sub-config-control label {
    color: #64707c;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.25;
}

.inspector-sub-config-text {
    margin-top: 0.2rem;
}

.inspector-sub-config-control {
    min-width: 260px;
}

.inspector-sub-config-control label {
    display: block;
    margin-bottom: 0.25rem;
}

.inspector-select-shell {
    position: relative;
}

.inspector-select-shell::after {
    color: #28a745;
    content: "\f078";
    font-family: "Font Awesome 6 Free";
    font-size: 0.75rem;
    font-weight: 900;
    pointer-events: none;
    position: absolute;
    right: 0.8rem;
    top: 50%;
    transform: translateY(-50%);
}

.inspector-sub-mode-select {
    -webkit-appearance: none;
    appearance: none;
    background: #fff;
    border: 1px solid #b9d9c2;
    border-radius: 4px;
    color: #25313b;
    font-weight: 700;
    min-height: 39px;
    padding-right: 2.2rem;
}

.inspector-sub-mode-select:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.15rem rgba(40, 167, 69, 0.14);
}

.inspector-sub-table-panel {
    padding: 0.7rem;
}

.inspector-sub-table {
    margin-bottom: 0 !important;
    min-width: 880px;
}

.inspector-sub-table td {
    vertical-align: middle !important;
}

.inspector-sub-table .form-control {
    background: #fff;
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    color: #25313b;
    font-size: 0.84rem;
    min-height: 36px;
}

.inspector-sub-table .form-control:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.13rem rgba(40, 167, 69, 0.12);
}

.inspector-sub-row:hover .form-control {
    border-color: #b9d9c2;
}

.inspector-sub-index {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.73rem;
    font-weight: 700;
    justify-content: center;
    line-height: 1;
    min-height: 26px;
    min-width: 26px;
}

.inspector-sub-index {
    background: #eef5f0;
    color: #1d6d3b;
}

.inspector-sub-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.inspector-sub-actions .btn {
    align-items: center;
    display: inline-flex;
    height: 31px;
    justify-content: center;
    width: 34px;
}

.inspector-sub-modal-form label {
    color: #4f5d6a;
    font-size: 0.82rem;
    font-weight: 700;
}

.inspector-sub-create-btn {
    align-items: center;
    display: inline-flex;
    gap: 0.25rem;
    justify-content: center;
}

.inspector-summary-page .inspector-dashboard-header {
    margin-bottom: 1rem;
}

.inspector-summary-page .inspector-dashboard-header h3 {
    font-size: 1.55rem;
}

.inspector-summary-page .inspector-summary-month {
    max-width: 100%;
    min-height: 32px;
    width: 156px;
}

.inspector-summary-page .inspector-summary-filter-select {
    max-width: 100%;
    min-height: 32px;
    width: 178px;
}

.inspector-history-page .inspector-history-filter-select {
    max-width: 100%;
    min-height: 32px;
    width: 178px;
}

.inspector-history-filter-toggle,
.inspector-filter-toggle {
    align-items: center;
    display: inline-flex;
    font-weight: 700;
    gap: 0.25rem;
    justify-content: center;
    line-height: 1.2;
}

.inspector-filter-hint-wrap {
    align-items: flex-end;
    display: inline-flex;
    margin-left: auto;
    position: relative;
}

.inspector-filter-hint {
    align-items: center;
    background: #1f6f37;
    border-radius: 4px;
    box-shadow: 0 8px 18px rgba(31, 111, 55, 0.18);
    color: #fff;
    display: none;
    font-size: 0.68rem;
    font-weight: 700;
    justify-content: flex-start;
    line-height: 1.2;
    max-width: calc(100vw - 1.5rem);
    min-width: 176px;
    padding: 0.35rem 0.55rem;
    pointer-events: none;
    position: absolute;
    right: 0;
    text-align: left;
    top: calc(100% + 0.35rem);
    white-space: normal;
    width: max-content;
    z-index: 5;
}

.inspector-filter-hint.is-visible {
    animation: inspector-filter-hint-auto-hide 3.2s ease forwards;
    display: inline-flex;
}

.inspector-filter-hint::before {
    border-bottom: 5px solid #1f6f37;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    content: "";
    position: absolute;
    right: 0.9rem;
    top: -5px;
}

.inspector-filter-toggle[aria-expanded="true"] + .inspector-filter-hint,
.inspector-history-filter-toggle[aria-expanded="true"] + .inspector-filter-hint {
    display: none;
}

@keyframes inspector-filter-hint-auto-hide {
    0%,
    82% {
        opacity: 1;
        transform: translateY(0);
        visibility: visible;
    }

    100% {
        opacity: 0;
        transform: translateY(-2px);
        visibility: hidden;
    }
}

.inspector-schedule-header-actions {
    align-items: flex-end;
}

.inspector-schedule-page .inspector-schedule-action-button,
.inspector-schedule-page .inspector-date-filter-button {
    height: 32px;
    min-height: 32px;
}

.inspector-schedule-page .inspector-schedule-filter-select {
    max-width: 100%;
    min-height: 32px;
    width: 178px;
}

.inspector-schedule-page .inspector-shelf-life-button {
    white-space: nowrap;
}

.inspector-awaiting-page .inspector-awaiting-filter-select {
    max-width: 100%;
    min-height: 32px;
    width: 178px;
}

.inspector-summary-table {
    margin-bottom: 0 !important;
}

.inspector-summary-page #vo-table2_wrapper .dt-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-bottom: 0.8rem;
}

.inspector-summary-page #vo-table2_wrapper .dataTables_filter {
    margin-bottom: 0.8rem;
}

@media (max-width: 767.98px) {
    .inspector-summary-page,
    .inspector-history-page,
    .inspector-schedule-page,
    .inspector-awaiting-page {
        padding-left: 0.6rem;
        padding-right: 0.6rem;
    }

    .inspector-history-filter-toggle,
    .inspector-filter-toggle {
        font-size: 0.78rem;
        padding: 0.25rem 0.55rem;
        width: auto;
    }

    .inspector-filter-hint-wrap {
        align-self: center;
    }

    .inspector-history-filter-collapse,
    .inspector-filter-collapse {
        background: #f8fafc;
        border: 1px solid #d9e3ee;
        border-radius: 6px;
        padding: 0.75rem;
        width: 100%;
    }

    .inspector-history-filter-collapse.show,
    .inspector-filter-collapse.show {
        margin-top: 0.25rem;
    }

    .inspector-summary-page .inspector-table-panel,
    .inspector-history-page .inspector-table-panel,
    .inspector-schedule-page .inspector-table-panel,
    .inspector-awaiting-page .inspector-table-panel {
        padding: 0.5rem;
    }

    .inspector-summary-page #vo-table2_wrapper > .row,
    .inspector-history-page #vo-table2_wrapper > .row,
    .inspector-schedule-page #vo-table1_wrapper > .row,
    .inspector-awaiting-page #vo-table2_wrapper > .row {
        margin-left: 0;
        margin-right: 0;
    }

    .inspector-summary-page #vo-table2_wrapper > .row > [class*="col-"],
    .inspector-history-page #vo-table2_wrapper > .row > [class*="col-"],
    .inspector-schedule-page #vo-table1_wrapper > .row > [class*="col-"],
    .inspector-awaiting-page #vo-table2_wrapper > .row > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }

    .inspector-summary-page #vo-table2_wrapper .dataTables_filter,
    .inspector-history-page #vo-table2_wrapper .dataTables_filter,
    .inspector-schedule-page #vo-table1_wrapper .dataTables_filter,
    .inspector-awaiting-page #vo-table2_wrapper .dataTables_filter {
        margin-bottom: 0.6rem;
        text-align: left;
    }

    .inspector-summary-page #vo-table2_wrapper .dataTables_filter label,
    .inspector-history-page #vo-table2_wrapper .dataTables_filter label,
    .inspector-schedule-page #vo-table1_wrapper .dataTables_filter label,
    .inspector-awaiting-page #vo-table2_wrapper .dataTables_filter label {
        align-items: center;
        display: flex;
        gap: 0.5rem;
        white-space: nowrap;
        width: 100%;
    }

    .inspector-summary-page #vo-table2_wrapper .dataTables_filter input,
    .inspector-history-page #vo-table2_wrapper .dataTables_filter input,
    .inspector-schedule-page #vo-table1_wrapper .dataTables_filter input,
    .inspector-awaiting-page #vo-table2_wrapper .dataTables_filter input {
        flex: 1 1 auto;
        margin-left: 0;
        min-width: 0;
        width: auto;
    }

    .inspector-summary-page #vo-table2_wrapper .dataTables_info,
    .inspector-summary-page #vo-table2_wrapper .dataTables_paginate,
    .inspector-summary-page #vo-table2_wrapper .pagination,
    .inspector-history-page #vo-table2_wrapper .dataTables_info,
    .inspector-history-page #vo-table2_wrapper .dataTables_paginate,
    .inspector-history-page #vo-table2_wrapper .pagination,
    .inspector-schedule-page #vo-table1_wrapper .dataTables_info,
    .inspector-schedule-page #vo-table1_wrapper .dataTables_paginate,
    .inspector-schedule-page #vo-table1_wrapper .pagination,
    .inspector-awaiting-page #vo-table2_wrapper .dataTables_info,
    .inspector-awaiting-page #vo-table2_wrapper .dataTables_paginate,
    .inspector-awaiting-page #vo-table2_wrapper .pagination {
        justify-content: flex-start;
        text-align: left;
        white-space: normal;
    }

    .inspector-summary-page #vo-table2_wrapper .pagination,
    .inspector-history-page #vo-table2_wrapper .pagination,
    .inspector-schedule-page #vo-table1_wrapper .pagination,
    .inspector-awaiting-page #vo-table2_wrapper .pagination {
        flex-wrap: wrap;
    }
}

@media (max-width: 767.98px) {
    .inspector-dashboard-actions,
    .inspector-bulk-assign-bar,
    .inspector-date-filter-fields {
        justify-content: flex-start;
    }

    .inspector-upload-page .inspector-dashboard-actions {
        justify-content: flex-end;
        width: 100%;
    }

    .inspector-upload-page .inspector-dashboard-actions .btn {
        flex: 0 0 auto;
        width: auto;
    }

    .inspector-detail-table th {
        width: 150px;
    }

    .inspector-login-panel {
        margin-top: 0.7rem;
    }

    .report-edit-header,
    .report-edit-meta {
        justify-content: flex-start;
    }

    .report-edit-header {
        flex-direction: column;
    }

    .report-edit-title-block,
    .report-edit-actions {
        flex-basis: auto;
        margin-left: 0;
        width: 100%;
    }

    .report-edit-actions {
        justify-content: flex-start;
    }

    .inspector-date-filter-form,
    .inspector-date-filter-fields,
    .inspector-date-filter-fields .form-group,
    .inspector-date-filter-fields .form-control,
    .inspector-date-filter-fields .btn,
    .inspector-date-type-toggle,
    .inspector-summary-page .inspector-summary-month,
    .inspector-summary-page .inspector-summary-filter-select,
    .inspector-history-page .inspector-history-filter-select,
    .inspector-schedule-page .inspector-schedule-filter-select,
    .inspector-awaiting-page .inspector-awaiting-filter-select,
    .inspector-date-filter-button {
        width: 100%;
    }

    .inspector-schedule-header-actions,
    .inspector-schedule-page .inspector-schedule-filter-form,
    .inspector-schedule-page .inspector-bulk-select,
    .inspector-schedule-page .inspector-bulk-assign-button {
        flex-basis: 100%;
        max-width: 100%;
        width: 100%;
    }

    .inspector-schedule-page .inspector-schedule-header-actions > .btn:not(.inspector-filter-toggle):not(.inspector-shelf-life-button) {
        flex-basis: 100%;
        max-width: 100%;
        width: 100%;
    }

    .inspector-schedule-page .inspector-shelf-life-button {
        flex: 0 0 auto;
        padding-left: 0.55rem;
        padding-right: 0.55rem;
        width: auto;
    }

    .inspector-schedule-page .inspector-bulk-assign-bar {
        align-items: center;
        flex-wrap: nowrap;
        gap: 0.4rem;
        padding: 0.45rem;
    }

    .inspector-schedule-page .inspector-bulk-select {
        flex: 1 1 auto;
        max-width: none;
        min-width: 0;
        width: auto;
    }

    .inspector-schedule-page .inspector-bulk-assign-button {
        flex: 0 0 auto;
        font-size: 0.75rem;
        max-width: none;
        min-width: 68px;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        white-space: nowrap;
        width: auto;
    }

    .inspector-bulk-assign-label-full {
        display: none;
    }

    .inspector-bulk-assign-label-short {
        display: inline;
    }

    .inspector-date-type-toggle .btn {
        flex: 1 1 0;
        justify-content: center;
    }

    .inspector-form-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .inspector-form-span-all {
        grid-column: auto;
    }

    .inspector-profile-form .inspector-form-submit {
        width: 100%;
    }

    .inspector-sub-config {
        align-items: stretch;
        flex-direction: column;
    }

    .inspector-sub-config-control {
        min-width: 0;
    }

    .inspector-sub-config-control,
    .inspector-sub-mode-select {
        width: 100%;
    }

    .inspector-sub-create-button {
        margin-left: auto;
        width: auto;
    }

    .inspector-sub-create-btn {
        width: auto;
    }

    .inspector-sub-table-panel {
        padding: 0.55rem;
    }

    .inspector-sub-table-wrap {
        overflow-x: visible;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper > .row {
        margin-left: 0;
        margin-right: 0;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper > .row > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_length,
    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_filter {
        margin-bottom: 0.6rem;
        text-align: left;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_length label,
    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_filter label {
        white-space: normal;
        width: 100%;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_filter label {
        align-items: center;
        display: flex;
        gap: 0.5rem;
        white-space: nowrap;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_filter input {
        flex: 1 1 auto;
        margin-left: 0;
        margin-top: 0;
        min-width: 0;
        width: auto;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_info,
    .inspector-sub-inspector-page #sub-inspector-table_wrapper .dataTables_paginate,
    .inspector-sub-inspector-page #sub-inspector-table_wrapper .pagination {
        justify-content: flex-start;
        text-align: left;
        white-space: normal;
    }

    .inspector-sub-inspector-page #sub-inspector-table_wrapper .pagination {
        flex-wrap: wrap;
    }

    .inspector-date-list {
        grid-template-columns: minmax(0, 1fr);
    }
}

.portal-page,
.exporter-page,
.exporter-content-page,
.exporter-login-page {
    color: #25313b;
    margin-bottom: 2rem;
    padding-top: 0.9rem;
}

.portal-page-header,
.exporter-page-header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.portal-page-header h1,
.portal-page-header h3,
.exporter-page-header h1,
.exporter-page-header h3 {
    color: #25313b;
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
    overflow-wrap: anywhere;
}

.portal-page-label,
.exporter-page-label {
    color: #6c757d;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.portal-subtitle,
.exporter-subtitle {
    align-items: center;
    color: #5f6b76;
    display: flex;
    flex-wrap: wrap;
    font-size: 0.88rem;
    gap: 0.45rem;
    margin-top: 0.25rem;
}

.portal-subtitle span,
.portal-subtitle a,
.exporter-subtitle span,
.exporter-subtitle a {
    align-items: center;
    display: inline-flex;
    gap: 0.32rem;
    overflow-wrap: anywhere;
}

.portal-subtitle .app-breadcrumb-divider,
.exporter-subtitle .app-breadcrumb-divider {
    display: none;
}

.portal-subtitle i,
.exporter-subtitle i {
    color: var(--portal-page-brand, #007bff);
    flex: 0 0 auto;
    font-size: 0.85rem;
    margin-right: 0;
}

.packer-container-page .exporter-subtitle i {
    color: var(--portal-page-brand, #007bff);
}

.portal-page-actions,
.exporter-page-actions,
.exporter-form-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-end;
}

.portal-page-actions .btn,
.portal-submit-button,
.exporter-page-actions .btn,
.exporter-form-actions .btn,
.exporter-submit-button {
    align-items: center;
    border-radius: 4px;
    display: inline-flex;
    font-weight: 700;
    gap: 0.25rem;
    justify-content: center;
    line-height: 1.25;
}

.portal-page-actions .btn:not(.btn-sm):not(.btn-lg),
.portal-submit-button:not(.btn-sm):not(.btn-lg),
.exporter-page-actions .btn:not(.btn-sm):not(.btn-lg),
.exporter-form-actions .btn:not(.btn-sm):not(.btn-lg),
.exporter-submit-button:not(.btn-sm):not(.btn-lg),
.vo-page-actions .btn:not(.btn-sm):not(.btn-lg),
.batch-action-buttons .btn:not(.btn-sm):not(.btn-lg),
.batch-note-actions .btn:not(.btn-sm):not(.btn-lg),
.vo-empty-batches .btn:not(.btn-sm):not(.btn-lg) {
    min-height: 36px;
}

.portal-page-actions .btn-sm,
.btn-sm.portal-submit-button,
.exporter-page-actions .btn-sm,
.exporter-form-actions .btn-sm,
.btn-sm.exporter-submit-button,
.vo-page-actions .btn-sm,
.batch-action-buttons .btn-sm,
.batch-note-actions .btn-sm,
.vo-empty-batches .btn-sm {
    min-height: 31px;
}

.batch-action-buttons .btn-sm {
    height: auto;
    padding-bottom: 0.25rem;
    padding-top: 0.25rem;
}

.portal-page-actions .btn-lg,
.btn-lg.portal-submit-button,
.exporter-page-actions .btn-lg,
.exporter-form-actions .btn-lg,
.btn-lg.exporter-submit-button,
.vo-page-actions .btn-lg,
.batch-action-buttons .btn-lg,
.batch-note-actions .btn-lg,
.vo-empty-batches .btn-lg {
    min-height: 42px;
}

.vo-page-actions .btn,
.batch-note-actions .btn,
.vo-empty-batches .btn {
    align-items: center;
    display: inline-flex;
    font-weight: 700;
    gap: 0.28rem;
    justify-content: center;
    line-height: 1.25;
}

.batch-action-buttons .btn {
    align-items: center;
    display: inline-flex;
    font-weight: 700;
    gap: 0.28rem;
    justify-content: flex-start;
    line-height: 1.25;
    text-align: left;
    white-space: normal;
}

.batch-action-buttons .btn > span {
    display: block;
    line-height: 1.15;
    min-width: 0;
    overflow-wrap: anywhere;
}

.portal-page-actions .btn i,
.portal-submit-button i,
.exporter-page-actions .btn i,
.exporter-form-actions .btn i,
.exporter-submit-button i,
.vo-page-actions .btn i,
.batch-action-buttons .btn i,
.batch-note-actions .btn i,
.vo-empty-batches .btn i {
    align-items: center;
    display: inline-flex;
    flex: 0 0 auto;
    justify-content: center;
    line-height: 1;
    margin-right: 0;
}

.portal-panel,
.exporter-panel,
.exporter-table-panel,
.exporter-content-panel {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
}

.portal-panel,
.exporter-panel {
    overflow: hidden;
}

.portal-panel-header,
.exporter-panel-header {
    align-items: center;
    background: #f4f7fb;
    border-bottom: 1px solid #d9e3ee;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: space-between;
    padding: 0.75rem;
}

.portal-panel-header h5,
.exporter-panel-header h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
}

.portal-panel-body,
.exporter-panel-body,
.exporter-content-panel {
    padding: 0.85rem;
}

.exporter-table-panel {
    padding: 0.75rem;
}

.exporter-table-panel .dataTables_length,
.exporter-table-panel .dataTables_filter,
.exporter-table-panel .dataTables_info,
.exporter-table-panel .dataTables_paginate {
    font-size: 0.85rem;
}

.exporter-table-panel .dataTables_filter input,
.exporter-table-panel .dataTables_length select {
    border-radius: 4px;
}

.portal-detail-table,
.exporter-form-table,
.exporter-detail-table {
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.portal-detail-table th,
.exporter-form-table th,
.exporter-detail-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
}

.portal-detail-table th,
.portal-detail-table td,
.exporter-form-table th,
.exporter-form-table td,
.exporter-detail-table th,
.exporter-detail-table td {
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.portal-detail-table td,
.exporter-form-table td,
.exporter-detail-table td {
    color: #25313b;
    padding: 0.65rem !important;
}

.portal-detail-table th,
.exporter-form-table th,
.exporter-detail-table th {
    width: 230px;
}

.portal-panel .form-control,
.exporter-form-table .form-control,
.exporter-form-table .custom-select,
.exporter-upload-page .form-control,
.exporter-login-panel .form-control,
.exporter-contact-form .form-control {
    border: 1px solid #d7e1eb;
    border-radius: 4px;
    color: #25313b;
    min-height: 36px;
}

.portal-panel .form-control:focus,
.exporter-form-table .form-control:focus,
.exporter-upload-page .form-control:focus,
.exporter-login-panel .form-control:focus,
.exporter-contact-form .form-control:focus {
    border-color: var(--portal-page-brand, #007bff);
    box-shadow: 0 0 0 0.13rem var(--portal-page-brand-soft, rgba(0, 123, 255, 0.12));
}

.portal-detail-table p,
.exporter-form-table p,
.exporter-detail-table p {
    margin-bottom: 0.25rem;
}

.admin-detail-table {
    font-size: 0.86rem;
    margin-bottom: 0 !important;
    table-layout: fixed;
}

.admin-batch-detail-page .admin-detail-table th {
    width: 30%;
}

.admin-detail-table th {
    background: #f4f7fb;
    color: #3d4b59;
    font-size: 0.78rem;
    font-weight: 700;
}

.admin-detail-table th,
.admin-detail-table td {
    overflow-wrap: anywhere;
    vertical-align: top !important;
    white-space: normal;
}

.admin-detail-table td {
    color: #25313b;
    padding: 0.65rem !important;
}

.portal-panel small,
.exporter-form-table small,
.exporter-upload-page small {
    color: #64707c;
    font-weight: 600;
}

.exporter-form-actions {
    background: #fff;
    border: 1px solid #d9e3ee;
    border-radius: 6px;
    margin-bottom: 1rem;
    padding: 0.75rem;
}

.exporter-upload-page .exporter-panel-body > .exporter-form-actions {
    border: 0;
    border-top: 1px solid #e2ebf4;
    border-radius: 0;
    margin-bottom: 0;
    padding: 0.75rem 0 0;
}

.exporter-desc-options {
    background: #f8fafc;
    border: 1px solid #e2ebf4;
    border-radius: 6px;
    max-height: 260px;
    overflow: auto;
    padding: 0.55rem;
}

.exporter-desc-options .desc-option {
    border-bottom: 1px solid #e8eef5;
    margin: 0;
    padding: 0.28rem 0 0.28rem 1.5rem;
}

.exporter-desc-options .desc-option .custom-control-label {
    display: block;
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.exporter-desc-options .desc-option:last-child {
    border-bottom: 0;
}

.exporter-upload-page .table {
    margin-bottom: 0;
}

.exporter-readonly-badge {
    border: 1px solid #d9e3ee;
    color: #25313b;
    font-size: 0.82rem;
    line-height: 1.2;
    padding: 0.42rem 0.55rem;
}

.exporter-empty-state {
    background: #f8fafc;
    border: 1px dashed #b8c7d8;
    border-radius: 6px;
    color: #64707c;
    font-weight: 700;
    padding: 1rem;
}

.site-url-change-notification-container {
    margin: 0.85rem 0 0;
    max-width: none;
    width: 100%;
}

.site-url-change-notice {
    border-radius: 6px;
    line-height: 1.35;
    margin-bottom: 0;
    overflow-wrap: anywhere;
    padding-right: 3rem;
}

.site-url-change-notice strong {
    align-items: center;
    display: flex;
    margin-bottom: 0.25rem;
}

.site-url-change-notice strong i {
    margin-right: 0.35rem;
}

.site-url-change-notice a {
    font-weight: 700;
    word-break: break-all;
}

.exporter-login-page {
    align-items: flex-start;
    display: flex;
    justify-content: center;
    min-height: calc(100vh - 118px);
}

.exporter-login-panel {
    margin: 1.6rem auto 0;
    max-width: 440px;
    width: 100%;
}

.exporter-content-page {
    max-width: 920px;
}

.exporter-content-page-wide {
    max-width: 1040px;
}

.exporter-content-panel h5 {
    color: #25313b;
    font-size: 1rem;
    font-weight: 700;
}

.exporter-transfer-table-panel .table-responsive {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
}

.exporter-transfer-table {
    min-width: 835px;
}

.exporter-transfer-table th:nth-child(1) {
    width: 140px;
}

.exporter-transfer-table th:nth-child(2) {
    width: 260px;
}

.exporter-transfer-table th:nth-child(3) {
    width: 145px;
}

.exporter-transfer-table th:nth-child(4) {
    width: 145px;
}

.exporter-transfer-table th:nth-child(5) {
    width: 145px;
}

.exporter-transfer-route {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 0.42rem;
    max-width: 100%;
    min-width: 0;
}

.exporter-transfer-route-value {
    font-weight: 700;
    min-width: 0;
    white-space: nowrap;
}

.exporter-transfer-route-arrow {
    color: var(--portal-page-brand, #007bff);
    flex: 0 0 auto;
    font-size: 0.82rem;
}

.exporter-print-detail-page .exporter-detail-table th {
    width: 30%;
}

.batch-detail-action-button {
    white-space: nowrap;
}

.batch-detail-action-button > span {
    line-height: 1.15;
}

.vo-page-actions .btn,
.batch-action-buttons .btn {
    border-radius: 4px;
}

.vo-summary-panel,
.vo-batches-panel {
    box-shadow: 0 1px 2px rgba(38, 55, 70, 0.04);
}

.vo-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
}

.vo-summary-emails,
.vo-capacity-item {
    grid-column: span 2;
}

@media (max-width: 767.98px) {
    .portal-page-actions,
    .exporter-page-actions,
    .exporter-form-actions {
        justify-content: flex-start;
    }

    .exporter-vo-page .vo-page-actions {
        justify-content: flex-end;
        width: 100%;
    }

    .exporter-transfer-table-panel .dataTables_length,
    .exporter-transfer-table-panel .dataTables_filter,
    .exporter-transfer-table-panel .dataTables_info,
    .exporter-transfer-table-panel .dataTables_paginate {
        text-align: left;
    }

    .exporter-transfer-table-panel .dataTables_filter label,
    .exporter-transfer-table-panel .dataTables_length label {
        width: 100%;
    }

    .exporter-transfer-table-panel .dataTables_wrapper .dataTables_filter input,
    .exporter-transfer-table-panel .dataTables_wrapper .dataTables_length select {
        margin-left: 0;
        margin-top: 0.25rem;
        width: 100%;
    }

    .exporter-transfer-table-panel .dataTables_wrapper .dataTables_filter input {
        flex: 1 1 auto;
        margin-top: 0;
        min-width: 0;
        width: auto;
    }

    .portal-detail-table,
    .portal-detail-table tbody,
    .portal-detail-table tr,
    .portal-detail-table th,
    .portal-detail-table td,
    .exporter-form-table,
    .exporter-form-table tbody,
    .exporter-form-table tr,
    .exporter-form-table th,
    .exporter-form-table td,
    .exporter-detail-table,
    .exporter-detail-table tbody,
    .exporter-detail-table tr,
    .exporter-detail-table th,
    .exporter-detail-table td {
        display: block;
        width: 100% !important;
    }

    .portal-detail-table tr,
    .exporter-form-table tr,
    .exporter-detail-table tr {
        border-bottom: 1px solid #d9e3ee;
    }

    .portal-detail-table th,
    .exporter-form-table th,
    .exporter-detail-table th {
        border-bottom: 0 !important;
    }

    .portal-detail-table td,
    .exporter-form-table td,
    .exporter-detail-table td {
        border-top: 0 !important;
    }

    .admin-detail-table,
    .admin-detail-table tbody,
    .admin-detail-table tr,
    .admin-detail-table th,
    .admin-detail-table td {
        display: block;
        width: 100% !important;
    }

    .admin-detail-table tr {
        border-bottom: 1px solid #d9e3ee;
    }

    .admin-detail-table th {
        border-bottom: 0 !important;
    }

    .admin-detail-table td {
        border-top: 0 !important;
    }

    .vo-summary-emails,
    .vo-capacity-item {
        grid-column: auto;
    }
}

@media (max-width: 575.98px) {
    .admin-batch-detail-page .admin-page-header {
        align-items: flex-start;
        display: grid;
        gap: 0.22rem 0.75rem;
        grid-template-columns: minmax(0, 1fr) auto;
        width: 100%;
    }

    .admin-batch-detail-page .admin-page-header > div:first-child {
        display: contents;
        min-width: 0;
    }

    .admin-batch-detail-page .admin-page-label {
        font-size: 0.68rem;
        grid-column: 1;
        grid-row: 1;
    }

    .admin-batch-detail-page .admin-page-header h3 {
        font-size: 1.08rem;
        grid-column: 1;
        grid-row: 2;
    }

    .admin-batch-detail-page .admin-batch-context {
        font-size: 0.74rem;
        grid-column: 1 / -1;
        grid-row: 3;
        margin-top: 0.15rem;
    }

    .admin-batch-detail-page .admin-batch-context-link {
        font-size: 0.74rem;
        gap: 0.28rem;
    }

    .admin-batch-detail-page .admin-batch-context-link i {
        font-size: 0.74rem;
    }

    .admin-batch-detail-page .admin-page-actions {
        align-self: flex-start;
        flex-wrap: wrap;
        gap: 0.35rem;
        grid-column: 1 / -1;
        grid-row: 4;
        justify-content: flex-start;
        margin-top: 0.2rem;
        width: 100%;
    }

    #admin-body .admin-batch-detail-page .admin-page-actions .admin-page-action-button {
        flex: 0 1 auto;
        font-size: 0.76rem;
        max-width: 100%;
        min-height: 30px;
        padding: 0.28rem 0.52rem;
        width: auto;
    }

    .admin-batch-detail-page .admin-detail-table {
        font-size: 0.8rem;
        line-height: 1.35;
    }

    .admin-batch-detail-page .admin-detail-table th {
        font-size: 0.72rem;
        padding: 0.48rem 0.55rem !important;
    }

    .admin-batch-detail-page .admin-detail-table td {
        padding: 0.48rem 0.55rem !important;
    }

    .exporter-print-detail-page .exporter-page-header {
        align-items: flex-start;
        display: grid;
        gap: 0.22rem 0.75rem;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .exporter-upload-page .exporter-page-header {
        align-items: flex-start;
        display: grid;
        gap: 0.22rem 0.75rem;
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .exporter-print-detail-page .exporter-page-header > div:first-child {
        display: contents;
        min-width: 0;
    }

    .exporter-upload-page .exporter-page-header > div:first-child {
        display: contents;
        min-width: 0;
    }

    .exporter-print-detail-page .exporter-page-header .exporter-page-label {
        grid-column: 1;
        grid-row: 1;
    }

    .exporter-upload-page .exporter-page-header .exporter-page-label {
        grid-column: 1;
        grid-row: 1;
    }

    .exporter-print-detail-page .exporter-page-header h3 {
        grid-column: 1;
        grid-row: 2;
    }

    .exporter-upload-page .exporter-page-header h3 {
        grid-column: 1;
        grid-row: 2;
    }

    .exporter-print-detail-page .exporter-page-header .exporter-subtitle {
        grid-column: 1 / -1;
        grid-row: 3;
        margin-top: 0.15rem;
    }

    .exporter-upload-page .exporter-page-header .exporter-subtitle {
        grid-column: 1 / -1;
        grid-row: 3;
        margin-top: 0.15rem;
    }

    .exporter-print-detail-page .exporter-page-actions {
        align-self: flex-start;
        flex-wrap: wrap;
        gap: 0.35rem;
        grid-column: 1 / -1;
        grid-row: 4;
        justify-content: flex-start;
        margin-top: 0.2rem;
        width: 100%;
    }

    .exporter-upload-page .exporter-page-actions {
        align-self: flex-start;
        grid-column: 2;
        grid-row: 1 / span 2;
        justify-content: flex-end;
        width: auto;
    }

    .portal-page-actions .btn,
    .portal-submit-button,
    .exporter-page-actions .btn,
    .exporter-form-actions .btn,
    .exporter-submit-button {
        width: 100%;
    }

    .exporter-vo-page .vo-page-actions .btn,
    .exporter-upload-page .exporter-page-actions .btn,
    .exporter-print-detail-page .exporter-page-actions .btn {
        flex: 0 1 auto;
        max-width: 100%;
        width: auto;
    }

    .exporter-print-detail-page .exporter-page-actions .btn {
        font-size: 0.76rem;
        min-height: 30px;
        padding: 0.28rem 0.52rem;
    }
}

@media print {
    .admin-batch-detail-page {
        margin-bottom: 0;
        padding-top: 0;
    }

    .admin-batch-detail-page .admin-table-panel {
        background: transparent;
        border: 0;
        margin: 0;
        padding: 0;
    }

    .admin-batch-detail-page .table-responsive {
        overflow: visible !important;
    }

    .admin-batch-detail-page .admin-detail-table {
        color: #000;
        display: table !important;
        font-size: 1rem;
        line-height: 1.2;
        table-layout: auto;
        width: 100%;
    }

    .admin-batch-detail-page .admin-detail-table tbody {
        display: table-row-group !important;
    }

    .admin-batch-detail-page .admin-detail-table tr {
        display: table-row !important;
    }

    .admin-batch-detail-page .admin-detail-table th,
    .admin-batch-detail-page .admin-detail-table td {
        background: #fff !important;
        border-color: #dee2e6 !important;
        color: #000;
        display: table-cell !important;
        line-height: 1.2;
        padding: 6px 6px !important;
        vertical-align: middle !important;
        width: auto !important;
    }

    .admin-batch-detail-page .admin-detail-table th {
        font-size: 1rem;
        font-weight: 700;
        width: 30% !important;
    }

    .exporter-print-detail-page {
        margin-bottom: 0;
        padding-top: 0;
    }

    .exporter-print-detail-page .exporter-panel,
    .exporter-print-detail-page .exporter-table-panel {
        background: transparent;
        border: 0;
        margin: 0;
        padding: 0;
    }

    .exporter-print-detail-page .table-responsive {
        overflow: visible !important;
    }

    .exporter-print-detail-page .exporter-detail-table {
        color: #000;
        display: table !important;
        font-size: 1rem;
        line-height: 1.2;
        table-layout: auto;
        width: 100%;
    }

    .exporter-print-detail-page .exporter-detail-table tbody {
        display: table-row-group !important;
    }

    .exporter-print-detail-page .exporter-detail-table tr {
        display: table-row !important;
    }

    .exporter-print-detail-page .exporter-detail-table th,
    .exporter-print-detail-page .exporter-detail-table td {
        background: #fff !important;
        border-color: #dee2e6 !important;
        color: #000;
        display: table-cell !important;
        line-height: 1.2;
        padding: 6px 6px !important;
        vertical-align: middle !important;
        width: auto !important;
    }

    .exporter-print-detail-page .exporter-detail-table th {
        font-size: 1rem;
        font-weight: 700;
        width: 30% !important;
    }

    .exporter-print-detail-page .exporter-detail-table p {
        margin-bottom: 0.25rem;
    }
}
