﻿
@import url("variables.css");
@import url("sidemenu.css");
@import url("input.css");
@import url("status.css");
@import url("all-sidebar.css");
@import url("all-skeleton.css");

*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0
}

html {
scroll-behavior: smooth
}

body {
font-family: var(--font-ui);
font-size: var(--t-base);
color: var(--n-800);
background: var(--page);
line-height: 1.5;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
overflow-y: auto;
overflow-x: hidden;
}

a {
color: inherit;
text-decoration: none
}

button {
font-family: var(--font-ui);
cursor: pointer
}
[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
cursor: pointer;
text-transform: capitalize; 
}

input, select, textarea {
font-family: var(--font-ui)
}
ul {
list-style: none;
padding:0;
margin:0
}
.font-mono {
font-family: var(--font-mono) !important;
}

.text-success {
color: var(--g-500) !important
}
.text-danger {
color: var(--red-500) !important
}
.text-secondary {
color: var(--n-900) !important
}
.text-warning {
color: var(--amber-500) !important
}
.text-info {
color: var(--v-500) !important
}
.text-light {
color: var(--n-0) !important
}
.fw-300 {
font-weight: var(--fw-l) !important
}
.fw-400 {
font-weight: var(--fw-n) !important
}
.fw-500 {
font-weight: var(--fw-md) !important
}
.fw-600 {
font-weight: var(--fw-semi) !important
}
.fw-700 {
font-weight: var(--fw-bold) !important
}

.modal-header {
    padding: 10px 20px;
    border-bottom: 1px solid var(--n-100);
    background: var(--n-25);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

/* ═══════════════════════════════════════════════════════════════
BUTTONS — 2026 style
Key: inset shadow for depth, sharp hover with shadow lift
═══════════════════════════════════════════════════════════════ */
.btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 6px;
font-family: var(--font-ui);
font-size: var(--t-14);
font-weight: 500;
padding: 7px 14px;
border-radius: var(--r-6);
border: 1px solid transparent;
cursor: pointer;
transition: all .15s var(--ease-quart);
line-height: 1;
white-space: nowrap;
user-select: none;
}

.btn svg {
width: 14px;
height: 14px;
flex-shrink: 0;
fill: none;
stroke: currentColor;
stroke-width: 2;
}

.btn-secondary {
background: var(--n-0);
color: var(--n-700);
border-color: var(--n-100);
box-shadow: var(--sh-sm),var(--sh-shine);
}

.btn-secondary:hover {
background: var(--n-75);
border-color: var(--n-200);
color: var(--n-900);
transform: translateY(-1px);
}

.btn-ghost {
background: transparent;
color: var(--n-600);
border-color: transparent;
}

.btn-ghost:hover {
background: var(--n-75);
color: var(--n-900);
}

.btn-danger {
background: var(--red-500);
color: #fff;
border-color: #b91c1c;
box-shadow: 0 4px 12px rgba(220,38,38,.25),var(--sh-shine);
}

.btn-danger:hover {
background: #b91c1c;
color: #fff;
}

.btn-amber {
background: var(--amber-500);
color: #fff;
border-color: #b45309;
box-shadow: 0 4px 12px rgba(217,119,6,.3),var(--sh-shine);
}
.btn-sm svg {
width: 12px;
height: 12px;
}

.btn-icon {
width: 30px;
height: 30px;
padding: 0;
justify-content: center;
}

.btn-icon.sm {
width: 26px;
height: 26px;
}
.btn svg{
width:12px;
height:12px
}
/* ── Sizes ── */
.btn-2xs {
font-size: 11px;
padding: 3px 9px;
border-radius: var(--r-4);
gap: 4px
}

.btn-xs {
font-size: var(--t-xs);
padding: 4px 10px;
border-radius: var(--r-4);
gap: 4px
}

.btn-sm {
font-size: var(--t-sm);
padding: 5px 12px;
border-radius: var(--r-6);
}
.btn-md {
font-size: var(--t-sm);
padding: 8px 12px;
}

.btn-lg {
font-size: var(--t-base);
padding: 10px 14px;
}

.btn-xl {
font-size: var(--t-lg);
padding: 12px 16px;
}

.btn svg {
width: 14px;
height: 14px;
flex-shrink: 0;
fill: none;
stroke: currentColor;
stroke-width: 2;
}

.btn-sm svg {
width: 12px;
height: 12px;
}
.btn-md svg {
width: 14px;
height: 14px;
}
.btn-md svg.export {
width: 12px;
height: 12px;
}
.btn-md svg.search {
width: 12px;
height: 12px;
}

/* ── Variants ── */
/* Primary — green, inset shine */
.btn-primary {
background: var(--g-500);
color: var(--n-0);
border-color: var(--g-600);
box-shadow: var(--sh-green), var(--sh-shine);
}

.btn-primary:hover {
background: var(--g-600);
color: var(--n-0);
box-shadow: 0 6px 20px rgba(43, 162, 76, .38), var(--sh-shine);
transform: translateY(-1px);
}

.btn-primary:active {
background: var(--g-600);
color: var(--n-0);
}

.btn-check:focus + .btn-primary, .btn-primary:focus {
background: var(--g-500);
color: var(--n-0);
border-color: var(--g-600);
box-shadow: var(--sh-green), var(--sh-shine);
}
.btn-primary-outline {
background: var(--surface);
color: var(--n-700);
border-color: var(--n-150);
box-shadow: 0 6px 20px rgba(0, 0, 0, .08), var(--sh-shine);
}

.btn-primary-outline:hover {
background: var(--surface);
color: var(--n-700);
border-color: var(--n-150);
box-shadow: 0 6px 20px rgba(0, 0, 0, .2), var(--sh-shine);
transform: translateY(-1px);
}
.btn-primary-outline:active {
background: var(--surface);
color: var(--n-700);
border-color: var(--n-150);
box-shadow: 0 6px 20px rgba(0, 0, 0, .2), var(--sh-shine);
}

.btn-primary-outline:focus, .btn-primary:focus {
outline: 0;
}

/* Secondary */
.btn-secondary {
background: var(--surface);
color: var(--n-700);
border-color: var(--n-150);
box-shadow: var(--sh-xs), inset 0 1px 0 rgba(255,255,255,.9);
}

.btn-secondary:hover {
color: var(--n-700);
background: var(--n-50);
border-color: var(--n-200);
box-shadow: var(--sh-sm), inset 0 1px 0 rgba(255,255,255,.9);
}

.btn-check:active + .btn-secondary, .btn-check:checked + .btn-secondary, .btn-secondary.active, .btn-secondary:active, .show > .btn-secondary.dropdown-toggle {
color: var(--n-700);
background: var(--n-50);
border-color: var(--n-200);
box-shadow: var(--sh-sm), inset 0 1px 0 rgba(255,255,255,.9);
}

