.admin-toolbar {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .45rem;
    margin-bottom: 1rem;
    padding: .7rem;
    border: 1px solid var(--et-color-slate-200);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--et-shadow);
}

.admin-toolbar .admin-input {
    min-height: 2.15rem;
}

.primary-button,
.link-button,
.row-actions button,
.admin-actions button {
    min-height: 2.15rem;
    border-radius: var(--et-radius);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    padding: .38rem .62rem;
    font-size: .84rem;
    font-weight: 900;
}

.admin-grid-two {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(18rem, .6fr);
    gap: 1rem;
    align-items: start;
}

.admin-grid-two:has(.admin-data-card) {
    grid-template-columns: minmax(0, 1fr);
}

.admin-grid-two:has(.admin-data-card) > .admin-form {
    position: fixed;
    inset-block: 0;
    inset-inline-end: 0;
    z-index: 90;
    width: min(34rem, calc(100vw - 2rem));
    max-width: 100vw;
    height: 100dvh;
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    overflow: auto;
    border: 0;
    border-inline-start: 1px solid var(--et-color-slate-200);
    border-radius: 0;
    background: #fff !important;
    box-shadow: -24px 0 55px rgba(16, 36, 62, .18);
    animation: et-drawer-in .18s ease-out;
    box-sizing: border-box;
}

.admin-grid-two:has(.admin-data-card) > .admin-form::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    background: rgba(15, 23, 42, .42);
    backdrop-filter: blur(4px);
}

.admin-grid-two:has(.admin-data-card) > .admin-form h2 {
    flex: 0 0 auto;
    margin: 0;
    padding: 1rem;
    border-bottom: 1px solid var(--et-color-slate-200);
    background: linear-gradient(180deg, #fff, #f8fbff);
    color: var(--et-color-navy);
    font-size: 1.1rem;
}

.admin-grid-two:has(.admin-data-card) > .admin-form > label,
.admin-grid-two:has(.admin-data-card) > .admin-form > .admin-check,
.admin-grid-two:has(.admin-data-card) > .admin-form > .et-validation-summary {
    margin-inline: 1rem;
}

.admin-grid-two:has(.admin-data-card) > .admin-form > label:first-of-type,
.admin-grid-two:has(.admin-data-card) > .admin-form > .et-validation-summary:first-of-type {
    margin-block-start: 1rem;
}

.admin-grid-two:has(.admin-data-card) > .admin-form > label,
.admin-grid-two:has(.admin-data-card) > .admin-form > .admin-check {
    margin-block-end: .85rem;
}

.admin-grid-two:has(.admin-data-card) > .admin-form .admin-actions {
    flex: 0 0 auto;
    position: sticky;
    inset-block-end: 0;
    z-index: 2;
    margin: auto 0 0;
    padding: 1rem;
    justify-content: flex-end;
    border-top: 1px solid var(--et-color-slate-200);
    background: #fff;
    box-shadow: 0 -12px 32px rgba(16, 36, 62, .06);
}

.admin-grid-two:has(.admin-data-card) > .admin-form .admin-actions .primary-button,
.admin-grid-two:has(.admin-data-card) > .admin-form .admin-actions .link-button {
    min-height: 2.65rem;
    min-width: 7rem;
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .55rem .85rem;
    font-size: .9rem;
    font-weight: 900;
    box-shadow: none;
}

.admin-grid-two:has(.admin-data-card) > .admin-form .admin-actions .primary-button {
    border-color: var(--et-color-teal);
    background: linear-gradient(180deg, #12b6b0, #078c88);
    color: #fff;
}

.admin-grid-two:has(.admin-data-card) > .admin-form .admin-actions .link-button {
    background: #fff;
    color: var(--et-color-navy);
}

.shared-panel {
    padding: 1rem;
    overflow: auto;
}

.admin-data-card {
    width: 100%;
    min-width: 0;
    border: 1px solid var(--et-color-slate-200);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--et-shadow);
}

.admin-data-card .data-table {
    min-width: 46rem;
}

.data-table,
.et-grid {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

.data-table th,
.data-table td,
.et-grid th,
.et-grid td {
    border-bottom: 1px solid var(--et-color-slate-100);
    padding: .75rem;
    text-align: start;
    vertical-align: middle;
}

.data-table th,
.et-grid th {
    color: var(--et-color-slate-500);
    background: #f8fafc;
    font-size: .78rem;
    letter-spacing: 0;
    text-transform: uppercase;
}

.data-table tr:hover,
.et-grid tr:hover {
    background: #f8fbff;
}

.selected-row,
.et-grid tr.selected {
    background: #eef6ff;
}

.row-actions,
.admin-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.row-actions {
    flex-wrap: nowrap;
}

.row-actions button {
    min-height: 1.9rem;
    padding: .28rem .48rem;
}

.admin-dialog-backdrop {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: grid;
    place-items: center;
    padding: 1rem;
    background: rgba(15, 23, 42, .45);
}

.admin-dialog {
    width: min(32rem, 100%);
    max-height: calc(100vh - 2rem);
    overflow: auto;
    display: grid;
    gap: .85rem;
    padding: 1rem;
}

.admin-dialog.wide {
    width: min(58rem, 100%);
}

.admin-check-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .45rem .85rem;
}

.admin-check,
.admin-check-list label {
    display: flex !important;
    align-items: center;
    gap: .5rem !important;
    color: var(--et-color-slate-900) !important;
    font-weight: 700 !important;
}

.assignment-group {
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    padding: .75rem;
    background: #fbfdff;
}

.assignment-group summary {
    cursor: pointer;
    font-weight: 900;
    margin-bottom: .55rem;
}

.et-dynamic-page {
    width: 100%;
    min-width: 0;
    display: grid;
    gap: 1rem;
}

.et-dynamic-page__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.et-dynamic-page__header > .et-command-bar {
    flex: 1 1 100%;
}

.et-dynamic-page__title {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: .85rem;
}

.et-dynamic-page__icon {
    inline-size: 3.3rem;
    block-size: 3.3rem;
    display: grid;
    place-items: center;
    border: 1px solid var(--et-color-slate-200);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--et-shadow);
    color: var(--et-color-navy);
    font-size: 1.45rem;
}

