.category_menu .sub_menu .sub_menu {    /*width: 530px;*/
padding-right: 0; overflow: scroll; }
.listing .product_box { width: calc(25% - 0.5%); }
.listview .product_box { width: 100%; }
.listing .products { margin-bottom: 0; padding-bottom: 0; }
.listing:has(.pager-inline) { padding-bottom: 12px; }

/* Product listing pager: pagination + page-size dropdown inline and centered */
.listing .products .pager.pager-inline,
.listing .list-view .pager.pager-inline,
.pager.pager-inline {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 4px;
    width: 100%;
    clear: both;
    margin: 8px 0 !important;
    padding-top: 15px;
    text-align: center;
}
.pager.pager-inline .pagination {
    float: none;
    width: auto;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
}
.pager.pager-inline .pagination li {
    display: inline-flex;
    align-items: center;
}
.pager.pager-inline .pagination li a,
.pager.pager-inline .pagination li span {
    margin: 2px !important;
}
.pager.pager-inline select.pager-size-select,
.pager.pager-inline .pager-size-select + .chosen-container,
.pager.pager-inline .chosen-container {
    width: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    margin: 2px !important;
    flex-shrink: 0;
}
.pager.pager-inline select.pager-size-select {
    height: 30px;
    min-height: 30px;
    padding: 0 4px 0 8px;
    font-size: 13px;
    font-family: 'Noto Sans', sans-serif;
    border-radius: 4px;
    border: 1px solid #d8d8d9;
    box-sizing: border-box;
    background: #fff;
    color: #737478;
    cursor: pointer;
}
.home .list-view .pager.pager-inline {
    flex-wrap: wrap;
    max-width: 100%;
    overflow: visible;
}
.home .list-view .pager.pager-inline .pagination {
    flex-wrap: wrap;
    justify-content: center;
}
.grid-view .pager.pager-inline {
    flex-wrap: wrap;
    max-width: 100%;
    box-sizing: border-box;
    overflow: visible;
}
.grid-view .pager.pager-inline .pagination {
    flex-wrap: wrap;
    justify-content: center;
}
.page_content .table-responsive:has(.grid-view) {
    overflow-x: hidden;
}
/* Match pagination button colors (#fff, #d8d8d9, #737478, #E30613) */
.pager.pager-inline .chosen-container a,
.pager.pager-inline .chosen-container-single .chosen-single {
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    line-height: 28px !important;
    padding: 0 8px 0 10px !important;
    font-size: 13px;
    font-family: 'Noto Sans', sans-serif;
    border-radius: 4px !important;
    border: 1px solid #d8d8d9 !important;
    box-sizing: border-box;
    background: #fff !important;
    color: #737478 !important;
    box-shadow: none !important;
}
.pager.pager-inline .chosen-container-single .chosen-single span {
    line-height: 28px;
    margin-right: 14px;
    color: #737478;
}
.pager.pager-inline .chosen-container-single .chosen-single:hover {
    background: #d8d8d9 !important;
    color: #333 !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3) !important;
}
.pager.pager-inline .chosen-container-single .chosen-single:hover span {
    color: #333;
}
.pager.pager-inline .chosen-container-active.chosen-with-drop .chosen-single {
    background: #fff !important;
    border-color: #E30613 !important;
    color: #737478 !important;
    box-shadow: none !important;
}
.pager.pager-inline .chosen-container .chosen-drop {
    border: 1px solid #d8d8d9;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
.pager.pager-inline .chosen-container .chosen-results li {
    color: #737478;
    font-family: 'Noto Sans', sans-serif;
}
.pager.pager-inline .chosen-container .chosen-results li.highlighted {
    background: #E30613 !important;
    color: #fff !important;
}
.pager.pager-inline .chosen-container .chosen-results li.result-selected {
    color: #E30613;
    font-weight: bold;
}
.pager.pager-inline .chosen-container-single .chosen-single div {
    top: 0;
    right: 4px;
    width: 14px;
    height: 30px;
}
.pager.pager-inline .chosen-container-single .chosen-single div b {
    background-position: 0 7px;
}
.pager.pager-inline .chosen-container-active.chosen-with-drop .chosen-single div b {
    background-position: -18px 7px;
}

/*  */
.product_box.in-cart:before { z-index: 1; }
.total_cart button.btn { width: 100%; }

/*
.product_box h3.height a{
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}*/
.danger-btn { background: #E30613 !important; }
table.cart .action .btn.danger-btn { color: #fff4f4 !important; }
table.site-po td.po-number { cursor: pointer; }
.float-right { float: right; }
.header_right .chosen-container { width: 200px !important; max-width: 200px !important; }
.btn-sm { height: 25px; line-height: 25px; min-width: 50px; text-align: center; }
.btn.btn-rounded { min-width: auto; border-radius: 50%; height: 35px; width: 35px; text-align: center; line-height: 35px; padding: 0; }
.btn.btn-rounded .fa { margin-right: 0; }
.btn-inline-group { min-width: 31px; }

/* Order Tracking */
.order_step li { width: 13%; }
.order_step li.active:before { background: #4E8108; }
.order_step li.active.danger:before { background: #F44336; }
.order_step li.active.danger span { background: #F44336; }
.order_step li.active.danger .fa, .order_step .active.danger p { color: #F44336; }

/**
 * Date Range Picker
 */
.daterangepicker { font-family: Noto Sans; -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); box-shadow: 0 6px 12px rgba(0, 0, 0, .175); border-radius: 0; border-left: none; }
.daterangepicker .ranges li.active { background-color: #e33a2b; }
.daterangepicker .calendar-table thead { background: #000; color: #FFF; }
.daterangepicker .calendar-table th { background: #000; }
.daterangepicker .calendar-table th, .daterangepicker .calendar-table td, .daterangepicker td.start-date.end-date { border-radius: 0; }
.daterangepicker th.available span, .daterangepicker .calendar-table .next span, .daterangepicker .calendar-table .prev span { border-color: #FFF; }
.daterangepicker td.in-range { background-color: #e33a2b1c; }
.daterangepicker td.active, .daterangepicker td.active:hover { background-color: #e33a2b; }
.daterangepicker .drp-buttons .btn { line-height: 12px; }
.daterangepicker.show-calendar .ranges { margin-top: 0; }
.daterangepicker .calendar-table { border: none; }
.daterangepicker.show-ranges.ltr .drp-calendar.left, .daterangepicker .drp-calendar.right { padding: 0; }
.daterangepicker .drp-calendar.left .calendar-table { padding: 0; }

/*.daterangepicker td.available:hover, */
.daterangepicker th.available:hover { background: #2B2B2B; }

/* Grid View */
.grid-view.widget-compact table, .grid-view.widget-compact table thead th { font-size: 90%; }

/* Dropdown */
.select2-container--default .select2-selection--single { border-radius: 0; height: 35px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 35px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 35px; }
.select2-container--open .select2-dropdown--below { border-radius: 0; }

/*chat css*/
.chat-side { max-width: 830px; display: inline-block; width: 100%; float: left !important; }
.chat-wrap { border: 1px solid #c1c1c1; padding: 49px 0px 60px 10px; min-height: 345px; display: inline-block; width: 100%; background: url(../images/chat-pattern.jpg) repeat; position: relative; }
.chat-title { border-radius: 4px 4px 0px 0px; position: absolute; top: 0px; left: 0px; width: 100%; height: 48px; line-height: normal; background: #000; box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.10); padding: 10px; z-index: 99; }
.chat-textarea { position: absolute; bottom: 0px; left: 0px; width: 100%; height: 65px; line-height: normal; box-shadow: 0px -3px 4px rgba(0, 0, 0, 0.10); border-top: 1px solid #bbb; background: #ececec; padding: 10px 60px 10px 10px; }
.chat-title h3 { margin-bottom: 0px; color: #fff; }
.chat-textarea .form-group { margin-bottom: 0px }
.chat-field { resize: none; width: 100%; border-radius: 4px; display: inline-block; padding: 4px 10px; height: 43px; }
.user-send { cursor: pointer; color: #fff; line-height: 38px; position: absolute; right: 10px; top: 17%; /* margin-top: 40px; */ font-size: 20px; text-transform: capitalize; width: 38px; height: 38px; text-align: center; display: inline-block; background: #e30613; border-radius: 50%; }
.chat_box_main { position: relative; width: 100%; display: inline-block; }
.chat_view { width: 60%; float: left; position: relative; padding-left: 56px; margin-bottom: 10px;    /* background: #fff; */ display: inline-block; min-height: 38px; }
.chat_view .user-info { color: #fff; line-height: 38px; position: absolute; left: 5px; top: 0px;    /* margin-top: 40px; */ font-size: 15px; text-transform: capitalize; width: 38px; height: 38px; text-align: center; display: inline-block; background: #e30613; border-radius: 50%; }
.user-text { border: 1px solid #dbdbdb; background: #fff; position: relative; width: 100%; min-height: 36px; padding: 5px 5px 18px 5px; border-radius: 9px; }
.chat-time { position: absolute; right: 10px; bottom: 3px; color: #838383; font-size: 11px; }
.chat_view.right { float: right; padding-right: 56px; padding-left: 0px; }
.chat_view.right .user-info { right: 5px; left: auto; }
.chat_inner_box { display: inline-block; width: 100%; }
.scroll { width: 100%; display: inline-block; max-height: 318px; overflow: auto; padding: 20px 0px; }
.scrollbar { float: left; height: 300px; }
#style-3::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); background-color: #F5F5F5; }
#style-3::-webkit-scrollbar { width: 6px; background-color: #F5F5F5; }
#style-3::-webkit-scrollbar-thumb { background-color: #818181; }

/* discuss*/
.discussion-area { width: 100%; /*display: inline-block;*/ background: #fff; border-radius: 4px; margin: 0 auto; padding: 20px; margin: 30px 0px; }
.discussion-area h3 { padding: 0px 0px 10px 0px; border-bottom: 1px solid #9c9c9c; }
.discussion-wrap { width: 100%; margin: 0 auto; }
.discussion-form .form-group { padding: 8px; margin-bottom: 25px; float: left; width: 100%; margin-bottom: 0px; min-height: 80px; resize: none; border-radius: 4px; }
.btn.discussion-submit { margin-top: 10px; float: right;}
.user-avatar { background: #e30613; width: 35px; height: 35px; display: inline-block; border-radius: 50%; color: #fff; line-height: 35px; text-align: center; font-weight: 500; position: absolute; font-size: 17px; left: 10px; }
.discussion-chat { display: inline-block; width: 100%; border: 1px solid #e7f4ff; background: #f4faff; padding: 10px 11px 11px 53px; position: relative; height: 57px; }
.discussion-chat p { margin-bottom: 0px; line-height: 35px; font-size: 15px; color: #353535; }
.discussion-wrap .discuss-date { float: right; display: inline-block; font-size: 11px; color: #797979; }
.discussion-comment1 { width: 100%; display: inline-block; }
.discussion-content p { margin-bottom: 0px; line-height: 24px; color: #5a5a5a; font-size: 14px; }
.discussion-list { width: 100%; margin-bottom: 10px; position: relative; padding-bottom: 26px; display: inline-block; background: #f4faff; }
.discussion-content { padding: 0px 10px 10px 50px; display: inline-block; }
.discussion-list .reply { position: absolute; bottom: 6px; left: 52px; color: #ff2f3b; font-size: 12px; }
.discussion-list.reply-dis { float: right; max-width: 660px; width: 100%; }

.pull-up {margin-top: -20px;}
.action-pane {margin-bottom: 15px;;}
.modal-dialog.shortclose-po-custom-width {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    max-width: 95vw !important;
    max-height: 95vh !important;
    width: auto !important;
    margin: 0 !important;
    overflow: visible !important;
}
/* Container wrapper - ensures horizontal scroll on zoom */
.grid-view.widget-compact {
    overflow-x: visible;
    overflow-y: visible;
    width: 100%;
    max-width: 100%;
}

/* Table styling - prevents expansion beyond container */
.grid-view.widget-compact table {
    width: 100%;
    max-width: 100%;
    table-layout: auto;
    border-collapse: collapse;
}

.grid-view.widget-compact table.table.finance {
    overflow-x: auto !important;
    overflow-y: visible !important;
    display: block;
}

/* Cell content handling - prevents overflow */
.grid-view.widget-compact td,
.grid-view.widget-compact th {
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px; /* Adjust based on your needs */
}

/* Alternative: Allow wrapping instead of truncating */
.grid-view.widget-compact td,
.grid-view.widget-compact th {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Specific for table-striped and table-borderless classes */
table.table-striped.table-borderless {
    min-width: 100%;
    display: table;
}
.shortclose-po-custom-width {width: 50%;}

/* Rating */
.custom-required:after {
    content: ' *';
    color: red;
}
.rating {
    unicode-bidi: bidi-override;
    direction: ltr;
    text-align: left;
    margin-top: 10px;
}
.rating > span {
    display: inline-block;
    position: relative;
    width: 1.1em;
    font-size: 20px;
    cursor: pointer;
    margin-right: 5px;
}
.rating > span.glyphicon-star-empty:before {
    color: #ccc;
} 
.rating > span.glyphicon-star:before {
    
    color: #FFD700;
}
.help-block {
    font-style: italic;
    color: #666;
    margin-bottom: 5px;
}
.error-message {
    color: red;
    margin-top: 5px;
}
/* Product image loading state */
.product-img-wrap-loading {
    position: relative !important;
    background: #f4f4f4 !important;
}

.product-img-wrap-loading img {
    opacity: 0;
    transition: opacity 0.2s ease;
}

.product-img-wrap-loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px;
    background: transparent;
    border-radius: 50%;
    border: 4px solid transparent;
    border-top-color: #b0b0b0;
    border-right-color: #d0d0d0;
    animation: product-img-spin 0.75s linear infinite;
    pointer-events: none;
    z-index: 2;
}

@keyframes product-img-spin {
    to {
        transform: rotate(360deg);
    }
}

/* PR approval page */
.pr-approval-page .order-header-card { background: #fff; border: 1px solid #e0e0e0; border-radius: 3px; padding: 20px 24px; margin-bottom: 18px; display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.pr-approval-page .pr-level-action-notice { display: flex; gap: 12px; align-items: flex-start; background: #fffbeb; border: 1px solid #f6e05e; border-left: 4px solid #d69e2e; border-radius: 3px; padding: 14px 16px; margin-bottom: 18px; color: #744210; }
.pr-approval-page .pr-level-action-notice i { font-size: 18px; color: #d69e2e; margin-top: 2px; flex-shrink: 0; }
.pr-approval-page .pr-level-action-notice strong { display: block; font-size: 14px; margin-bottom: 4px; color: #744210; }
.pr-approval-page .pr-level-action-notice p { margin: 0; font-size: 13px; line-height: 1.5; color: #975a16; }
.pr-approval-page .order-number-label { font-size: 11px; color: #888; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px; }
.pr-approval-page .order-number-value { font-size: 26px; font-weight: 700; color: #E30613; line-height: 1; }
.pr-approval-page .order-meta-detail { font-size: 12px; color: #888; margin-top: 6px; }
.pr-approval-page .order-meta-detail span { color: #333; font-weight: 600; }
.pr-approval-page .order-header-status { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.pr-approval-page .approval-level-hint { font-size: 11px; color: #888; }
.pr-approval-page .status-pill { display: inline-flex; align-items: center; gap: 7px; padding: 7px 16px; border-radius: 20px; font-size: 13px; font-weight: 600; }
.pr-approval-page .status-pill.pending { background: #fffbeb; color: #b7791f; border: 1px solid #f6e05e; }
.pr-approval-page .status-pill.approved { background: #f0fff4; color: #276749; border: 1px solid #9ae6b4; }
.pr-approval-page .status-pill.rejected { background: #fff5f5; color: #c53030; border: 1px solid #feb2b2; }
.pr-approval-page .card { background: #fff; border: 1px solid #e0e0e0; border-radius: 3px; margin-bottom: 18px; }
.pr-approval-page .card-head { padding: 13px 20px; border-bottom: 1px solid #e8ecf0; display: flex; align-items: center; gap: 10px; background: #fafbfc; border-radius: 3px 3px 0 0; }
.pr-approval-page .card-head h4 { margin: 0; font-size: 14px; font-weight: 700; color: #333; }
.pr-approval-page .card-head i { color: #E30613; font-size: 15px; }
.pr-approval-page .card-head-muted i { color: #718096; }
.pr-approval-page .card-body { padding: 18px 20px; }
.pr-approval-page .table-scroll { overflow-x: auto; }
.pr-approval-page .order-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.pr-approval-page .order-table thead tr { background: #f7f9fc; }
.pr-approval-page .order-table th { padding: 10px 14px; text-align: center; font-size: 11px; font-weight: 700; color: #666; text-transform: uppercase; letter-spacing: .04em; border-bottom: 2px solid #e0e0e0; }
.pr-approval-page .order-table th.text-right, .pr-approval-page .order-table td.text-right { text-align: right; }
.pr-approval-page .order-table th.text-center, .pr-approval-page .order-table td.text-center { text-align: center; }
.pr-approval-page .order-table td { padding: 11px 14px; border-bottom: 1px solid #f0f2f5; vertical-align: middle; }
.pr-approval-page .order-table tbody tr:hover { background: #fafbfc; }
.pr-approval-page .order-table tbody tr:last-child td { border-bottom: none; }
.pr-approval-page .row-status-icon { font-size: 14px; color: #d8d8d8; }
.pr-approval-page .product-item-label { font-weight: 600; margin: 0; cursor: default; display: inline-block; }
.pr-approval-page label.product-item-label { cursor: pointer; }
.pr-approval-page .product-comment { margin-top: 5px; padding: 5px 9px; background: #f7f9fc; border-left: 3px solid #E30613; border-radius: 0 3px 3px 0; font-size: 11px; color: #555; line-height: 1.5; }
.pr-approval-page .total-row { display: flex; justify-content: flex-end; align-items: center; gap: 20px; padding: 14px 20px; border-top: 2px solid #e0e0e0; background: #fafbfc; border-radius: 0 0 3px 3px; }
.pr-approval-page .total-label { font-size: 14px; font-weight: 600; color: #666; }
.pr-approval-page .total-amount { font-size: 24px; font-weight: 700; color: #E30613; }
.pr-approval-page .bottom-grid { display: flex; gap: 18px; align-items: flex-start; flex-wrap: wrap; }
.pr-approval-page .bottom-left { flex: 1 1 380px; min-width: 0; }
.pr-approval-page .bottom-right { flex: 0 0 260px; }
@media (max-width: 700px) { .pr-approval-page .bottom-right { flex: 1 1 100%; } }
.pr-approval-page .remarks-box { background: #f7f9fc; border: 1px solid #e0e0e0; border-radius: 3px; padding: 11px 14px; font-size: 13px; color: #4a5568; min-height: 44px; line-height: 1.6; text-align: left; }
.pr-approval-page .file-download-btn { display: inline-flex; align-items: center; gap: 8px; padding: 9px 18px; background: #E30613; color: #fff !important; border-radius: 2px; font-size: 13px; font-weight: 600; text-decoration: none; border: none; transition: background .2s; }
.pr-approval-page .file-download-btn:hover { background: #BC000B; color: #fff; text-decoration: none; }
.pr-approval-page .approver-entry { display: flex; gap: 12px; padding: 13px 0; border-bottom: 1px solid #f0f2f5; }
.pr-approval-page .approver-entry:last-child { border-bottom: none; padding-bottom: 0; }
.pr-approval-page .approver-avatar { width: 34px; height: 34px; border-radius: 50%; background: #E30613; color: #fff; font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.pr-approval-page .approver-avatar.lvl-2 { background: #2b6cb0; }
.pr-approval-page .approver-avatar.lvl-3 { background: #276749; }
.pr-approval-page .approver-info { flex: 1; min-width: 0; }
.pr-approval-page .approver-name-row { display: flex; align-items: center; gap: 8px; margin-bottom: 5px; flex-wrap: wrap; }
.pr-approval-page .approver-name { font-size: 13px; font-weight: 700; color: #333; }
.pr-approval-page .approver-level-tag { font-size: 10px; font-weight: 700; color: #888; background: #f0f2f5; border-radius: 10px; padding: 2px 8px; }
.pr-approval-page .approver-comment-text { font-size: 13px; color: #555; background: #f7f9fc; border: 1px solid #e8ecf0; border-radius: 3px; padding: 8px 12px; line-height: 1.6; text-align: left; word-break: break-word; }
.pr-approval-page .approver-comment-text.is-empty { color: #a0aec0; font-style: italic; }
.pr-approval-page .no-comments-msg { font-size: 13px; color: #a0aec0; font-style: italic; padding: 4px 0; margin: 0; }
.pr-approval-page .your-comment-section { margin-top: 18px; }
.pr-approval-page .textarea-label { font-size: 11px; font-weight: 700; color: #666; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 6px; display: block; }
.pr-approval-page .comment-textarea { width: 100%; border: 1px solid #d8d9d9; border-radius: 3px; padding: 9px 12px; font-size: 13px; color: #333; resize: vertical; min-height: 80px; background: #f7f7f7; transition: border .2s, background .2s; box-sizing: border-box; }
.pr-approval-page .comment-textarea:focus { outline: none; border-color: #E30613; background: #fff; box-shadow: 0 0 0 3px rgba(227, 6, 19, .08); }
.pr-approval-page .action-bar { display: flex; gap: 10px; padding: 16px 20px; border-top: 1px solid #e8ecf0; background: #fafbfc; border-radius: 0 0 3px 3px; }
.pr-approval-page .btn-approve, .pr-approval-page .btn-reject { display: inline-flex; align-items: center; gap: 7px; padding: 9px 22px; font-size: 13px; font-weight: 700; border: none; border-radius: 2px; cursor: pointer; transition: background .2s; box-shadow: 0 2px 4px rgba(0, 0, 0, .15); }
.pr-approval-page .btn-approve { background: #3a7d44; color: #fff; }
.pr-approval-page .btn-approve:hover { background: #2d6234; color: #fff; }
.pr-approval-page .btn-reject { background: #E30613; color: #fff; }
.pr-approval-page .btn-reject:hover { background: #BC000B; color: #fff; }
.pr-approval-page .approval-chain-body { padding: 16px 20px; }
.pr-approval-page .approval-chain { display: flex; flex-direction: column; }
.pr-approval-page .chain-step { display: flex; gap: 12px; align-items: stretch; }
.pr-approval-page .chain-step-marker { display: flex; flex-direction: column; align-items: center; flex-shrink: 0; width: 32px; }
.pr-approval-page .chain-node { width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 11px; font-weight: 700; flex-shrink: 0; position: relative; z-index: 1; }
.pr-approval-page .chain-node.done { background: #3a7d44; }
.pr-approval-page .chain-node.rejected { background: #E30613; }
.pr-approval-page .chain-node.active { background: #b7791f; box-shadow: 0 0 0 3px #fff, 0 0 0 5px #b7791f; }
.pr-approval-page .chain-node.future { background: #d8d8d8; color: #888; }
.pr-approval-page .chain-line { width: 2px; flex: 1 1 auto; background: #e0e0e0; min-height: 12px; margin-top: 4px; }
.pr-approval-page .chain-step-content { padding-bottom: 16px; flex: 1; min-width: 0; }
.pr-approval-page .chain-step-content.is-last { padding-bottom: 0; }
.pr-approval-page .chain-level-users { display: flex; flex-direction: column; }
.pr-approval-page .chain-user-row { padding: 6px 0; }
.pr-approval-page .chain-user-row + .chain-user-row { border-top: 1px solid #f0f2f5; }
.pr-approval-page .chain-user-head { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; line-height: 1.4; }
.pr-approval-page .chain-name { font-size: 12px; font-weight: 700; color: #333; word-break: break-word; }
.pr-approval-page .chain-name.chain-name-muted { color: #aaa; }
.pr-approval-page .chain-you-badge { display: inline-flex; align-items: center; font-size: 10px; line-height: 1.2; background: #fffbeb; color: #b7791f; border: 1px solid #f6e05e; border-radius: 10px; padding: 2px 8px; font-weight: 600; white-space: nowrap; flex-shrink: 0; }
.pr-approval-page .chain-status { font-size: 11px; color: #888; margin-top: 2px; line-height: 1.4; text-align: left; }
.pr-approval-modal .modal-footer { background: #f7f9fc; }
.pr-approval-modal .modal-header { background: #E30613; }
.pr-approval-modal .modal-title { font-size: 16px; font-weight: 700; }
.pr-approval-modal #pr-approval-confirm-btn.approve-mode { background: #3a7d44; border-color: #3a7d44; color: #fff; }
.pr-approval-modal #pr-approval-confirm-btn.approve-mode:hover { background: #2d6234; }
.pr-approval-modal #pr-approval-confirm-btn.reject-mode { background: #E30613; border-color: #E30613; color: #fff; }
.pr-approval-modal #pr-approval-confirm-btn.reject-mode:hover { background: #BC000B; }