.btn-check:focus + .btn-secondary, .btn-secondary:focus {
color: var(--n-700);
background: var(--n-50);
border-color: var(--n-200);
box-shadow: var(--sh-sm), inset 0 1px 0 rgba(255,255,255,.9);
}

/* Ghost */
.btn-secondary-outline {
background: var(--surface);
color: var(--n-700);
border-color: var(--n-150);
box-shadow: var(--sh-xs), inset 0 1px 0 rgba(255,255,255,.9);
}
.btn-secondary:hover {
background: var(--n-50);
border-color: var(--n-200);
box-shadow: var(--sh-sm), inset 0 1px 0 rgba(255,255,255,.9);
}

.btn-ghost:hover {
background: var(--n-75);
color: var(--n-800)
}

/* Accent / Violet */
.btn-accent {
background: var(--v-500);
color: #fff;
border-color: var(--v-600);
box-shadow: var(--sh-xs), inset 0 1px 0 rgba(255,255,255,.15);
}

.btn-accent:hover {
background: var(--v-600);
box-shadow: var(--sh-violet), inset 0 1px 0 rgba(255,255,255,.12);
}

/* Accent outline */
.btn-accent-outline {
background: var(--v-50);
color: var(--v-600);
border-color: var(--v-200);
}

.btn-accent-outline:hover {
background: var(--v-100);
border-color: var(--v-300);
}

/* Danger */
.btn-danger {
background: var(--red-500);
color: #fff;
border-color: var(--red-600);
box-shadow: var(--sh-xs), inset 0 1px 0 rgba(255,255,255,.12);
}

.btn-danger:hover {
background: var(--red-600);
box-shadow: 0 3px 10px rgba(220,38,38,.25);
}

/* Danger outline */
.btn-danger-outline {
background: var(--red-50);
color: var(--red-500);
border-color: var(--red-100);
}

.btn-danger-outline:hover {
background: var(--red-100);
border-color: var(--red-100);
color: var(--red-500);
}

/* Success outline */
.btn-success-outline {
background: var(--g-50);
color: var(--g-700);
border-color: var(--g-200);
}

.btn-success-outline:hover {
background: var(--g-100);
border-color: var(--g-300);
}

/* Warning */
.btn-warning {
background: var(--amber-50);
color: var(--amber-600);
border-color: var(--amber-100);
}

.btn-warning:hover {
background: var(--amber-100);
color: var(--amber-600);
}

/* States */
.btn:disabled,
.btn-disabled {
opacity: .38;
cursor: not-allowed;
pointer-events: none;
}

.btn-loading {
cursor: wait;
pointer-events: none;
opacity: .75;
}

.btn-loading .btn-spinner {
width: 12px;
height: 12px;
border: 1.5px solid currentColor;
border-top-color: transparent;
border-radius: 50%;
animation: spin .65s linear infinite;
flex-shrink: 0;
}

@keyframes spin {
to {
transform: rotate(360deg)
}
}

/* Icon-only */
.btn-ico {
aspect-ratio: 1;
padding: 0 !important
}

.btn-ico.btn-2xs {
width: 22px
}

.btn-ico.btn-xs {
width: 24px 
}

.btn-ico.btn-sm {
width: 30px
}

.btn-ico.btn-md {
width: 34px
}

.btn-ico.btn-lg {
width: 40px
}

/* Split */
.btn-split {
display: inline-flex
}

.btn-split .btn {
border-radius: 0
}

.btn-split .btn:first-child {
border-radius: var(--r-6) 0 0 var(--r-6);
border-right: none
}

.btn-split .btn:last-child {
border-radius: 0 var(--r-6) var(--r-6) 0;
padding: 0 10px
}

.input-group .btn-primary {
background: var(--n-200);
color: #fff;
border-color: var(--n-200);
}

/*button:focus:not(:focus-visible) {
outline: 0;
box-shadow:none
}*/
/* ═══════════════════════════════════════════════════════════════
BADGES & TAGS
═══════════════════════════════════════════════════════════════ */
/* 2026 badges: solid background + fine border + no pill radius by default */
.badge {
display: inline-flex;
align-items: center;
gap: 4px;
font-size: var(--t-xs);
font-weight: var(--fw-md);
border-radius: var(--r-4);
padding: 2px 7px;
border: 1px solid transparent;
white-space: nowrap;
letter-spacing: .01em;
}

.badge-dot {
width: 5px;
height: 5px;
border-radius: 50%;
flex-shrink: 0
}

.badge-pill {
border-radius: var(--r-full)
}

/* Soft variants */
.badge-green {
background: var(--g-50);
color: var(--g-700);
border-color: var(--g-200)
}

.badge-violet {
background: var(--v-50);
color: var(--v-700);
border-color: var(--v-200)
}

.badge-red {
background: var(--red-50);
color: var(--red-600);
border-color: var(--red-100)
}

.badge-amber {
background: var(--amber-50);
color: var(--amber-600);
border-color: var(--amber-100)
}

.badge-teal {
background: var(--teal-50);
color: var(--teal-600);
border-color: #99f6e4
}

.badge-neutral {
background: var(--n-75);
color: var(--n-600);
border-color: var(--n-100)
}

/* Solid variants */
.badge-green-s {
background: var(--g-500);
color: #fff;
border-color: var(--g-600)
}

.badge-violet-s {
background: var(--v-500);
color: #fff;
border-color: var(--v-600)
}

.badge-red-s {
background: var(--red-500);
color: #fff;
border-color: var(--red-600)
}

.badge-neutral-s {
background: var(--n-700);
color: #fff;
border-color: var(--n-800)
}

.badge-amber-s {
background: var(--amber-500);
color: #fff;
border-color: var(--amber-600)
}

/* Removable tag */
.tag {
display: inline-flex;
align-items: center;
gap: 4px;
background: var(--n-75);
color: var(--n-700);
border: 1px solid var(--n-150);
border-radius: var(--r-4);
padding: 3px 8px;
font-size: var(--t-sm);
font-weight: var(--fw-md);
box-shadow: var(--sh-xs);
transition: all var(--dur-fast);
}

.tag:hover {
border-color: var(--n-200)
}

.tag-x {
background: none;
border: none;
cursor: pointer;
color: var(--n-300);
padding: 0;
line-height: 1;
font-size: 13px;
display: flex;
transition: color var(--dur-fast);
}

.tag-x:hover {
color: var(--red-400)
}

.tag-green {
background: var(--g-50);
color: var(--g-700);
border-color: var(--g-200)
}

.tag-violet {
background: var(--v-50);
color: var(--v-700);
border-color: var(--v-200)
}

/* ═══════════════════════════════════════════════════════════════
FORM
═══════════════════════════════════════════════════════════════ */

input:focus-visible{
outline: 0;
}