.et-dynamic-page__header h1 {
    margin: 0;
    color: var(--et-color-navy);
    font-size: 1.35rem;
}

.et-dynamic-page__header p {
    margin: .25rem 0 0;
    color: var(--et-color-slate-500);
}

.et-command-bar {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4rem;
    padding: .7rem;
    border: 1px solid var(--et-color-slate-200);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--et-shadow);
}

.et-command-button {
    min-height: 2.15rem;
    border: 1px solid #cbd5e1;
    border-radius: var(--et-radius);
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    padding: .38rem .62rem;
    background: #fff;
    color: var(--et-color-navy);
    font-size: .84rem;
    font-weight: 900;
}

.et-command-button:disabled {
    opacity: .48;
    cursor: not-allowed;
}

.et-command-button--primary {
    border-color: var(--et-color-teal);
    background: linear-gradient(180deg, #12b6b0, #078c88);
    color: #fff;
}

.et-command-button--teal {
    border-color: rgba(15, 159, 154, .45);
    color: #078c88;
}

.et-command-button--blue {
    border-color: rgba(31, 111, 235, .35);
    color: var(--et-color-blue);
}

.et-command-button--danger {
    border-color: #fecaca;
    color: #dc2626;
}

.et-command-button--purple {
    border-color: #ddd6fe;
    color: #6d28d9;
}

.et-command-button--muted {
    color: var(--et-color-slate-500);
}

.et-dynamic-page__body {
    width: 100%;
    min-width: 0;
    display: block;
    grid-template-columns: none;
}

.et-dynamic-page__grid {
    padding: 1rem;
    width: 100%;
    max-width: none;
    min-width: 0;
    display: block;
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    background: #fff;
    box-shadow: var(--et-shadow);
    overflow: auto;
}

.et-dynamic-page__grid .et-grid {
    min-width: 44rem;
}

.et-grid-select-col {
    width: 3rem;
    text-align: center !important;
}

.et-grid-actions-col {
    width: 5rem;
    text-align: center !important;
}

.et-grid-check {
    inline-size: 1.05rem;
    block-size: 1.05rem;
    display: inline-grid;
    place-items: center;
    border: 1px solid #b8c4d5;
    border-radius: 4px;
    color: #fff;
    font-size: .65rem;
}

.et-grid-check.checked {
    border-color: var(--et-color-teal);
    background: var(--et-color-teal);
}

.et-grid-row-action {
    inline-size: 2rem;
    block-size: 2rem;
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    display: inline-grid;
    place-items: center;
    background: #fff;
    color: var(--et-color-blue);
}

.et-grid-row-action:disabled {
    color: #94a3b8;
}

.et-dynamic-page__form {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    padding: 1rem;
    overflow: auto;
}

.et-dynamic-drawer {
    position: fixed;
    inset: 0;
    z-index: 90;
    display: flex;
    justify-content: flex-end;
    pointer-events: none;
}

.et-dynamic-drawer__overlay {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .42);
    backdrop-filter: blur(4px);
    pointer-events: auto;
}