/* ═══════════════════════════════════════════════════════════════
TABLES
═══════════════════════════════════════════════════════════════ */
.table-wrap {
min-height: 400px;
overflow: visible;
}

.tbl-wrap {
border: 1px solid var(--border);
border-radius: var(--r-12);
overflow: hidden;
box-shadow: var(--sh-sm);
}

table {
width: 100%;
border-collapse: collapse;
font-size: var(--t-sm)
}

thead {
background: var(--n-25)
}

th {
padding: 8px 10px;
text-align: left;
font-size: var(--t-11);
font-weight: var(--fw-semi);
color: var(--n-400);
letter-spacing: var(--ls-wider);
text-transform: uppercase;
border-bottom: 1px solid var(--border);
white-space: nowrap;
}

th.sortable {
cursor: pointer
}

th.sortable:hover {
color: var(--n-700)
}

tr:last-child td {
border-bottom: none
}
.list-table tr:last-child td {
border-bottom: 1px solid var(--n-50);
}

td {
padding: 8px 10px;
color: var(--n-700);
font-size:var(--t-11);
font-weight:var(--fw-n);
border-bottom: 1px solid var(--n-50);
vertical-align: middle;
}
/*td span{
color: var(--n-400);
}*/

tbody tr {
transition: background var(--dur-instant)
}

tbody tr:hover td {
background: var(--n-25)
}

.td-mono {
font-size: var(--t-13);
color: var(--n-500)
}
.td-sub {
font-size: var(--t-11);
color: var(--n-400)
}

.td-strong {
font-weight: var(--fw-md);
color: var(--n-900)
}

.td-muted {
color: var(--n-400)
}

.accordion-btn {
width: 26px;
height: 26px;
display: inline-grid;
place-items: center;
border: 0;
border-radius: 0;
background: transparent;
cursor: pointer;
padding: 0;
margin-top: 0px;
}

.card-b .sub-trip {
display: none;
background: #f9f9f9;
font-weight: normal;
}

.card-b .sub-trip td {
padding: 8px 10px;
position: relative
}
/* Branch lines */
.sub-trip td:first-child::before {
content: "";
position: absolute;
left: 16px;
top: 0;
bottom: 0;
width: 2px;
background: #2ba24c;
}

.sub-trip td:first-child::after {
content: "";
position: absolute;
left: 16px;
top: 25px;
width: 28px;
height: 2px;
background: #2ba24c;
}

.card-b .sub-table td {
padding: 14px 14px;
position: relative
}
/* Branch lines */
.card-b .sub-table td:first-child::before {
content: "";
position: absolute;
left: 16px;
top: 0;
bottom: 0;
width: 2px;
background: #2ba24c;
}

.card-b .sub-table td:first-child::after {
content: "";
position: absolute;
left: 16px;
top: 32px;
width: 28px;
height: 2px;
background: #2ba24c;
}
.card-b .sub-table td {
background: var(--n-25);
}

/* Inline editable cell */
.cell-edit {
cursor: pointer;
border-radius: var(--r-4);
padding: 2px 4px;
margin: -2px -4px;
position: relative;
transition: background var(--dur-fast);
}

.cell-edit:hover {
background: var(--g-50);
outline: 1px dashed var(--g-300);
}

.cell-edit:hover::after {
content: '↗';
position: absolute;
right: -16px;
top: 50%;
transform: translateY(-50%);
font-size: 9px;
color: var(--g-500);
}

.cell-inp {
width: 100%;
font-family: var(--font-ui);
font-size: var(--t-sm);
color: var(--n-800);
background: var(--surface);
border: 1.5px solid var(--g-400);
border-radius: var(--r-4);
padding: 3px 6px;
outline: none;
box-shadow: var(--focus-ring);
}

/* Tbl toolbar */
.tbl-tool {
display: flex;
align-items: center;
gap: 8px;
padding: 10px 14px;
border-bottom: 1px solid var(--border);
background: var(--surface);
}

.tbl-tool-title {
font-size: var(--t-md);
font-weight: var(--fw-semi);
color: var(--n-800);
flex: 1
}

table th .form-select.th-select {
background-color: #fafaf9;
border: 0;
border-radius: 10px;
padding: 0px 24px 0px 0;
font-size: 13px;
color: #111827;
box-shadow: 0 1px 0 rgba(0, 0, 0, .02);
background-position: right .3rem center;
display: inline-block;
width: auto;
}
table th .form-select.th-select input {
width: 100%;
height: 36px;
padding: 0;
padding-right: 0;
border: 0;
border-radius: 0;
font-size: 13px;
background: #f8fafc;
}
table th .form-select.th-select .clear {
position: absolute;
right: -24px;
top: 6px;
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
color: #F44336;
cursor: pointer;
background: #f8fafc;
}

table th .form-select.th-select input {
width: 100%;
height: 36px;
padding: 0;
padding-right: 0;
border: 0;
border-radius: 0;
font-size: 13px;
background: #fafaf9;
}

table th .search-select.open .options {
display: block;
right: 0;
left: auto;
}
table th .search-select .option .option-label {
text-transform: initial;
}
.recent-table {
max-height: 500px;
overflow-y: auto;
scrollbar-width: thin;
scrollbar-color: var(--n-150) transparent;
}
table td .progress {
height: .4rem;
}

.pagination {
gap: 4px;
}
.page-link {
display: flex;
align-items: center;
justify-content: center;
min-width: 30px;
height: 30px;
font-size: var(--t-sm);
font-family: var(--font-ui);
color: var(--n-600);
background: var(--surface);
border: 1px solid var(--border);
border-radius: var(--r-6);
cursor: pointer;
box-shadow: var(--sh-xs);
transition: all var(--dur-fast) var(--ease-out-quart);
}
.page-item.active .page-link {
z-index: 3;
color: var(--n-0);
background-color: var(--g-500);
border-color: var(--g-500);
}

.actions{
display: flex;
gap: 10px;
align-items:center
}
.new-datepicker {
display: flex;
align-items: center;
width: 100%;
font-family: var(--font-ui);
color: var(--n-800);
font-weight: var(--fw-md);
background: var(--n-75);
border: 1px solid var(--n-100);
border-radius: var(--r-6);
outline: none;
line-height: 1.5;
box-shadow: var(--sh-inset);
transition: border-color var(--dur-fast) var(--ease-out-quart), background var(--dur-fast) var(--ease-out-quart), box-shadow var(--dur-fast) var(--ease-out-quart);
}
.new-datepicker:hover{
background: var(--n-50);
border-color: var(--n-200);
}
.new-datepicker .form-control {
background: transparent;
border: 0;
font-size: 12px;
height: 31px;
width: 100%;
box-shadow: none
}


.new-datepicker .form-label {
font-size: 13px;
color: #334155;
font-weight: 400;
display: block;
margin-bottom: 0;
padding: 0 0px 0 7px;
}
.new-datepicker span {
display: block;
font-size: 16px;
color: #c1c1c1;
font-weight: 400;
}
/* ═══════════════════════════════════════════════════════════════
LAYOUT
═══════════════════════════════════════════════════════════════ */
.theme-2 .card.wrap {
background: transparent !important;
border: 0 !important;
box-shadow: none
}

.layout {
display: flex;
min-height: 100vh;
}

.layout-body {
flex: 1;
min-width: 0; /* prevents overflow issues */
}

/*.layout-body {
width: calc(100% - var(--sb-w));
}

.side-menu-bar.collapsed ~ .layout-body {
width: calc(100% - var(--sb-w-col));
}*/

.topbar {
background: var(--surface);
border: 1px solid var(--border);
border-radius: var(--r-12);
padding: 12px 12px;
box-shadow: var(--sh-xs), var(--sh-inset);
position: relative;
}
.topbar h1 {
font-size: var(--t-14);
font-weight: var(--fw-semi);
color: var(--n-900);
letter-spacing: -0.025em;
line-height: 1.1;
margin: 0
}
.topbar h1 span {
font-size: var(--t-12);
font-weight: var(--fw-md);
color: var(--n-400);
margin-left: 4px
}
.topbar .search-select .clear {
right: 2px;
top: 0px;
width: 15px;
height: 15px;
font-size: 10px;

}

.summaryTag {
margin: 10px 0 0 0;
}
.summaryTag ul {
margin: 0;
padding: 0;
list-style-type: none;
display: flex;
align-content: center;
flex-flow: row;
}
.summaryTag ul li {
padding: 4px 14px 4px 0;
box-shadow: 0 0.375rem 0.75rem rgba(140, 152, 164, .075);
background: #fff;
border-radius: 4px;
font-size: 13px;
font-weight: 500;
margin-right: 10px;
}


.kpi-box-sc {
margin: 0
}
.kpi-box-sc .kpi-box {
background: var(--bg-white);
border: 1px solid var(--border);
border-radius: var(--r-12);
padding: 16px 18px;
box-shadow: var(--sh-sm), inset 0 1px 0 rgba(255, 255, 255, .8);
position: relative;
overflow: hidden;
transition: all var(--dur-base) var(--ease-out-quart);
}
.kpi-box-sc .kpi-box:hover {
box-shadow: var(--sh-md), inset 0 1px 0 rgba(255, 255, 255, .8);
transform: translateY(-1px);
}
.kpi-box-sc .kpi-box::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 2px;
background: var(--g-500);
transform: scaleX(0);
transform-origin: left;
transition: transform var(--dur-slow) var(--ease-out-expo);
}
.kpi-box-sc .kpi-box:hover::after {
transform: scaleX(1);
}

.stat-accent {
position: absolute;
top: 0;
right: 0;
width: 64px;
height: 64px;
border-radius: 0 var(--r-12) 0 64px;
opacity: .08;
background: var(--n-400);
}
.stat-accent.ok {
background: var(--g-500) !important;
}
.stat-accent.warn {
background: var(--amber-500);
}
.stat-accent.bad{
background: var(--red-500) !important
}
.stat-accent.info {
background: var(--v-500) !important;
}

.kpi-box-sc .kpi-box .sub {
font-size: var(--t-12);
color: var(--n-400);
margin-top: 6px;
font-weight: var(--fw-n);
}

.kpi-box-sc .kpi-box .label {
font-size: var(--t-11);
font-weight: var(--fw-semi);
text-transform: uppercase;
letter-spacing: .05em;
color: var(--n-400);
margin-bottom: 8px;
}
.kpi-box-sc .kpi-box .value {
font-family: var(--font-mono);
font-size: 24px;
font-weight: var(--fw-md);
color: var(--n-900);
line-height: 1;
}
.kpi-box-sc .kpi-box .stat-meta {
font-size: var(--t-xs);
color: var(--n-400);
margin-top: 8px;
}
.kpi-box-sc .kpi-box .stat-up {
color: var(--g-600);
font-weight: var(--fw-md);
}
.kpi-box-sc .kpi-box  .stat-down {
color: var(--red-500);
font-weight: var(--fw-md);
}

.summary-sec {
background: var(--n-0);
border: 1px solid var(--n-100);
border-radius: var(--r-12);
box-shadow: var(--sh-sm), inset 0 1px 0 rgba(255, 255, 255, .8);
position: relative;
/*overflow: hidden;*/
}
.summary-sec .card-summary .card-b {
padding: 10px;
overflow: hidden;
}
.summary-sec .card-h {
padding: 8px 10px;
border-bottom: 1px solid #ebedf1;
display: flex;
align-items: center;
justify-content: space-between;
}
.summary-sec .card-h .tabs {
border-bottom: 1px solid var(--border);
display: flex;
gap: 0;
}
.summary-sec .card-h .tab {
padding: 9px 16px;
font-size: var(--t-sm);
font-weight: var(--fw-md);
color: var(--n-400);
cursor: pointer;
border-bottom: 2px solid transparent;
margin-bottom: -1px;
transition: all var(--dur-fast) var(--ease-out-quart);
user-select: none;
display: flex;
align-items: center;
gap: 6px;
}
.summary-sec .card-h .tab.active {
color: var(--g-700);
border-bottom-color: var(--g-500);
font-weight: var(--fw-semi);
}


.summary-sec .card-h .inp-sm {
padding: 4px 10px;
font-size: var(--t-sm);
line-height: 1;
}
.summary-sec .card-h h3 {
font-size: var(--t-14);
font-weight: var(--fw-semi);
color: var(--n-900);
margin-bottom:0
}
.summary-sec .card-h h3 span {
font-size: var(--t-12);
font-weight: var(--fw-n);
color: var(--n-400);

}
.summary-sec .card-h h4 {
font-size: var(--t-15);
font-weight: var(--fw-semi);
color: var(--n-800);
margin-bottom: 0
}
.summary-sec .card-h h6 {
font-size: var(--t-14);
font-weight: var(--fw-n);
color: var(--n-500);
margin-bottom: 0
}
.summary-sec .card-f {
padding: 8px 10px;
color: var(--n-700);
border-top: 1px solid var(--n-50);
}