.et-dynamic-drawer__panel {
    position: relative;
    z-index: 1;
    width: min(34rem, calc(100vw - 2rem));
    height: 100dvh;
    max-height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border-inline-start: 1px solid var(--et-color-slate-200);
    box-shadow: -24px 0 55px rgba(16, 36, 62, .18);
    pointer-events: auto;
    animation: et-drawer-in .18s ease-out;
}

.et-dynamic-drawer .et-validation-summary {
    margin: 1rem 1rem 0;
    flex: 0 0 auto;
    border-color: #fecaca;
    background: #fff7f7;
    box-shadow: none;
}

.et-dynamic-drawer__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border-bottom: 1px solid var(--et-color-slate-200);
    background: linear-gradient(180deg, #fff, #f8fbff);
}

.et-dynamic-drawer__header div {
    display: grid;
    gap: .15rem;
}

.et-dynamic-drawer__header span {
    color: var(--et-color-slate-500);
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.et-dynamic-drawer__header strong {
    color: var(--et-color-navy);
    font-size: 1.1rem;
}

.et-dynamic-drawer__close {
    inline-size: 2.35rem;
    block-size: 2.35rem;
    display: grid;
    place-items: center;
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    background: #fff;
    color: var(--et-color-navy);
}

.et-dynamic-drawer__footer {
    flex: 0 0 auto;
    position: sticky;
    inset-block-end: 0;
    z-index: 2;
    display: flex;
    gap: .7rem;
    justify-content: flex-end;
    padding: 1rem;
    border-top: 1px solid var(--et-color-slate-200);
    background: #fff;
    box-shadow: 0 -12px 32px rgba(16, 36, 62, .06);
}

.et-drawer-action {
    min-height: 2.65rem;
    min-width: 7rem;
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .55rem .85rem;
    background: #fff;
    color: var(--et-color-navy);
    font-weight: 900;
}

.et-drawer-action--primary {
    border-color: var(--et-color-teal);
    background: linear-gradient(180deg, #12b6b0, #078c88);
    color: #fff;
}

.et-drawer-action:disabled {
    opacity: .5;
    cursor: not-allowed;
}

.et-dynamic-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

/* .et-dynamic-field {
    display: grid;
    gap: .35rem;
    color: var(--et-color-slate-500);
    font-weight: 800;
} */

.et-dynamic-field input,
.et-dynamic-field select,
.et-dynamic-field textarea,
.et-grid-search {
    border: 1px solid #cbd5e1;
    border-radius: var(--et-radius);
    padding: .62rem .72rem;
    font: inherit;
}

.et-grid-search {
    width: min(22rem, 100%);
    margin-bottom: .75rem;
}

.et-grid-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .75rem;
}

.et-grid-toolbar .et-grid-search {
    margin-bottom: 0;
}

.et-grid-page-size {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: var(--et-color-slate-500);
    font-weight: 800;
}

.et-grid-page-size select {
    min-width: 5rem;
    border: 1px solid #cbd5e1;
    border-radius: var(--et-radius);
    padding: .5rem .65rem;
    background: #fff;
    color: var(--et-color-slate-900);
    font: inherit;
}

.et-grid-sort {
    width: 100%;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    padding: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: 900;
    text-align: start;
}

.et-grid-sort__icon {
    color: #94a3b8;
    font-size: .8rem;
}

.et-grid-pager {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding-top: .85rem;
    color: var(--et-color-slate-500);
    font-weight: 800;
}

.et-grid-pager__actions {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4rem;
}

.et-grid-pager__actions button {
    min-height: 2.1rem;
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    padding: .35rem .65rem;
    background: #fff;
    color: var(--et-color-navy);
    font-weight: 800;
}

.et-grid-pager__actions button:disabled {
    color: #94a3b8;
    background: #f8fafc;
}

.et-grid-pager__actions strong {
    color: var(--et-color-navy);
    padding-inline: .35rem;
}

.et-audit-panel {
    margin-top: 1rem;
    border: 1px solid var(--et-color-slate-200);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--et-shadow);
    overflow: hidden;
}