.no-record-found {
padding: 70px 0 100px 0;
}
.no-record-found svg {
fill: #aaa;
width: 80px;
height: 80px;
}
.no-record-found h3 {
margin-top: 25px;
font-weight: 600;
color: #aaa;
font-size: 1.5rem;
}
.prog-fill {
height: 100%;
border-radius: var(--r-full);
transition: width .8s var(--ease-out-expo);
position: relative;
}
.prog-wrap {
background: var(--n-100);
border-radius: var(--r-full);
overflow: hidden;
box-shadow: var(--sh-inset);
}
.ann {
font-family: var(--font-mono);
font-size: 10px;
color: var(--n-300);
margin-top: 6px;
line-height: 1.5;
}
.prog-h4 {
height: 4px;
}
.prog-h6 {
height: 6px;
}
.prog-h8 {
height: 8px;
}
.scrool_table {
max-height: 70vh;
overflow-y: auto;
position: relative;
}
.scrool_table table tr td.sticky-left {
position: sticky;
left: 0;
z-index: 3;
background: #fff;
border-right: 1px solid #ebedf1;
}
.scrool_table table tr th.sticky-left {
position: sticky;
left: 0;
z-index: 6;
top: 0;
background: #F8FAFC;
border-right: 1px solid #ebedf1;
}
.note-sec {
margin: 0;
}
.note-sec ul {
margin: 0;
padding: 0;
list-style-type: none;
display: flex;
align-items: center;
}
.note-sec ul li {
margin: 0 6px;
}

.grid-container {
display: grid;
grid-template-columns: 280px 1fr 420px;
gap: 10px;
}
.grid-container.document-height {
height: 88vh;
}
.grid-container .filter-sec .form-control {
background-color: #fff;
border: 1px solid #ebedf1;
border-radius: 6px;
padding: 8px 10px;
font-size: 13px;
color: #111827;
box-shadow: 0 1px 0 rgba(0, 0, 0, .02);
}
.grid-container .filter-sec  .search-select .options {
max-height: 60px;
width: 254px;
}
.summary-sec .card-h h6.text span {
color: #2ba24c;
font-weight: 800;
}

.download-drawer {
position: fixed;
bottom: 0;
right: 16px;
width: 420px;
background: #fff;
border: 1px solid #ebedf1;
border-radius: 14px 14px 0 0;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
overflow: hidden;
transition: all 0.3s ease;
z-index: 1050;
padding-bottom: 20px;
}
.download-drawer-header {
background: #F8FAFC;
padding: 14px 10px;
font-weight: 600;
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: center;
}
.download-drawer-header h4 {
margin: 0;
font-size: 14px;
letter-spacing: .4px;
text-transform: uppercase;
color: #334155;
font-weight: 600;
}
.download-drawer-header h4 span {
font-size: 12px;
font-weight: 400;
text-transform: capitalize;
position: relative;
}
.download-drawer-header h4 span .count {
color: #2ba24c;
font-weight: 600;
}
.download-drawer.collapsed .upload-arrow {
transform: rotate(-90deg);
transition: .4s;
}
.download-drawer .upload-arrow i {
font-size: 14px;
}
.download-drawer-body {
padding: 0 14px 14px 14px;
max-height: 300px;
overflow-y: auto;
transition: max-height .3s ease, padding .3s ease;
}
.download-drawer.collapsed .download-drawer-body {
max-height: 0;
padding: 0 1rem;
overflow: hidden;
}
.download-drawer-body .drawer-detail {
margin: 0;
border-bottom: 1px dashed #ebedf1;
padding: 14px 0;
}
.download-drawer-body .drawer-detail:last-child {
border-bottom: 0;
}
.download-drawer-body  .drawer-detail h5 {
margin: 0 0 4px 0;
font-size: 14px;
letter-spacing: .4px;
color: #0f172a;
font-weight: 600;
}
.download-drawer-body .drawer-detail .title-sec {
display: flex;
align-items: center;
}
.download-drawer-body .drawer-detail .title-sec .subtitle1-title {
width: 68%;
color: #64748B;
font-size: 12px;
padding-right: 14px;
}
.download-drawer-body .time-sec {
width: 20%;
}
.download-drawer-body .time-sec h6 {
font-size: 12px;
margin: 0;
}
.download-drawer-body  .time-sec h6 span {
display: block;
color: #64748B;
font-size: 12px;
margin-top: 2px;
font-weight: 400;
}
.download-drawer-body .drawer-actions {
width: 26%;
text-align: right;
}

.details-loop .field {
display: grid;
grid-template-columns: 110px 1fr !important;
gap: 6px 12px;
font-size: 14px;
margin-bottom: 8px;
align-items: center;
}
.details-loop .field .k {
color: #64748B;
}

.kpi-box-sc .kpi-box .doc-name {
font-family: var(--font-mono)
}
.card-b-h {
max-height: 76vh;
overflow-y: auto;
overflow-x: hidden;
}
.check-sec {
position: absolute;
top: 14px;
left: 18px;
width: 60px;
background: #fff;
border: 1px solid #fff;
z-index: 9;
box-shadow: 0px 4px 11px 3px rgba(0, 0, 0, 0.2);
padding: 4px 10px;
border-radius: 6px;
}
.check-sec .form-check {
display: flex;
align-items: center;
gap: 5px;
}
.check-sec .form-check .form-check-input {
opacity: 0;
z-index: 4;
}
.check-sec .form-check .form-check-label {
margin-top: 1px;
margin-bottom: 0;
position: absolute;
left: 50%;
transform: translateX(-50%);
width: 100%;
text-align: center;
z-index: 2;
color: #0F172A;
}


/*...................................*/
.linear-route-content .xd-info-bar {
display: flex;
align-items: flex-start;
gap: 8px;
background: rgba(43, 162, 76, .06);
border: 1px solid rgba(43, 162, 76, .2);
border-radius: 7px;
padding: 10px 12px;
font-size: 12px;
color: #1e2022;
margin-bottom: 14px;
line-height: 1.5;
}
.linear-route-content .xd-info-bar i {
color: #2ba24c
}
.xd-node-card.cross-dock {
background: rgb(255, 235, 189, .4);
border: 1px solid rgb(255, 235, 189, .8);
border-radius: 8px;
margin-bottom: 14px;
overflow: hidden;
}

.xd-node-header {
padding: 10px 14px;
display: flex;
align-items: center;
gap: 10px;
}

.xd-node-badge {
width: 32px;
height: 32px;
border-radius: 7px;
background: rgb(255, 235, 189, .6);
border: 1px solid rgb(255, 235, 189, 1);
display: flex;
align-items: center;
justify-content: center;
color: #df9e06;
font-size: 15px;
flex-shrink: 0;
}

/* ─── DIAGRAM GRID ────────────────────────────────────── */
.xd-diagram {
display: grid;
grid-template-columns: 1fr 14px 1fr;
gap: 0;
align-items: start;
min-height: 200px;
}

.xd-col {
display: flex;
flex-direction: column;
gap: 8px;
}

/* Column headers */
.xd-col-header {
display: flex;
align-items: center;
gap: 6px;
font-size: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .9px;
padding: 6px 10px;
border-radius: 6px;
margin-bottom: 4px;
}

.xd-col-header.inbound {
background: rgba(26,158,63,.07);
color: #15692e;
border: 1px solid rgba(26,158,63,.18);
}