.et-audit-panel summary {
    min-height: 2.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .65rem .85rem;
    cursor: pointer;
    color: var(--et-color-navy);
    font-weight: 900;
    list-style: none;
}

.et-audit-panel summary::-webkit-details-marker {
    display: none;
}

.et-audit-panel summary > span {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.et-audit-panel summary > i {
    color: var(--et-color-slate-500);
    transition: transform .15s ease;
}

.et-audit-panel[open] summary > i {
    transform: rotate(180deg);
}

.et-audit-panel__items {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: 0 .85rem .85rem;
    overflow-x: auto;
}

.et-audit-chip {
    min-width: max-content;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .38rem .55rem;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f8fbff;
    color: var(--et-color-slate-500);
}

.et-audit-chip i {
    color: var(--et-color-blue);
    font-size: .78rem;
}

.et-audit-chip strong {
    color: var(--et-color-navy);
    font-size: .78rem;
    font-weight: 850;
}

.et-audit-chip--danger i,
.et-audit-chip--danger strong {
    color: var(--et-color-danger);
}

.et-validation-message,
.error-text {
    color: var(--et-color-danger);
    font-weight: 800;
}

@media (max-width: 980px) {
    .admin-grid-two,
    .et-dynamic-form,
    .admin-check-list {
        grid-template-columns: 1fr;
    }

    .et-dynamic-drawer__panel {
        width: 100vw;
    }

    .admin-grid-two:has(.admin-data-card) > .admin-form {
        inset: 0;
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        padding: 0;
        border-inline-start: 0;
        box-shadow: none;
        overflow-x: hidden;
        overscroll-behavior: contain;
    }

    .admin-grid-two:has(.admin-data-card) > .admin-form h2 {
        position: sticky;
        inset-block-start: 0;
        z-index: 3;
        padding: .85rem;
    }

    .admin-grid-two:has(.admin-data-card) > .admin-form > label,
    .admin-grid-two:has(.admin-data-card) > .admin-form > .admin-check,
    .admin-grid-two:has(.admin-data-card) > .admin-form > .et-validation-summary {
        margin-inline: .85rem;
    }

    .admin-grid-two:has(.admin-data-card) > .admin-form label,
    .admin-grid-two:has(.admin-data-card) > .admin-form .admin-input {
        min-width: 0;
        width: 100%;
    }

    .admin-grid-two:has(.admin-data-card) > .admin-form .admin-actions {
        inset-block-end: 0;
        margin: auto 0 0;
        padding: .75rem .85rem;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-grid-two:has(.admin-data-card) > .admin-form .admin-actions button {
        width: 100%;
    }

    .et-dynamic-drawer__panel {
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        box-shadow: none;
    }

    .et-dynamic-drawer__footer {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: .75rem .85rem;
    }

    .et-drawer-action {
        width: 100%;
        min-width: 0;
    }

    .et-command-button {
        min-height: 2rem;
        padding: .32rem .5rem;
        font-size: .8rem;
    }
}

@keyframes et-drawer-in {
    from {
        transform: translateX(1.5rem);
        opacity: .8;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}
.et-quote-page {
    display: grid;
    gap: 1rem;
}

.et-quote-list-page {
    display: grid;
    gap: 1rem;
}

.et-quote-list-toolbar {
    align-items: center;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    padding: .75rem;
}

.et-quote-list-search {
    align-items: center;
    border: 1px solid #d8dee8;
    border-radius: .45rem;
    display: flex;
    gap: .5rem;
    max-width: 32rem;
    padding: 0 .7rem;
    width: 100%;
}

.et-quote-list-search input {
    border: 0;
    min-height: 2.35rem;
    outline: 0;
    width: 100%;
}

.et-quote-kpi-grid {
    display: grid;
    gap: .85rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.et-quote-kpi-grid article,
.et-quote-table-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    padding: 1rem;
}

.et-quote-kpi-grid span {
    color: #667085;
    display: block;
    font-size: .82rem;
}

.et-quote-kpi-grid strong {
    color: #102a43;
    display: block;
    font-size: 1.35rem;
    margin-top: .25rem;
}

.et-quote-table-wrap {
    margin-top: .8rem;
    overflow-x: auto;
}

.et-link-button {
    background: transparent;
    border: 0;
    color: #075985;
    font-weight: 800;
    padding: 0;
}

.et-quote-commandbar,
.et-card-header,
.et-section-toolbar {
    align-items: center;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
}

.et-quote-commandbar {
    background: var(--et-surface, #fff);
    border: 1px solid var(--et-border, #e5e7eb);
    border-radius: .5rem;
    padding: .75rem;
}

.et-quote-commandbar__left,
.et-quote-commandbar__right {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.et-icon-action,
.et-status-action {
    align-items: center;
    background: #fff;
    border: 1px solid #d8dee8;
    border-radius: .45rem;
    color: #202938;
    display: inline-flex;
    gap: .45rem;
    min-height: 2.25rem;
    padding: .45rem .65rem;
}

.et-icon-action {
    aspect-ratio: 1;
    justify-content: center;
    padding: .45rem;
    width: 2.25rem;
}

.et-icon-action--primary,
.et-status-action--primary {
    background: #0f766e;
    border-color: #0f766e;
    color: #fff;
}

.et-icon-action--danger {
    color: #b42318;
}

.et-icon-action:disabled,
.et-status-action:disabled {
    cursor: not-allowed;
    opacity: .45;
}

.et-validation-banner {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: .5rem;
    color: #9a3412;
    display: grid;
    gap: .25rem;
    padding: .75rem 1rem;
}

.et-quote-shell {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(17rem, 22rem) minmax(0, 1fr) minmax(16rem, 20rem);
}

.et-quote-shell--workspace {
    grid-template-columns: minmax(0, 1fr) minmax(16rem, 20rem);
}

.et-quote-list-card,
.et-quote-editor,
.et-quote-summary-card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    min-width: 0;
    padding: 1rem;
}

.et-card-header input {
    border: 1px solid #d8dee8;
    border-radius: .4rem;
    max-width: 9rem;
    padding: .45rem .55rem;
}

.et-card-header span,
.et-section-toolbar span,
.et-muted-label {
    color: #667085;
    display: block;
    font-size: .78rem;
}

.et-quote-list {
    display: grid;
    gap: .5rem;
    margin-top: .75rem;
}

.et-quote-list-row {
    background: #f8fafc;
    border: 1px solid transparent;
    border-radius: .5rem;
    color: inherit;
    display: flex;
    justify-content: space-between;
    padding: .7rem;
    text-align: left;
}

.et-quote-list-row.active {
    background: #ecfdf3;
    border-color: #0f766e;
}

.et-quote-list-row small {
    color: #667085;
    display: block;
    margin-top: .2rem;
}

.et-quote-title-row {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.et-quote-title-row h2 {
    font-size: 1.35rem;
    margin: .1rem 0 0;
}

.et-quote-tabs {
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    gap: .35rem;
    margin: 1rem 0;
}

.et-quote-tabs button {
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    color: #667085;
    padding: .65rem .8rem;
}

.et-quote-tabs button.active {
    border-color: #0f766e;
    color: #0f766e;
    font-weight: 700;
}

.et-form-grid {
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.et-field {
    display: grid;
    gap: .3rem;
}

.et-field.wide {
    grid-column: 1 / -1;
}

.et-field span {
    color: #344054;
    font-size: .82rem;
    font-weight: 700;
}

.et-field input,
.et-field select,
.et-field textarea {
    border: 1px solid #d8dee8;
    border-radius: .45rem;
    min-height: 2.35rem;
    padding: .5rem .6rem;
    width: 100%;
}

.et-field textarea {
    min-height: 5rem;
}

.et-lookup-field {
    display: grid;
    gap: .3rem;
}

.et-lookup-field.wide {
    grid-column: 1 / -1;
}

.et-lookup-field > span {
    color: #344054;
    font-size: .82rem;
    font-weight: 700;
}

.et-lookup-input {
    /*align-items: center;*/ 
    background: #fff;
    border: 1px solid #d8dee8;
    border-radius: .45rem;
    display: grid;
    gap: .35rem;
    grid-template-columns: auto minmax(0, 1fr) auto auto auto;
    height: 1.7rem;
    /*padding: 0 .45rem;*/
}

.et-lookup-input.disabled {
    background: #f8fafc;
}

.et-lookup-input input {
    border: 0;   
     font-size: 0.92rem;  
    min-height: 1.2rem;
    outline: 0;
    padding: 0;   height: 1.55rem;
}

.et-lookup-input button,
.et-lookup-dialog__header button,
.et-lookup-action {
    align-items: center;
    background: #fff;
    border: 1px solid #d8dee8;
    border-radius: .4rem;
    display: inline-flex;
    gap: .35rem;
    justify-content: center;
   height: 1.55rem;
    /* padding: .35rem .55rem; */
}
.et-lookup-input button{
         font-size: 0.92rem;  
          border-radius: .2rem;
          padding: 0 .45rem;
}
.et-lookup-dialog {
    inset: 0;
    position: fixed;
    z-index: 1050;
}
.et-lookup-icon-button{
      height: 1.55rem;
      font-size: 10px;
}
.et-lookup-dialog__overlay {
    background: rgba(15, 23, 42, .32);
    inset: 0;
    position: absolute;
}

.et-lookup-dialog__panel {
    background: #fff;
    border-radius: .65rem;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .2);
    display: grid;
    gap: .85rem;
    left: 50%;
    max-height: min(42rem, calc(100vh - 3rem));
    max-width: min(58rem, calc(100vw - 2rem));
    overflow: auto;
    padding: 1rem;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.et-lookup-dialog__header,
.et-lookup-dialog__footer,
.et-lookup-pager {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.et-lookup-dialog__header span {
    color: #667085;
    display: block;
    font-size: .78rem;
}

.et-lookup-dialog__search {
    align-items: center;
    border: 1px solid #d8dee8;
    border-radius: .45rem;
    display: flex;
    gap: .5rem;
    padding: 0 .7rem;
}

.et-lookup-dialog__search input {
    border: 0;
    min-height: 2.5rem;
    outline: 0;
    width: 100%;
}

.et-lookup-grid {
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    overflow: auto;
}

.et-lookup-grid table {
    border-collapse: collapse;
    width: 100%;
}

.et-lookup-grid th,
.et-lookup-grid td {
    border-bottom: 1px solid #eef2f7;
    padding: .65rem .75rem;
    text-align: start;
    white-space: nowrap;
}

.et-lookup-grid th {
    background: #f8fafc;
    color: #344054;
    font-size: .78rem;
    text-transform: uppercase;
}

.et-lookup-grid tr.selected,
.et-lookup-grid tbody tr:hover {
    background: #ecfdf3;
}

.et-lookup-action--primary {
    background: #0f766e;
    border-color: #0f766e;
    color: #fff;
}

.et-check-field {
    align-content: end;
}

.et-check-field input {
    width: auto;
}

.et-child-grid {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
    margin-top: .9rem;
}

.et-child-card {
    border: 1px solid #e5e7eb;
    border-radius: .5rem;
    display: grid;
    gap: .6rem;
    padding: .85rem;
}

.et-child-card header,
.et-child-card footer {
    align-items: center;
    display: flex;
    gap: .5rem;
    justify-content: space-between;
}

.et-child-card p {
    color: #475467;
    margin: 0;
}

.et-child-card footer button {
    background: #fff;
    border: 1px solid #d8dee8;
    border-radius: .4rem;
    min-height: 2rem;
    width: 2rem;
}

.et-total-list {
    display: grid;
    gap: .65rem;
    margin: 1rem 0;
}

.et-total-list div {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.et-total-list dt {
    color: #667085;
}

.et-total-list dd {
    font-weight: 800;
    margin: 0;
}

.et-total-list .positive {
    color: #067647;
}

.et-total-list .negative {
    color: #b42318;
}

.et-currency-totals,
.et-status-notes {
    background: #f8fafc;
    border-radius: .45rem;
    display: grid;
    gap: .35rem;
    padding: .75rem;
}

.et-status-notes {
    margin-top: .75rem;
}

.et-session-expired {
    align-items: center;
    background: rgba(15, 23, 42, .48);
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 1rem;
    position: fixed;
    z-index: 2000;
}

.et-session-expired__card {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: .65rem;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .22);
    display: grid;
    gap: .8rem;
    max-width: 26rem;
    padding: 1.25rem;
    text-align: center;
    width: 100%;
}

.et-session-expired__icon {
    align-items: center;
    background: #eff6ff;
    border-radius: .55rem;
    color: #075985;
    display: inline-flex;
    height: 3rem;
    justify-content: center;
    justify-self: center;
    width: 3rem;
}

.et-session-expired__card h2,
.et-session-expired__card p {
    margin: 0;
}

.et-session-expired__card p {
    color: #475467;
}

.et-session-expired__button {
    align-items: center;
    background: #0f766e;
    border: 1px solid #0f766e;
    border-radius: .45rem;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    gap: .45rem;
    justify-content: center;
    justify-self: center;
    min-height: 2.4rem;
    padding: .55rem 1rem;
}

@media (max-width: 1180px) {
    .et-quote-shell,
    .et-quote-shell--workspace {
        grid-template-columns: 1fr;
    }

    .et-quote-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .et-form-grid,
    .et-quote-commandbar {
        grid-template-columns: 1fr;
    }

    .et-form-grid {
        display: grid;
    }

    .et-quote-list-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .et-quote-kpi-grid {
        grid-template-columns: 1fr;
    }
}

/* Custom overlay drawers mapping to et-dynamic-drawer styling */
.et-drawer-overlay, .et-drawer-backdrop {
    position: fixed;
    inset: 0;
    z-index: 100;
    background: rgba(15, 23, 42, .42);
    backdrop-filter: blur(4px);
    display: flex;
    justify-content: flex-end;
    pointer-events: auto;
}

.et-drawer {
    position: relative;
    z-index: 1;
    width: min(34rem, calc(100vw - 2rem));
    height: 100dvh;
    max-height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border-inline-start: 1px solid var(--et-color-slate-200);
    box-shadow: -24px 0 55px rgba(16, 36, 62, .18);
    pointer-events: auto;
    animation: et-drawer-in .18s ease-out;
}

.et-drawer-header, .et-drawer__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border-bottom: 1px solid var(--et-color-slate-200);
    background: linear-gradient(180deg, #fff, #f8fbff);
    flex: 0 0 auto;
}

.et-drawer-header h2, .et-drawer-header h3, .et-drawer__header h2, .et-drawer__header strong {
    color: var(--et-color-navy);
    font-size: 1.1rem;
    margin: 0;
    font-weight: 700;
}

.et-drawer-close, .et-drawer__close {
    width: 2.35rem;
    height: 2.35rem;
    display: grid;
    place-items: center;
    border: 1px solid var(--et-color-slate-200);
    border-radius: var(--et-radius);
    background: #fff;
    color: var(--et-color-navy);
    cursor: pointer;
}

.et-drawer-body, .et-drawer__body {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.et-drawer-footer, .et-drawer__footer {
    flex: 0 0 auto;
    position: sticky;
    bottom: 0;
    z-index: 2;
    display: flex;
    gap: .7rem;
    justify-content: flex-end;
    padding: 1rem;
    border-top: 1px solid var(--et-color-slate-200);
    background: #fff;
    box-shadow: 0 -12px 32px rgba(16, 36, 62, .06);
}

/* Custom booking / shipment charges table grid */
.booking-charges-grid {
    width: 100%;
    min-width: 72rem;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
}

.booking-charges-grid th,
.booking-charges-grid td {
    border-bottom: 1px solid #eef2f7;
    padding: .62rem .7rem;
    vertical-align: middle;
    white-space: nowrap;
}

.booking-charges-grid th {
    background: #f8fafc;
    color: #163154;
    font-size: .74rem;
    font-weight: 900;
}

.booking-charges-grid td {
    color: #0b1f3a;
    font-size: .82rem;
}

.booking-charges-grid tbody tr:hover {
    background: #f8fbff;
}