.xd-col-header.outbound {
background: rgba(239,231,255,.5);
color: #5236a0;
border: 1px solid rgba(99,60,200,.18);
}

.xd-col-count {
margin-left: auto;
font-size: 10px;
background: rgba(43, 162, 76, .2);
color: #2ba24c;
border-radius: 8px;
padding: 1px 6px;
}

.xd-col-count.outbound {
background: rgba(239, 231, 255, .8);
color: #7b39f5;
}

/* ─── XD CENTER HUB ───────────────────────────────────── */
.xd-center-col {
display: flex;
flex-direction: column;
align-items: center;
padding-top: 32px;
position: relative;
}

.xd-hub-node {
width: 48px;
height: 48px;
border-radius: 50%;
background: linear-gradient(135deg, rgba(99,60,200,.15), rgba(99,60,200,.06));
border: 2px solid rgba(99,60,200,.4);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: #5236a0;
font-size: 16px;
box-shadow: 0 0 0 4px rgba(99,60,200,.08);
z-index: 2;
position: relative;
}

.summary-sec .card-summary .card-b .xd-hub-node i {
margin-right: 0
}

.xd-hub-label {
font-size: 6px;
font-weight: 700;
letter-spacing: .5px;
color: #5236a0;
margin-top: 1px;
}

.xd-hub-sub {
display: none;
}

/* Connector lines from center */
.xd-center-lines-top,
.xd-center-lines-bottom {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
}

/* ─── SOURCE CARDS ────────────────────────────────────── */
.xd-source-card {
border: 1px solid #ebedf1;
border-radius: 7px;
background: #ffffff;
overflow: hidden;
position: relative;
}

.xd-source-card::after {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 3px;
background: #2ba24c;
border-radius: 3px 0 0 3px;
}

.xd-sc-header {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 10px;
background: rgba(26,111,219,.04);
border-bottom: 1px solid #ebedf1;
}

.xd-sc-badge {
width: 22px;
height: 22px;
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
font-size: 9px;
font-weight: 700;
flex-shrink: 0;
}

.xd-sc-badge.src {
background: rgba(26,111,219,.12);
color: #1558a8;
border: 1px solid rgba(26,111,219,.25);
}

.xd-inbound-col .xd-sc-badge.leg {
background: rgba(26,158,63,.12);
color: #15692e;
border: 1px solid rgba(26,158,63,.25);
}

.xd-outbound-col .xd-sc-badge.leg {
background: rgba(99, 60, 200, .12);
border: 1px solid rgba(123, 57, 245, .25);
color: #5236a0;
}

.xd-sc-title {
font-size: 12px;
font-weight: 600;
color: #334155;
}

.xd-sc-body {
padding: 8px 10px;
}

/* Arrow connectors between source cards and hub */
.xd-inbound-col .xd-source-card {
margin-right: 0;
}

/* ─── OUTBOUND LEG CARDS ──────────────────────────────── */
.xd-leg-card {
border: 1px solid #ebedf1;
border-radius: 7px;
background: #ffffff;
overflow: hidden;
position: relative;
margin-bottom: 20px;
}

.xd-inbound-col .xd-leg-card::after {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 3px;
background: #2ba24c;
border-radius: 3px 0 0 3px;
}

.xd-outbound-col .xd-leg-card::after {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 3px;
background: #5236a0;
border-radius: 3px 0 0 3px;
}

.xd-outbound-col .xd-leg-header {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 10px;
background: rgba(239,231,255,.5);
border: 1px solid rgba(99,60,200,.18);
border-bottom: 0
}

.xd-inbound-col .xd-leg-header {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 10px;
background: rgba(26, 158, 63, .07);
border: 1px solid rgba(26, 158, 63, .18);
border-bottom: 0
}

/* ─── PER-LEG CAPACITY BAR ────────────────────────────── */
.xd-inbound-col .xd-leg-capacity {
/*    display: flex;
align-items: flex-end;*/
gap: 6px;
padding: 7px 10px 8px;
background: rgba(26,158,63,.025);
border-bottom: 1px solid #ebedf1;
flex-wrap: wrap;
}

.xd-outbound-col .xd-leg-capacity {
/*    display: flex;
align-items: flex-end;*/
gap: 6px;
padding: 7px 10px 8px;
background: rgba(239,231,255,.2);
border-bottom: 1px solid rgba(99,60,200,.18);
flex-wrap: wrap;
}

.xd-lc-field {
display: flex;
flex-direction: column;
gap: 3px;
}

.xd-lc-label {
font-size: 12px;
font-weight: 600;
/* text-transform: uppercase; */
letter-spacing: 0;
color: #8c98a4;
margin-bottom: 0;
margin-top: 6px;
}


.xd-lc-input {
width: 88px;
}

.xd-lc-input input {
padding: 4px 6px !important;
font-size: 11px !important;
}

.xd-lc-sep {
width: 1px;
height: 30px;
/*    background: #ebedf1;*/
flex-shrink: 0;
margin: 0 2px;
}

/* Leg stops */
.xd-leg-stops {
padding: 8px 10px;
display: flex;
flex-direction: column;
padding-bottom: 80px;
max-height: 294px;
overflow: auto;
}

.xd-stop-row {
display: flex;
align-items: center;
gap: 8px;
padding: 4px 0;
}

.xd-stop-row.origin-leg {
opacity: .7;
}

.xd-stop-dot {
width: 10px;
height: 10px;
border-radius: 50%;
flex-shrink: 0;
}

.xd-dot-origin {
background: #2ba24c;
border: 2px solid rgb(106 221 139);
box-shadow: 0 0 0 2px rgba(99, 60, 200, .1);
}

.xd-dot-stop {
background: #cbcbcb;
border: 2px solid rgba(255,255,255,.3);
}

.xd-dot-dest {
background: #e0430e;
border: 2px solid rgba(224,67,14,.3);
}

.xd-stop-connector {
width: 1px;
height: 10px;
background: #ebedf1;
margin-left: 4px;
}

.xd-stop-info {
display: flex;
flex-direction: column;
gap: 1px;
}

.xd-stop-label {
font-size: 11px;
font-weight: 500;
color: #334155;
}

.xd-stop-sublabel {
font-size: 10px;
color: #8c98a4;
}

.xd-stop-meta {
margin-left: auto;
display: flex;
gap: 4px;
align-items: center;
}

.xd-inline-select {
font-size: 11px !important;
padding: 4px 6px !important;
width: 100% !important;
}

/* Add stop / leg buttons */
.xd-add-leg-stop-btn {
width: 100%;
padding: 5px 8px;
background: #f8fafc;
border: none;
border-top: 1px dashed #ebedf1;
color: #8c98a4;
font-size: 11px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
gap: 5px;
transition: all .12s;
}

.xd-add-leg-stop-btn:hover {
background: #eef5ff;
color: #2ba24c;
}

.xd-add-leg-stop-btn.outbound {
width: 100%;
padding: 5px 8px;
background: #f8fafc;
border: none;
border-top: 1px dashed #ebedf1;
color: #8c98a4;
font-size: 11px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
gap: 5px;
transition: all .12s;
}

.xd-add-leg-stop-btn.outbound:hover {
background: #f7f3ff;
color: #7b39f5;
}

.xd-add-btn {
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
padding: 7px 12px;
border-radius: 6px;
border: 1.5px dashed #2ba24c;
background: rgba(26,158,63,.04);
color: #2ba24c;
font-size: 12px;
font-weight: 500;
cursor: pointer;
transition: all .12s;
width: 100%;
}

.summary-sec .card-summary .card-b .xd-add-btn i {
color: #2ba24c;
margin-right: 0
}

.xd-add-btn:hover {
background: rgba(26,158,63,.1);
}

.xd-add-btn.outbound {
border-color: #7b39f5;
background: rgba(239,231,255,.5);
color: #7b39f5;
}

.summary-sec .card-summary .card-b .xd-add-btn.outbound i {
color: #7b39f5;
margin-right: 0;
}

.xd-add-btn.outbound:hover {
background: rgba(239,231,255,.7);
}

/* ─── XD SUMMARY BAR ──────────────────────────────────── */
.xd-summary-bar {
/*    display: flex;
align-items: center;*/
background: #f9f9f9;
border: 1px solid #ebedf1;
border-radius: 7px;
padding: 10px 16px;
margin-top: 14px;
gap: 0;
}

.xd-sum-item {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
gap: 2px;
}

.xd-sum-label {
font-size: 10px;
color: #8c98a4;
text-transform: uppercase;
letter-spacing: .6px;
font-weight: 600;
}

.xd-sum-val {
font-size: 16px;
font-weight: 500;
color: #334155;
}

.xd-sum-sep {
width: 1px;
height: 32px;
background: #ebedf1;
flex-shrink: 0;
}

/* XD type tag */
.type-tag.xd {
background: rgba(99,60,200,.07);
border-color: rgba(99,60,200,.22);
color: #5236a0;
}

/* XD expand button in table */
.xd-expand-btn {
width: 20px;
height: 20px;
border-radius: 4px;
border: 1px solid rgba(99,60,200,.25);
background: rgba(99,60,200,.07);
color: #5236a0;
display: inline-flex;
align-items: center;
justify-content: center;
cursor: pointer;
font-size: 11px;
transition: all .12s;
vertical-align: middle;
}

.xd-expand-btn:hover {
background: rgba(99,60,200,.15);
}

/* ─── XD PREVIEW ROW ──────────────────────────────────── */
.xdp-wrapper {
padding: 12px 20px 14px;
}

.xdp-lane-label {
font-size: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .9px;
padding: 3px 0 6px;
display: flex;
align-items: center;
gap: 5px;
}

.xdp-lane-label.inbound {
color: #1558a8;
}

.xdp-lane-label.outbound {
color: #15692e;
margin-top: 6px;
}

.xdp-swimlane {
display: grid;
grid-template-columns: 1fr 160px 1fr;
gap: 0;
align-items: center;
min-height: 120px;
}

/* Source / leg columns */
.xdp-col {
display: flex;
flex-direction: column;
gap: 6px;
}

/* Cards */
.xdp-card {
border-radius: 6px;
border: 1px solid #ebedf1;
background: #fff;
overflow: hidden;
}

.xdp-card.xdp-src {
border-left: 3px solid #2ba24c;
}

.xdp-card.xdp-leg {
border-left: 3px solid #2ba24c;
}

.xdp-card-header {
display: flex;
align-items: center;
gap: 6px;
padding: 5px 8px;
background: #f0f2f5;
border-bottom: 1px solid #ebedf1;
}

.xdp-badge {
font-size: 9px;
font-weight: 700;
padding: 1px 5px;
border-radius: 3px;
flex-shrink: 0;
}

.xdp-badge-src {
background: rgba(26,111,219,.1);
color: #1558a8;
}

.xdp-badge-leg {
background: rgba(26,158,63,.1);
color: #15692e;
}

.xdp-card-title {
font-size: 11px;
font-weight: 600;
color: #334155;
flex: 1;
}

.xdp-veh-tag {
font-size: 10px;
color: #8c98a4;
display: flex;
align-items: center;
gap: 3px;
}

.xdp-card-meta {
display: flex;
flex-wrap: wrap;
gap: 8px;
padding: 5px 8px;
font-size: 10px;
color: #8c98a4;
}

.xdp-card-meta span {
display: flex;
align-items: center;
gap: 3px;
}

/* Leg stops */
.xdp-leg-stops {
padding: 5px 8px;
}

.xdp-leg-stop {
display: flex;
align-items: center;
gap: 7px;
padding: 2px 0;
}

.xdp-leg-stop.xdp-leg-origin {
opacity: .7;
}

.xdp-leg-stop-dot {
width: 8px;
height: 8px;
border-radius: 50%;
flex-shrink: 0;
}

.xdp-leg-stop-name {
font-size: 11px;
color: #334155;
flex: 1;
}

.xdp-leg-stop-meta {
font-size: 10px;
color: #8c98a4;
white-space: nowrap;
}

.xdp-leg-connector {
width: 1px;
height: 8px;
background: #ebedf1;
margin-left: 3px;
}

/* Center hub */
.xdp-center {
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
padding: 0 8px;
}

.xdp-arrows-in, .xdp-arrows-out {
display: flex;
flex-direction: column;
align-items: center;
gap: 3px;
width: 100%;
}

.xdp-arrow-line {
width: 100%;
height: 2px;
background: linear-gradient(90deg, rgba(26,111,219,.25), rgba(99,60,200,.5));
border-radius: 1px;
position: relative;
}

.xdp-arrow-line::after {
content: '';
position: absolute;
right: 0;
top: -3px;
border: 4px solid transparent;
border-left: 6px solid rgba(99,60,200,.5);
}

.xdp-arrow-line.out {
background: linear-gradient(90deg, rgba(99,60,200,.5), rgba(26,158,63,.25));
}

.xdp-arrow-line.out::after {
border-left-color: rgba(26,158,63,.5);
}

.xdp-hub {
text-align: center;
padding: 8px 10px;
border-radius: 8px;
background: rgba(99,60,200,.07);
border: 2px solid rgba(99,60,200,.3);
width: 100%;
}

.xdp-hub-icon {
font-size: 18px;
color: #5236a0;
}

.xdp-hub-name {
font-size: 10px;
font-weight: 700;
color: #5236a0;
margin-top: 2px;
line-height: 1.3;
}

.xdp-hub-dwell {
font-size: 9px;
color: #8c98a4;
margin-top: 2px;
display: flex;
align-items: center;
justify-content: center;
gap: 3px;
}

.stop-builder {
border: 1px solid #dde1e7;
border-radius: 8px;
overflow: hidden;
padding-bottom: 60px;
}

.stop-row {
display: flex;
align-items: center;
gap: 8px;
padding: 10px 12px;
border-bottom: 1px solid #dde1e7;
background: #ffffff;
transition: background .1s;
}

.stop-row:hover {
background: #f4f6f9;
}

.stop-seq {
width: 22px;
height: 22px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
font-weight: 700;
flex-shrink: 0;
line-height: 1;
}

.stop-seq.ok {
color: #2ba24c;
background-color: #cefddb;
}

.stop-seq.info {
color: #7b39f5;
background-color: #efe7ff;
}

.stop-seq.warn {
color: #df9e06;
background-color: #ffebbd;
}

.stop-seq.bad {
color: #ff5c5c;
background-color: #ffd6d6;
}

.stop-name {
flex: 1;
font-size: 13px;
color: #1a2332;
}

.stop-name small {
color: #8c98a4
}

.stop-dwell {
font-size: 11px;
color: #8c98a4;
white-space: nowrap;
}

.row-action-btn {
width: 36px;
height: 36px;
border-radius: 5px;
border: 1px solid #ebedf1;
background: #ffffff;
color: #111827;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
font-size: 12px;
transition: all .12s;
}

.row-action-btn.danger:hover {
color: #ff5c5c;
border-color: #ff5c5c;
background: #ffd6d6;
}

.row-action-btn.edit:hover {
color: #2ba24c;
border-color: #2ba24c;
background: #cefddb;
}
.add-stop-btn {
width: 100%;
padding: 8px;
background: #efeeec;
border: none;
border-top: 1px dashed #efeeec;
color: #6b7a8d;
font-size: 12px;
cursor: pointer;
transition: all .12s;
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
text-transform: capitalize !important;
}

.stops-location {
display: flex;
align-items: center;
gap: 6px;
font-size: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .9px;
padding: 6px 10px;
border-radius: 6px;
}

.stops-location.inbound {
background: rgb(255, 235, 189, .4);
border: 1px solid rgb(255, 235, 189, .8);
color: #df9e06;
margin-top: 4px;
}

.stops-location.outbound {
background: rgb(255, 235, 189, .4);
border: 1px solid rgb(255, 235, 189, .8);
color: #df9e06;
margin-bottom: 4px;
}


.sidebar-body .time-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 4px;
}

.sidebar-body .time-grid .btn {
padding: 8px 4px;
border-radius: 5px;
text-align: center;
cursor: pointer;
font-size: 10px;
font-weight: 700;
letter-spacing: 1px;
}


.sidebar-body .time-grid .btn.selected {
color: #2ba24c;
background-color: #cefddb;
border: 1px solid #2ba24c;
}
/*..............fuel-card...............*/

.fuel-card {
    width: 100%;
    height: 206px;
    background: linear-gradient(135deg, #535353, #171515);
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    margin: 0;
}

    .fuel-card .card-header {
        display: flex;
        display: flex;
        justify-content: end;
        align-items: end;
        margin-top: 10px;
    }

    .fuel-card .logo {
        height: 46px;
    }

    .fuel-card .euro-logo {
        width: 60px;
    }

    .fuel-card .fuelcard-logo {
        width: 80px;
    }

    .fuel-card .card-number {
        margin: 2% 0 0px 0;
    }

        .fuel-card .card-number .number {
            font-size: 18px;
            letter-spacing: 3px;
            font-weight: 400;
            margin: 0 0 8px 0;
            display: block;
        }

    .fuel-card .holder-name {
        font-size: 12px;
        letter-spacing: 1px;
        font-weight: 400;
        margin: 8% 0 2px 0;
        display: block;
        text-transform: uppercase;
    }

    .fuel-card .vehicle-number {
        font-size: 12px;
        letter-spacing: 4px;
        font-weight: 400;
        margin: 6% 0 16px 0;
    }

.fuel-card .card-number .pin {
    display: block;
    margin-top: 24px;
}

.fuel-card .card-expiry .pin {
    color: #fff;
    font-size: 14px !important;
}

.fuel-card .card-expiry i {
    color: #fff !important;
    opacity: 1 !important;
}

.fuel-card .card-number .pin .pin-number {
    font-size: 12px;
    letter-spacing: 4px;
    font-weight: 400;
}

.fuel-card .card-footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding: 0;
}

.fuel-card .card-name {
    font-size: 16px;
}

.fuel-card .card-expiry {
    text-align: right;
    font-size: 14px;
    margin-bottom: 4px;
}

    .fuel-card .card-expiry span:first-child {
        font-size: 9px;
        opacity: 0.7;
        margin-right: 4px;
    }

.locatr-logo {
    position: absolute;
    right: -20px;
    top: 55%;
    transform: translateY(-50%);
    width: 120px;
    height: 120px;
}

    .locatr-logo img {
        max-height: 80px;
    }
.gmap-sec{position:relative}
.gmap-sec a {
position: absolute;
right: 14px;
top: 8px;
}

.tab-bar {
    display: flex;
    border-bottom: 1px solid var(--n-100);
    padding: 0;
    background: var(--n-0);
    flex-shrink: 0;
}
    .tab-bar  .nav-item {
        display: flex;
        align-items: center;
        padding: 0;
        white-space: nowrap;
        min-height: auto;
        margin-right:10px
    }
        .tab-bar .nav-item:hover {
            background: transparent;
        }

    .tab-bar .nav-link {
        padding: 6px 16px;
        font-size: 13px;
        font-weight: 500;
        color: var(--n-400);
        border: none;
        background: none;
        cursor: pointer;
        border-bottom: 2px solid transparent;
        margin-bottom: -1px;
        transition: all .15s;
        white-space: nowrap;
    }
        .tab-bar .nav-link:hover {
            color: var(--g-500);
            background: transparent;
            border-bottom-color: var(--g-500);
        }

        .tab-bar .nav-link.active {
            color: var(--g-500);
            background: transparent;
            border-bottom-color: var(--g-500);
        }

.stmt-summary {
    display: flex;
    align-items: center;
    gap: 14px;
}


.card-b .field {
display: flex;
justify-content: space-between;
padding: 7px 0;
border-bottom: 1px solid var(--n-75);
font-family: var(--font-mono);
font-size: 12px;
font-weight: 500;
color: var(--n-900);
}

.card-b .k {
font-size: 12px;
color: var(--n-400);
font-family: var(--font-ui);
}

#tripFlow .label {
    font-size: 11px !important;
    font-weight: 600;
}
#tripFlow .edgeLabel {
    background-color: rgb(255, 255, 255, .6) !important;
    text-align: center;
}