.pwb[hidden],
.pwb [hidden] {
    display: none !important;
}

.pwb {
    position: fixed;
    inset: 0;
    z-index: 12000;
    display: grid;
    place-items: center;
    padding: 22px;
    color: var(--pv-text-primary, #f1f5f9);
    font-family: var(--pv-font-ui, Inter, system-ui, sans-serif);
}

.pwb__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 6, 23, 0.78);
    backdrop-filter: blur(8px);
}

.pwb__dialog {
    position: relative;
    width: min(1720px, 96vw);
    max-height: 94vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--pv-card-border, rgba(99, 122, 174, 0.34));
    border-radius: 18px;
    background: var(--pv-card-surface-solid, #0b1220);
    box-shadow: 0 28px 90px rgba(0, 0, 0, 0.58);
}

.pwb__dialog:focus {
    outline: none;
}

.pwb__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 22px;
    border-bottom: 1px solid var(--pv-line, rgba(99, 122, 174, 0.24));
    background: linear-gradient(110deg, rgba(79, 70, 229, 0.16), rgba(14, 165, 233, 0.06));
}

.pwb__heading {
    min-width: 0;
}

.pwb__eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--pv-accent-cyan, #67e8f9);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.pwb__heading h2 {
    margin: 0;
    font-size: 1.18rem;
    line-height: 1.25;
}

.pwb__heading p {
    margin: 5px 0 0;
    overflow: hidden;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pwb__mono {
    font-family: var(--pv-font-mono, "JetBrains Mono", monospace);
}

.pwb__header-actions {
    display: flex;
    align-items: center;
    gap: 9px;
}

.pwb__platform-label {
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.7rem;
    font-weight: 700;
}

.pwb__select,
.pwb input,
.pwb textarea {
    border: 1px solid var(--pv-card-border, rgba(99, 122, 174, 0.38));
    border-radius: 8px;
    background: rgba(8, 15, 30, 0.88);
    color: var(--pv-text-primary, #f1f5f9);
    font: inherit;
}

.pwb__select {
    min-width: 148px;
    padding: 8px 30px 8px 10px;
    font-size: 0.75rem;
}

.pwb__select:focus,
.pwb input:focus,
.pwb textarea:focus,
.pwb button:focus-visible,
.pricing-fixed-price:focus-visible,
.pricing-parent-analysis-button:focus-visible,
.pricing-expand-button:focus-visible,
.pricing-cost-btn:focus-visible,
.pricing-cost-pop-close:focus-visible,
.pwb__table-wrap:focus-visible {
    outline: 2px solid var(--pv-accent-cyan, #67e8f9);
    outline-offset: 2px;
}

.pwb__icon-button {
    width: 36px;
    height: 36px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    color: var(--pv-text-secondary, #a8b3c7);
    cursor: pointer;
    font-size: 1.45rem;
    line-height: 1;
}

.pwb__icon-button:hover {
    border-color: var(--pv-card-border, rgba(99, 122, 174, 0.38));
    background: rgba(148, 163, 184, 0.08);
    color: #fff;
}

.pwb__body {
    min-height: 360px;
    overflow: auto;
    padding: 18px 22px 24px;
}

.pwb__loading,
.pwb__fatal {
    min-height: 340px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--pv-text-secondary, #a8b3c7);
    text-align: center;
}

.pwb__spinner {
    width: 30px;
    height: 30px;
    border: 3px solid rgba(103, 232, 249, 0.16);
    border-top-color: var(--pv-accent-cyan, #67e8f9);
    border-radius: 50%;
    animation: pwb-spin 0.8s linear infinite;
}

@keyframes pwb-spin {
    to { transform: rotate(360deg); }
}

.pwb__notice {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    padding: 9px 12px;
    border: 1px solid rgba(56, 189, 248, 0.22);
    border-radius: 9px;
    background: rgba(14, 165, 233, 0.07);
    color: #bae6fd;
    font-size: 0.72rem;
}

.pwb__summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.pwb__summary-card,
.pwb__editor,
.pwb__analysis,
.pwb__chart-card,
.pwb__evidence-grid article {
    border: 1px solid var(--pv-card-border, rgba(99, 122, 174, 0.25));
    background: var(--pv-card-surface, rgba(17, 27, 48, 0.72));
}

.pwb__levels {
    margin-top: 10px;
    padding: 10px;
    border: 1px solid rgba(99, 122, 174, 0.2);
    border-radius: 9px;
    background: rgba(7, 13, 27, 0.25);
}

.pwb__level-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 7px;
}

.pwb__level-card {
    padding: 8px 9px;
    border: 1px solid rgba(103, 232, 249, 0.16);
    border-radius: 8px;
    background: rgba(14, 165, 233, 0.05);
}

.pwb__level-card strong,
.pwb__level-card span,
.pwb__level-card small {
    display: block;
}

.pwb__level-card strong {
    color: #a5f3fc;
    font-size: 0.74rem;
}

.pwb__level-card span {
    margin-top: 3px;
    color: #dbe5f4;
    font-size: 0.67rem;
    font-weight: 700;
}

.pwb__level-card small {
    margin-top: 2px;
    color: #71809b;
    font-size: 0.57rem;
    line-height: 1.35;
}

.pwb__summary-card {
    padding: 11px 13px;
    border-radius: 10px;
}

.pwb__summary-card > span,
.pwb__evidence-grid article > span {
    display: block;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.63rem;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.pwb__summary-card strong,
.pwb__evidence-grid strong {
    display: block;
    margin-top: 5px;
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 1rem;
}

.pwb__summary-card small,
.pwb__evidence-grid small {
    display: block;
    margin-top: 3px;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.65rem;
    line-height: 1.35;
}

.pwb__workspace {
    display: grid;
    grid-template-columns: minmax(360px, 0.82fr) minmax(600px, 1.55fr);
    gap: 14px;
    align-items: start;
}

.pwb__editor,
.pwb__analysis {
    padding: 15px;
    border-radius: 12px;
}

.pwb__section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 13px;
}

.pwb__section-heading h3 {
    margin: 0;
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.88rem;
}

.pwb__section-heading p {
    margin: 4px 0 0;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.66rem;
    line-height: 1.4;
}

.pwb__state-badge {
    flex: 0 0 auto;
    padding: 3px 8px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.08);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.61rem;
    font-weight: 750;
}

.pwb__state-badge.is-saved {
    border-color: rgba(74, 222, 128, 0.3);
    background: rgba(74, 222, 128, 0.09);
    color: #86efac;
}

.pwb__state-badge.is-limited {
    border-color: rgba(251, 191, 36, 0.3);
    background: rgba(251, 191, 36, 0.09);
    color: #fde68a;
}

.pwb__state-badge.is-dirty {
    border-color: rgba(251, 191, 36, 0.45);
    background: rgba(251, 191, 36, 0.11);
    color: var(--pv-warning-text, #fde68a);
}

.pwb__price-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
}

.pwb__price-field {
    display: block;
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(99, 122, 174, 0.2);
    border-radius: 10px;
    background: rgba(7, 13, 27, 0.38);
}

.pwb__price-field.has-error,
.pwb__option-field.has-error {
    border-color: rgba(248, 113, 113, 0.7);
}

.pwb__price-label {
    display: block;
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.72rem;
    font-weight: 750;
}

.pwb__price-help {
    display: block;
    min-height: 30px;
    margin: 3px 0 7px;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.61rem;
    line-height: 1.35;
}

.pwb__money-input {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    overflow: hidden;
    border: 1px solid var(--pv-card-border, rgba(99, 122, 174, 0.38));
    border-radius: 8px;
    background: rgba(8, 15, 30, 0.88);
}

.pwb__currency {
    padding: 0 8px;
    color: var(--pv-accent-cyan, #67e8f9);
    font-family: var(--pv-font-mono, monospace);
    font-size: 0.58rem;
    font-weight: 800;
}

.pwb__money-input input {
    width: 100%;
    min-width: 0;
    padding: 8px 9px;
    border: 0;
    border-left: 1px solid rgba(99, 122, 174, 0.2);
    border-radius: 0;
    background: transparent;
    font-family: var(--pv-font-mono, monospace);
    font-size: 0.8rem;
    font-weight: 700;
    text-align: right;
}

.pwb__field-error {
    display: block;
    min-height: 14px;
    margin-top: 4px;
    color: #fca5a5;
    font-size: 0.59rem;
}

.pwb__editor-options {
    display: grid;
    gap: 9px;
    margin-top: 11px;
}

.pwb__editor-options label {
    display: grid;
    gap: 5px;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.67rem;
    font-weight: 650;
}

.pwb__percent-input {
    display: flex;
    align-items: center;
    gap: 6px;
}

.pwb__percent-input input {
    width: 90px;
    padding: 7px 8px;
}

.pwb textarea {
    width: 100%;
    resize: vertical;
    padding: 8px 9px;
    font-size: 0.7rem;
    line-height: 1.4;
}

.pwb__form-message {
    margin-top: 10px;
    padding: 8px 10px;
    border: 1px solid rgba(248, 113, 113, 0.3);
    border-radius: 8px;
    background: rgba(239, 68, 68, 0.08);
    color: #fecaca;
    font-size: 0.66rem;
    line-height: 1.4;
}

.pwb__form-message.is-success {
    border-color: rgba(74, 222, 128, 0.3);
    background: rgba(74, 222, 128, 0.08);
    color: #bbf7d0;
}

.pwb__form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 12px;
}

.pwb__button {
    min-height: 34px;
    padding: 7px 11px;
    border: 1px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.67rem;
    font-weight: 750;
}

.pwb__button:disabled {
    cursor: not-allowed;
    opacity: 0.42;
    filter: saturate(0.55);
}

#pricing-workbench-dialog[aria-busy="true"] .pwb__button:disabled {
    cursor: wait;
}

.pwb__button--primary {
    margin-left: auto;
    background: var(--pv-accent, #6366f1);
    color: #fff;
}

.pwb__button--amazon {
    margin-left: 0;
    transition: opacity 160ms ease, filter 160ms ease, background 160ms ease;
}

.pwb__button--secondary {
    border-color: rgba(103, 232, 249, 0.28);
    background: rgba(6, 182, 212, 0.09);
    color: #a5f3fc;
}

.pwb__button--ghost {
    border-color: rgba(148, 163, 184, 0.25);
    background: rgba(148, 163, 184, 0.06);
    color: var(--pv-text-secondary, #a8b3c7);
}

.pwb__review-layer {
    position: fixed;
    inset: 0;
    z-index: 4;
    display: grid;
    place-items: center;
    padding: 22px;
}

.pwb__review-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 6, 23, 0.86);
    backdrop-filter: blur(6px);
}

.pwb__review-dialog {
    position: relative;
    width: min(920px, 94vw);
    max-height: min(86vh, 850px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(103, 232, 249, 0.38);
    border-radius: 16px;
    background: var(--pv-card-surface-solid, #0b1220);
    box-shadow: 0 30px 100px rgba(0, 0, 0, 0.68);
}

.pwb__review-dialog:focus {
    outline: none;
}

.pwb__review-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    border-bottom: 1px solid var(--pv-line, rgba(99, 122, 174, 0.24));
    background: linear-gradient(110deg, rgba(6, 182, 212, 0.12), rgba(79, 70, 229, 0.12));
}

.pwb__review-header h3,
.pwb__review-effects h4 {
    margin: 0;
}

.pwb__review-header p {
    margin: 5px 0 0;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.75rem;
    line-height: 1.45;
}

.pwb__review-body {
    min-height: 0;
    overflow-y: auto;
    padding: 16px 20px;
}

.pwb__review-scope {
    padding: 10px 12px;
    border: 1px solid rgba(103, 232, 249, 0.28);
    border-radius: 9px;
    background: rgba(6, 182, 212, 0.08);
    color: #cffafe;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.45;
}

.pwb__review-scope.is-marketplace {
    border-color: rgba(251, 191, 36, 0.38);
    background: rgba(251, 191, 36, 0.09);
    color: #fef3c7;
}

.pwb__review-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 14px 0 9px;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.7rem;
}

.pwb__review-summary strong {
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.82rem;
}

.pwb__review-table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(99, 122, 174, 0.24);
    border-radius: 10px;
}

.pwb__review-table {
    width: 100%;
    min-width: 620px;
    border-collapse: collapse;
    font-size: 0.7rem;
}

.pwb__review-table th,
.pwb__review-table td {
    padding: 10px 12px;
    border-bottom: 1px solid rgba(99, 122, 174, 0.16);
    text-align: left;
    vertical-align: middle;
}

.pwb__review-table th {
    background: rgba(30, 41, 59, 0.74);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.61rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.pwb__review-table tbody tr:last-child td {
    border-bottom: 0;
}

.pwb__review-destination {
    color: #a5f3fc;
    font-weight: 800;
}

.pwb__review-field small {
    display: block;
    margin-top: 2px;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.58rem;
}

.pwb__review-before {
    color: var(--pv-text-secondary, #a8b3c7);
    text-decoration: line-through;
    text-decoration-color: rgba(248, 113, 113, 0.7);
}

.pwb__review-after {
    color: #bbf7d0;
    font-weight: 800;
}

.pwb__review-empty {
    margin: 0;
    padding: 22px;
    color: var(--pv-text-secondary, #a8b3c7);
    text-align: center;
}

.pwb__review-effects {
    margin-top: 12px;
    padding: 11px 12px;
    border: 1px solid rgba(99, 122, 174, 0.2);
    border-radius: 9px;
    background: rgba(15, 23, 42, 0.52);
}

.pwb__review-effects h4 {
    font-size: 0.7rem;
}

.pwb__review-effects ul {
    margin: 7px 0 0;
    padding-left: 18px;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.66rem;
    line-height: 1.5;
}

.pwb__review-actions {
    display: flex;
    justify-content: flex-end;
    gap: 9px;
    padding: 14px 20px;
    border-top: 1px solid var(--pv-line, rgba(99, 122, 174, 0.24));
    background: rgba(15, 23, 42, 0.72);
}

.pwb__review-actions .pwb__button--primary {
    margin-left: 0;
}

.pwb__review-dialog.is-publishing {
    border-color: rgba(251, 191, 36, 0.48);
}

.pwb__review-dialog.is-publishing .pwb__button--primary {
    background: #d97706;
}

.pwb__analysis-warning {
    margin-bottom: 9px;
    padding: 8px 10px;
    border: 1px solid rgba(251, 191, 36, 0.34);
    border-radius: 8px;
    background: rgba(251, 191, 36, 0.08);
    color: var(--pv-warning-text, #fde68a);
    font-size: 0.68rem;
    line-height: 1.45;
}

.pwb__table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(99, 122, 174, 0.2);
    border-radius: 9px;
}

.pwb__scenario-table {
    width: 100%;
    min-width: 610px;
    border-collapse: collapse;
    font-size: 0.66rem;
}

.pwb__scenario-table th,
.pwb__scenario-table td {
    padding: 8px 9px;
    border-bottom: 1px solid rgba(99, 122, 174, 0.15);
    text-align: right;
    white-space: nowrap;
}

.pwb__scenario-table th:first-child,
.pwb__scenario-table td:first-child {
    text-align: left;
}

.pwb__scenario-table th {
    background: rgba(30, 41, 59, 0.55);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.58rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.pwb__scenario-table td {
    color: #dbe5f4;
}

.pwb__scenario-table td.pwb__scenario-potential {
    min-width: 210px;
    white-space: normal;
}

.pwb__scenario-potential strong,
.pwb__scenario-potential small {
    display: block;
}

.pwb__scenario-potential small {
    margin-top: 3px;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.56rem;
    line-height: 1.35;
}

.pwb__scenario-table tr:last-child td {
    border-bottom: 0;
}

.pwb__scenario-table .is-recommended td {
    background: rgba(99, 102, 241, 0.06);
}

.pwb__scenario-table .is-draft td {
    background: rgba(251, 191, 36, 0.07);
}

.pwb__scenario-table .is-saved td {
    background: rgba(74, 222, 128, 0.06);
}

.pwb__scenario-table tr.is-recommended:first-child td {
    border-top: 1px dashed rgba(129, 140, 248, 0.45);
}

.pwb__chart-card {
    margin-top: 11px;
    padding: 11px;
    border-radius: 10px;
}

.pwb__history-data {
    margin-top: 9px;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.68rem;
}

.pwb__history-data summary {
    width: fit-content;
    cursor: pointer;
    font-weight: 700;
}

.pwb__history-data .pwb__table-wrap {
    margin-top: 8px;
}

.pwb__unassigned-evidence {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;
    margin: 8px 0 0;
    padding: 7px 9px;
    border: 1px solid rgba(251, 191, 36, 0.25);
    border-radius: 8px;
    background: rgba(251, 191, 36, 0.07);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.61rem;
    line-height: 1.4;
}

.pwb__unassigned-evidence[hidden] {
    display: none;
}

.pwb__unassigned-evidence strong {
    flex: 0 0 auto;
    color: var(--pv-amber, #fbbf24);
}

.pwb__history-table {
    width: 100%;
    min-width: 560px;
    border-collapse: collapse;
}

.pwb__history-table th,
.pwb__history-table td {
    padding: 7px 8px;
    border-bottom: 1px solid rgba(99, 122, 174, 0.15);
    text-align: right;
}

.pwb__history-table th:first-child,
.pwb__history-table td:first-child {
    text-align: left;
}

.pwb__demand-estimates {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-top: 10px;
    margin-bottom: 10px;
}

.pwb__drivers-context {
    display: grid;
    gap: 5px;
    margin: 0 0 9px;
    padding: 9px 10px;
    border: 1px solid rgba(99, 122, 174, 0.2);
    border-radius: 8px;
    background: rgba(7, 13, 27, 0.25);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.62rem;
    line-height: 1.45;
}

.pwb__drivers-context p {
    margin: 0;
}

.pwb__drivers-context strong {
    color: var(--pv-text-primary, #f1f5f9);
}

.pwb__history-table.pwb__drivers-table {
    min-width: 1540px;
}

.pwb__drivers-table th,
.pwb__drivers-table td {
    white-space: nowrap;
}

.pwb__drivers-table th:last-child,
.pwb__drivers-table td:last-child {
    min-width: 330px;
    white-space: normal;
}

.pwb__chart-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}

.pwb__chart-heading h4 {
    margin: 0;
    font-size: 0.73rem;
}

.pwb__chart-heading p {
    margin: 3px 0 0;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.61rem;
}

.pwb__chart-heading > span {
    color: var(--pv-text-muted, #71809b);
    font-size: 0.58rem;
}

.pwb__chart-shell {
    position: relative;
    height: 220px;
}

.pwb__evidence-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 10px;
}

.pwb__evidence-grid article {
    min-width: 0;
    padding: 9px 10px;
    border-radius: 9px;
}

.pwb__limitations {
    margin-top: 10px;
    border-top: 1px solid rgba(99, 122, 174, 0.18);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.65rem;
}

.pwb__analysis-note {
    margin: 8px 0 0;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.59rem;
    line-height: 1.4;
}

.pwb__limitations summary {
    padding: 10px 0 4px;
    cursor: pointer;
    color: #cbd5e1;
    font-weight: 700;
}

.pwb__limitations p,
.pwb__limitations ul {
    margin: 6px 0;
    line-height: 1.45;
}

.pwb__fatal strong {
    color: #fecaca;
}

.pwb__sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.pwb__aggregate,
.pwb__matrix-card,
.pwb__analysis,
.pwb__costs,
.pwb__cost-validation {
    border: 1px solid var(--pv-card-border, rgba(99, 122, 174, 0.25));
    background: var(--pv-card-surface, rgba(17, 27, 48, 0.72));
    backdrop-filter: var(--pv-glass-blur, blur(12px));
    -webkit-backdrop-filter: var(--pv-glass-blur, blur(12px));
}

.pwb__aggregate,
.pwb__matrix-card {
    margin-bottom: 14px;
    padding: 14px;
    border-radius: var(--pv-card-radius, 12px);
}

.pwb__section-heading--compact {
    margin-bottom: 9px;
}

.pwb__alignment-note {
    display: grid;
    grid-template-columns: max-content max-content minmax(220px, 1fr);
    align-items: center;
    gap: 8px 10px;
    margin-bottom: 11px;
    padding: 9px 11px;
    border: 1px solid color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 24%, transparent);
    border-radius: var(--pv-input-radius, 9px);
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 6%, transparent);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.65rem;
    line-height: 1.4;
}

.pwb__alignment-note strong {
    color: var(--pv-accent-cyan, #67e8f9);
    font-size: 0.72rem;
}

.pwb__alignment-label {
    color: var(--pv-text-muted, #71809b);
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.pwb__read-model-status {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    margin: -2px 0 11px;
    padding: 8px 10px;
    border: 1px solid var(--pv-line, rgba(99, 122, 174, 0.18));
    border-radius: var(--pv-input-radius, 9px);
    background: color-mix(in srgb, var(--pv-card-surface-solid, #121828) 76%, transparent);
    color: var(--pv-text-muted, #71809b);
    font-size: 0.62rem;
}

.pwb__read-model-status strong {
    color: var(--pv-text-secondary, #a8b3c7);
}

.pwb__read-model-status.is-fresh strong {
    color: var(--pv-success-text, #86efac);
}

.pwb__read-model-status.is-stale strong {
    color: var(--pv-warning-text, #fde68a);
}

.pwb__matrix-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.62rem;
}

.pwb__matrix-toolbar .pwb__button {
    min-height: 28px;
    padding: 4px 9px;
}

.pwb__reconciliation-warning {
    margin: -2px 0 11px;
}

.pwb__platform-table {
    width: 100%;
    min-width: 920px;
    border-collapse: separate;
    border-spacing: 0;
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.66rem;
}

.pwb__platform-table th,
.pwb__platform-table td {
    padding: 9px 8px;
    border-bottom: 1px solid var(--pv-line, rgba(99, 122, 174, 0.15));
    text-align: right;
    vertical-align: top;
}

.pwb__platform-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--pv-card-surface-solid, #121828);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.57rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.pwb__platform-table th:first-child,
.pwb__platform-table td:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
    min-width: 144px;
    text-align: left;
    background: var(--pv-card-surface-solid, #121828);
}

.pwb__platform-table thead th:first-child {
    z-index: 3;
}

.pwb__platform-table tbody tr {
    transition:
        background var(--pv-duration-fast, 150ms) var(--pv-ease-out, ease),
        box-shadow var(--pv-duration-fast, 150ms) var(--pv-ease-out, ease);
}

.pwb__platform-table tbody tr.is-selected {
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 7%, transparent);
    box-shadow: inset 3px 0 0 var(--pv-accent-cyan, #67e8f9);
}

.pwb__platform-table tbody tr.is-selected th:first-child {
    background: color-mix(in srgb, var(--pv-card-surface-solid, #121828) 92%, var(--pv-accent-cyan, #67e8f9));
}

.pwb__platform-table td > strong,
.pwb__platform-table td > small {
    display: block;
}

.pwb__platform-table td > small {
    max-width: 130px;
    margin: 3px 0 0 auto;
    color: var(--pv-text-muted, #71809b);
    line-height: 1.35;
}

.pwb__live-price.is-promotional strong,
#pwb-live-price-context.is-promotional {
    color: var(--pv-success-text, #86efac);
}

.pwb__platform-button {
    display: block;
    width: 100%;
    padding: 4px 6px;
    border: 1px solid transparent;
    border-radius: var(--pv-input-radius, 8px);
    background: transparent;
    color: var(--pv-text-primary, #f1f5f9);
    cursor: pointer;
    font: inherit;
    font-weight: 800;
    text-align: left;
}

.pwb__platform-button:hover,
.pwb__platform-button[aria-pressed="true"] {
    border-color: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 42%, transparent);
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 9%, transparent);
    color: var(--pv-accent-cyan, #a5f3fc);
}

.pwb__matrix-input {
    display: block;
    min-width: 112px;
    position: relative;
}

.pwb__matrix-price-cell {
    min-width: 142px;
    position: relative;
}

.pwb__price-margin-tooltip,
.pricing-price-margin-tooltip,
.pricing-advertising-tooltip,
.pricing-ddp-tooltip {
    position: absolute;
    z-index: 80;
    left: 50%;
    bottom: calc(100% + 7px);
    width: min(310px, 72vw);
    padding: 8px 10px;
    border: 1px solid rgba(103, 232, 249, 0.35);
    border-radius: 8px;
    background: rgba(3, 10, 24, 0.98);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.38);
    color: #dbeafe;
    font-size: 0.58rem;
    font-weight: 600;
    line-height: 1.45;
    text-align: left;
    white-space: normal;
    pointer-events: none;
    visibility: hidden;
    opacity: 0;
    transform: translate(-50%, 4px);
}

.pwb__matrix-suggestion:hover + .pwb__price-margin-tooltip,
.pwb__matrix-suggestion:focus-visible + .pwb__price-margin-tooltip,
.pwb__matrix-input:hover > .pwb__price-margin-tooltip,
.pwb__matrix-input:focus-within > .pwb__price-margin-tooltip,
.pricing-fixed-price:hover > .pricing-price-margin-tooltip,
.pricing-fixed-price:focus-visible > .pricing-price-margin-tooltip,
.pricing-bulk-price-input:hover + .pricing-price-margin-tooltip,
.pricing-bulk-price-input:focus-within + .pricing-price-margin-tooltip,
.pricing-inline-price-field:hover > .pricing-price-margin-tooltip,
.pricing-inline-price-field:focus-within > .pricing-price-margin-tooltip,
.pricing-advertising-amount:hover > .pricing-advertising-tooltip,
.pricing-advertising-amount:focus > .pricing-advertising-tooltip,
.pricing-platform-ddp:hover > .pricing-ddp-tooltip,
.pricing-platform-ddp:focus > .pricing-ddp-tooltip {
    visibility: visible;
    opacity: 1;
    transform: translate(-50%, 0);
}

.pwb__matrix-suggestion {
    display: block;
    width: 100%;
    margin: 0 0 5px;
    padding: 3px 5px;
    border: 1px solid color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 28%, transparent);
    border-radius: 6px;
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 7%, transparent);
    color: var(--pv-accent-cyan, #a5f3fc);
    cursor: pointer;
    font: inherit;
    font-size: 0.53rem;
    font-weight: 750;
    line-height: 1.3;
    text-align: center;
}

.pwb__matrix-suggestion:hover:not(:disabled) {
    border-color: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 58%, transparent);
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 13%, transparent);
}

.pwb__matrix-suggestion:disabled {
    border-color: var(--pv-line, rgba(99, 122, 174, 0.15));
    background: transparent;
    color: var(--pv-text-muted, #71809b);
    cursor: not-allowed;
    opacity: 0.72;
}

.pwb__matrix-input .pwb__money-input {
    grid-template-columns: 30px minmax(76px, 1fr);
}

.pwb__matrix-input .pwb__currency {
    padding: 0 5px;
    font-size: 0.5rem;
}

.pwb__matrix-input input {
    width: 100%;
    min-width: 0;
    padding: 7px 6px;
    border: 0;
    border-left: 1px solid var(--pv-line, rgba(99, 122, 174, 0.2));
    border-radius: 0;
    background: transparent;
    color: var(--pv-text-primary, #f1f5f9);
    font-family: var(--pv-font-mono, monospace);
    font-size: 0.69rem;
    font-weight: 700;
    text-align: right;
}

.pwb__matrix-input input::placeholder {
    color: var(--pv-text-muted, #71809b);
    font-family: var(--pv-font-family, inherit);
    font-size: 0.58rem;
    font-weight: 600;
}

.pwb__matrix-cost-cell {
    min-width: 128px;
}

.pwb__matrix-cost-cell > strong {
    white-space: nowrap;
}

.pwb__matrix-cost-detail {
    margin-top: 6px;
    padding: 4px 7px;
    border: 1px solid color-mix(in srgb, var(--pv-accent, #818cf8) 38%, transparent);
    border-radius: 6px;
    background: color-mix(in srgb, var(--pv-accent, #818cf8) 8%, transparent);
    color: var(--pv-accent-soft, #c7d2fe);
    cursor: pointer;
    font: inherit;
    font-size: 0.55rem;
    font-weight: 750;
}

.pwb__matrix-cost-detail:hover {
    border-color: color-mix(in srgb, var(--pv-accent, #818cf8) 62%, transparent);
}

.pwb__matrix-input.has-error .pwb__money-input {
    border-color: var(--pv-red, #f87171);
}

.pwb__matrix-price-cell.is-targeted,
.pwb__price-field.is-targeted {
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 45%, transparent);
}

.pwb__matrix-input .pwb__field-error,
.pwb__platform-table th > .pwb__field-error {
    min-height: 0;
    margin-top: 3px;
    font-size: 0.52rem;
    line-height: 1.25;
}

.pwb__wholesale-card {
    margin-top: 12px;
    padding: 13px;
    border: 1px solid color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 24%, transparent);
    border-radius: var(--pv-card-radius, 12px);
    background:
        linear-gradient(
            135deg,
            color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 7%, transparent),
            color-mix(in srgb, var(--pv-accent, #6366f1) 4%, transparent)
        ),
        var(--pv-card-surface, rgba(17, 27, 48, 0.72));
}

.pwb__wholesale-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 11px;
}

.pwb__wholesale-heading h4 {
    margin: 0;
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.82rem;
}

.pwb__wholesale-heading p {
    max-width: 760px;
    margin: 4px 0 0;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.64rem;
    line-height: 1.45;
}

.pwb__wholesale-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
}

.pwb__wholesale-grid .pwb__price-field {
    border-color: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 17%, transparent);
}

.pwb__wholesale-grid .pwb__price-field:nth-child(2) {
    border-color: color-mix(in srgb, var(--pv-accent, #6366f1) 24%, transparent);
}

.pwb__wholesale-grid .pwb__price-field:nth-child(3) {
    border-color: color-mix(in srgb, var(--pv-amber, #fbbf24) 28%, transparent);
}

.pwb__wholesale-grid .pwb__price-field:nth-child(4) {
    border-color: color-mix(in srgb, var(--pv-green, #34d399) 24%, transparent);
}

.pwb__wholesale-grid .pwb__price-field.has-error .pwb__money-input {
    border-color: var(--pv-red, #f87171);
}

.pwb__wholesale-tier-label {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 7px;
}

.pwb__wholesale-tier-label strong {
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.72rem;
}

.pwb__wholesale-tier-label small,
.pwb__wholesale-suggestion {
    color: var(--pv-text-muted, #71809b);
    font-size: 0.58rem;
    line-height: 1.35;
}

.pwb__wholesale-suggestion {
    display: block;
    min-height: 16px;
    margin-top: 5px;
}

.pwb__wholesale-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 9px;
    padding-top: 9px;
    border-top: 1px dashed var(--pv-line, rgba(99, 122, 174, 0.2));
}

.pwb__wholesale-footer p {
    margin: 0;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.61rem;
    line-height: 1.4;
}

.pwb__matrix-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 11px;
}

.pwb__matrix-help {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    padding: 9px 11px;
    border: 1px solid color-mix(in srgb, var(--pv-amber, #fbbf24) 25%, transparent);
    border-radius: var(--pv-input-radius, 9px);
    background: color-mix(in srgb, var(--pv-amber, #fbbf24) 6%, transparent);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.64rem;
    line-height: 1.4;
}

.pwb__matrix-help strong {
    color: var(--pv-warning-text, #fde68a);
}

.pwb__analysis {
    margin: 0 0 14px;
}

.pwb__summary--selected {
    margin-bottom: 11px;
}

.pwb__simulator {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(170px, 0.35fr) minmax(180px, 0.35fr);
    align-items: end;
    gap: 12px;
    margin-bottom: 11px;
    padding: 10px 12px;
    border: 1px solid color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 22%, transparent);
    border-radius: var(--pv-input-radius, 10px);
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 5%, transparent);
}

.pwb__simulator > div {
    display: grid;
    gap: 3px;
}

.pwb__simulator > div strong {
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.73rem;
}

.pwb__simulator > div span {
    color: var(--pv-text-muted, #71809b);
    font-size: 0.62rem;
    line-height: 1.4;
}

.pwb__simulator label {
    display: grid;
    gap: 5px;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.61rem;
    font-weight: 700;
}

.pwb__simulator .pwb__select {
    width: 100%;
}

.pwb__costs {
    margin-top: 10px;
    padding: 11px;
    border-radius: var(--pv-input-radius, 10px);
}

.pwb__cost-summary-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    cursor: pointer;
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.72rem;
    font-weight: 750;
    list-style: none;
}

.pwb__cost-summary-toggle::-webkit-details-marker {
    display: none;
}

.pwb__cost-summary-toggle::before {
    content: "▸";
    color: var(--pv-accent-cyan, #67e8f9);
}

.pwb__costs[open] .pwb__cost-summary-toggle::before {
    content: "▾";
}

.pwb__cost-summary-toggle > span {
    margin-right: auto;
}

.pwb__cost-summary-toggle > strong {
    color: var(--pv-accent-cyan, #a5f3fc);
    font-family: var(--pv-font-mono, monospace);
    font-size: 0.7rem;
}

.pwb__cost-details-note {
    margin: 9px 0;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.61rem;
    line-height: 1.4;
}

.pwb__cost-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pwb__cost-list li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 3px 8px;
    padding: 7px 8px;
    border: 1px solid var(--pv-line, rgba(99, 122, 174, 0.16));
    border-radius: 7px;
    background: color-mix(in srgb, var(--pv-card-surface-solid, #121828) 72%, transparent);
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.6rem;
}

.pwb__cost-list li strong {
    color: var(--pv-text-primary, #f1f5f9);
    font-family: var(--pv-font-mono, monospace);
}

.pwb__cost-list li small {
    grid-column: 1 / -1;
    color: var(--pv-text-muted, #71809b);
}

.pwb__cost-list li.is-note {
    grid-column: 1 / -1;
    display: block;
    color: var(--pv-warning-text, #fde68a);
}

.pwb__cost-list li.is-total {
    border-color: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 38%, transparent);
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 8%, transparent);
}

.pwb__cost-list li.is-total span,
.pwb__cost-list li.is-total strong {
    color: var(--pv-accent-cyan, #a5f3fc);
}

.pwb__cost-validation {
    margin-top: 10px;
    padding: 11px;
    border-radius: var(--pv-input-radius, 10px);
}

.pwb__cost-validation h4 {
    margin: 0;
    color: var(--pv-text-primary, #f1f5f9);
    font-size: 0.78rem;
}

.pwb__validation-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    margin-bottom: 8px;
}

.pwb__validation-summary article {
    min-width: 0;
    padding: 8px;
    border: 1px solid var(--pv-line, rgba(99, 122, 174, 0.16));
    border-radius: 8px;
    background: color-mix(in srgb, var(--pv-card-surface-solid, #121828) 72%, transparent);
}

.pwb__validation-summary span,
.pwb__validation-summary strong {
    display: block;
}

.pwb__validation-summary span {
    color: var(--pv-text-muted, #71809b);
    font-size: 0.54rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.pwb__validation-summary strong {
    margin-top: 3px;
    color: var(--pv-text-primary, #f1f5f9);
    font-family: var(--pv-font-mono, monospace);
    font-size: 0.65rem;
    overflow-wrap: anywhere;
}

.pwb__validation-note {
    margin: 0 0 8px;
    padding: 7px 9px;
    border-left: 3px solid var(--pv-warning, #fbbf24);
    border-radius: 5px;
    background: color-mix(in srgb, var(--pv-warning, #fbbf24) 7%, transparent);
    color: var(--pv-warning-text, #fde68a);
    font-size: 0.59rem;
    line-height: 1.45;
}

.pwb__validation-table {
    width: 100%;
    min-width: 650px;
    border-collapse: collapse;
    color: var(--pv-text-secondary, #a8b3c7);
    font-size: 0.61rem;
}

.pwb__validation-table th,
.pwb__validation-table td {
    padding: 7px 8px;
    border-bottom: 1px solid var(--pv-line, rgba(99, 122, 174, 0.15));
    text-align: right;
}

.pwb__validation-table th:first-child,
.pwb__validation-table td:first-child {
    text-align: left;
}

.pwb__validation-table th {
    color: var(--pv-text-muted, #71809b);
    font-size: 0.54rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.pwb__validation-table td strong,
.pwb__validation-table td small {
    display: block;
}

.pwb__validation-table td small {
    margin-top: 2px;
    color: var(--pv-text-muted, #71809b);
    font-size: 0.53rem;
}

.pwb__validation-table td.is-over {
    color: var(--pv-red, #f87171);
}

.pwb__validation-table td.is-under {
    color: var(--pv-green, #4ade80);
}

.pwb__validation-table tr.is-total td {
    border-top: 1px solid color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 40%, transparent);
    background: color-mix(in srgb, var(--pv-accent-cyan, #67e8f9) 7%, transparent);
    color: var(--pv-accent-cyan, #a5f3fc);
}

.pwb__validation-empty {
    padding: 12px !important;
    color: var(--pv-text-muted, #71809b);
    text-align: center !important;
}

.pwb__evidence-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.pwb__history-table {
    min-width: 1180px;
    font-size: 0.61rem;
}

.pwb__history-table th,
.pwb__history-table td {
    vertical-align: top;
}

.pwb__history-table td:nth-child(3),
.pwb__history-table td:nth-child(4),
.pwb__history-table td:nth-child(7),
.pwb__history-table td:nth-child(8),
.pwb__history-table td:nth-child(9) {
    white-space: normal;
    min-width: 140px;
}

.pwb__history-table td:nth-child(3) {
    min-width: 210px;
}

.pwb__chart-shell {
    height: 260px;
}

.pricing-fixed-price {
    display: inline-flex;
    position: relative;
    min-width: 76px;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
    padding: 4px 7px;
    border: 1px solid rgba(99, 102, 241, 0.24);
    border-radius: 7px;
    background: rgba(99, 102, 241, 0.07);
    color: #dbeafe;
    cursor: pointer;
    font: inherit;
    text-align: right;
}

.pricing-fixed-price:hover {
    border-color: rgba(103, 232, 249, 0.48);
    background: rgba(6, 182, 212, 0.1);
}

.pricing-fixed-price strong {
    font-size: 0.68rem;
}

.pricing-fixed-price small {
    color: #71809b;
    font-size: 0.52rem;
}

.pricing-fixed-price.is-unset strong {
    color: #94a3b8;
    font-weight: 600;
}

.pricing-fixed-price.is-legacy {
    border-style: dashed;
    border-color: rgba(251, 191, 36, 0.38);
    background: rgba(251, 191, 36, 0.06);
}

.pricing-fixed-price.is-legacy small {
    color: var(--pv-warning-text, #fde68a);
}

.pricing-detail-table td.pricing-inline-editor-cell {
    vertical-align: top !important;
    padding: 8px !important;
    border-left: 2px solid rgba(103, 232, 249, 0.25) !important;
}

.pricing-inline-editor {
    width: 100%;
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(103, 232, 249, 0.2);
    border-radius: 8px;
    background: rgba(8, 17, 32, 0.6);
    text-align: left;
}

.pricing-inline-price-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    gap: 10px;
}

.pricing-inline-price-field {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 5px;
    width: 100%;
    min-width: 0;
    text-align: left;
}
.pricing-inline-price-field:first-child > .pricing-price-margin-tooltip {
    left: 0;
    transform: translateY(4px);
}
.pricing-inline-price-field:last-child > .pricing-price-margin-tooltip,
[data-pricing-price-cell="precio_lightning"] .pricing-fixed-price > .pricing-price-margin-tooltip {
    left: auto;
    right: 0;
    transform: translateY(4px);
}
.pricing-inline-price-field:first-child:hover > .pricing-price-margin-tooltip,
.pricing-inline-price-field:first-child:focus-within > .pricing-price-margin-tooltip,
.pricing-inline-price-field:last-child:hover > .pricing-price-margin-tooltip,
.pricing-inline-price-field:last-child:focus-within > .pricing-price-margin-tooltip,
[data-pricing-price-cell="precio_lightning"] .pricing-fixed-price:hover > .pricing-price-margin-tooltip,
[data-pricing-price-cell="precio_lightning"] .pricing-fixed-price:focus-visible > .pricing-price-margin-tooltip {
    transform: translateY(0);
}
.pricing-inline-price-grid:has(.pricing-inline-price-field:hover) .pricing-inline-price-field:not(:hover) > .pricing-price-margin-tooltip {
    visibility: hidden;
    opacity: 0;
}

.pricing-inline-price-label {
    color: #cbd5e1;
    font-size: 0.65rem;
    font-weight: 600;
    line-height: 1.3;
}
.pricing-inline-price-input {
    display: flex;
    align-items: center;
    gap: 4px;
    width: 100%;
    min-width: 0;
    height: 34px;
    box-sizing: border-box;
    border: 1px solid #334155;
    border-radius: 6px;
    padding: 0 8px;
    background: #0b1424;
    color: #94a3b8;
}
.pricing-inline-price-input:focus-within {
    border-color: #67e8f9;
    box-shadow: 0 0 0 2px rgba(103, 232, 249, 0.15);
}
.pricing-inline-price-input:has([aria-invalid="true"]) { border-color: #f87171; }
.pricing-inline-editor .pricing-inline-price-input > input,
.pricing-inline-editor .pricing-inline-price-input > input:focus,
.pricing-inline-editor .pricing-inline-price-input > input:focus-visible {
    flex: 1 1 0;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    color: #f1f5f9;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 700;
    text-align: right;
    outline: none !important;
    box-shadow: none !important;
}
.pricing-inline-price-margin {
    min-height: 2.8em;
    font-size: 0.66rem;
    line-height: 1.4;
    font-variant-numeric: tabular-nums;
    white-space: normal;
    overflow-wrap: anywhere;
}
.pricing-inline-price-error, .pricing-inline-price-status { font-size: 0.6rem; line-height: 1.4; white-space: normal; }
.pricing-inline-price-error, .pricing-inline-price-status[data-kind="error"] { color: #fca5a5; }
.pricing-inline-price-error:empty { display: none; }
.pricing-inline-price-status { color: #94a3b8; }
.pricing-inline-price-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid rgba(148, 163, 184, 0.12);
}
.pricing-inline-price-feedback { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.pricing-inline-price-feedback > small { display: block; }
.pricing-inline-price-actions { display: flex; flex-shrink: 0; gap: 6px; }
.pricing-inline-price-actions button, .pricing-inline-price-retry {
    border: 1px solid rgba(103, 232, 249, 0.35);
    border-radius: 5px;
    min-height: 28px;
    padding: 5px 9px;
    background: rgba(6, 182, 212, 0.12);
    color: #a5f3fc;
    cursor: pointer;
    font: inherit;
    font-size: 0.67rem;
    line-height: 1.2;
}
.pricing-inline-price-actions [data-pricing-inline-action="cancel"] { background: transparent; color: #cbd5e1; border-color: #475569; }
.pricing-inline-price-actions button:disabled { opacity: 0.45; cursor: default; }
.pricing-inline-price-actions button:focus-visible, .pricing-inline-price-retry:focus-visible { outline: 2px solid #67e8f9; outline-offset: 2px; }
.pricing-inline-price-retry[hidden] { display: none; }

.pricing-base-publish-trigger {
    display: block;
    margin: 5px 0 0 auto;
    padding: 2px 4px;
    border: 0;
    background: transparent;
    color: #67e8f9;
    font: inherit;
    font-size: 0.63rem;
    line-height: 1.3;
    cursor: pointer;
}
.pricing-base-publish-trigger:hover { color: #cffafe; text-decoration: underline; }
.pricing-base-publication {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    padding: 12px;
    border: 1px solid rgba(103, 232, 249, 0.27);
    border-radius: 8px;
    background: #101c2c;
    color: #cbd5e1;
    text-align: left;
    white-space: normal;
    overflow-wrap: anywhere;
}
.pricing-base-publication-heading {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
    gap: 4px 12px;
    font-size: 0.69rem;
    line-height: 1.4;
}
.pricing-base-publication-heading strong { color: #e2e8f0; }
.pricing-base-publication-heading span,
.pricing-base-publication-id,
.pricing-base-publication-reference { color: #94a3b8; font-size: 0.61rem; }
.pricing-base-publication-id { margin: 5px 0 0; }
.pricing-base-publication-listing { display: block; margin-top: 8px; color: #94a3b8; font-size: 0.65rem; }
.pricing-base-publication .pricing-base-publication-listing select {
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    margin: 4px 0 0;
    padding: 7px 8px;
    border: 1px solid #475569;
    border-radius: 5px;
    background: #0b1424;
    color: #e2e8f0;
    font: inherit;
}
.pricing-base-publication-prices {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 20px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    margin: 10px 0;
    padding: 9px 0;
    border-top: 1px solid rgba(148, 163, 184, 0.15);
    border-bottom: 1px solid rgba(148, 163, 184, 0.15);
}
.pricing-base-publication-prices > div { min-width: 0; }
.pricing-base-publication-prices > div > small { display: block; margin-bottom: 3px; color: #94a3b8; font-size: 0.61rem; }
.pricing-base-publication-prices strong { color: #e2e8f0; font-size: 0.85rem; font-variant-numeric: tabular-nums; }
.pricing-base-publication-prices strong small { font-size: 0.58rem; font-weight: 500; color: #94a3b8; }
.pricing-base-publication-prices > span { text-align: center; color: #67e8f9; }
.pricing-base-publication-status { margin: 0; font-size: 0.64rem; line-height: 1.5; }
.pricing-base-publication-status[data-kind="error"] { color: #fca5a5; }
.pricing-base-publication-status[data-kind="success"] { color: #86efac; }
.pricing-base-publication-reference { display: block; margin-top: 5px; }
.pricing-base-publication-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; margin-top: 10px; }
.pricing-base-publication-actions button {
    box-sizing: border-box;
    min-height: 30px;
    margin: 0;
    padding: 6px 9px;
    border: 1px solid #475569;
    border-radius: 5px;
    background: transparent;
    color: #cbd5e1;
    font: inherit;
    font-size: 0.64rem;
    line-height: 1.2;
    cursor: pointer;
}
.pricing-base-publication-actions button.is-primary { background: #0e7490; border-color: #0891b2; color: #ecfeff; }
.pricing-base-publication-actions button:disabled { opacity: 0.45; cursor: default; }
.pricing-base-publication-actions button:focus-visible,
.pricing-base-publication-listing select:focus-visible,
.pricing-base-publish-trigger:focus-visible { outline: 2px solid #67e8f9; outline-offset: 2px; }

.pricing-publication-promotion { margin: 10px 0; padding-bottom: 10px; border-bottom: 1px solid rgba(148, 163, 184, 0.15); }
.pricing-publication-promotion[hidden], .pricing-publication-acceptance[hidden] { display: none; }
.pricing-publication-promotion-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: end; gap: 12px; }
.pricing-publication-promotion-grid small, .pricing-publication-promotion-field label { display: block; margin: 0 0 5px; color: #94a3b8; font-size: 0.65rem; }
.pricing-publication-promotion-grid strong { display: block; color: #e2e8f0; font-size: 0.82rem; font-variant-numeric: tabular-nums; }
.pricing-publication-promotion-input { display: flex; align-items: center; gap: 6px; min-width: 0; padding: 7px 9px; border: 1px solid #475569; border-radius: 6px; background: #0b1424; }
.pricing-publication-promotion-input > span { color: #94a3b8; font-size: 0.8rem; }
.pricing-base-publication .pricing-publication-promotion-input input { box-sizing: border-box; width: 100%; min-width: 0; margin: 0; padding: 2px 0; border: 0; border-radius: 0; background: transparent; color: #e2e8f0; font: inherit; font-size: 0.82rem; font-weight: 600; text-align: right; line-height: 1.4; }
.pricing-publication-promotion-input:focus-within { border-color: #67e8f9; outline: 1px solid #67e8f9; }
.pricing-base-publication .pricing-publication-promotion-input input:focus { outline: none; box-shadow: none; }
.pricing-base-publication .pricing-publication-promotion-input input:disabled { opacity: 0.6; }
.pricing-publication-promotion-hint { margin: 7px 0; color: #94a3b8; font-size: 0.62rem; line-height: 1.45; }
.pricing-publication-result { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; padding: 8px 0; }
.pricing-publication-result small { font-size: 0.63rem; color: #94a3b8; }
.pricing-publication-result strong { font-size: 0.8rem; color: #e2e8f0; font-variant-numeric: tabular-nums; }
.pricing-publication-result > span { flex-basis: 100%; font-size: 0.65rem; line-height: 1.45; }
.pricing-publication-checkout { font-size: 0.63rem; line-height: 1.45; }
.pricing-publication-checkout > strong { display: block; color: #cbd5e1; margin-top: 8px; }
.pricing-publication-checkout p { margin: 3px 0 6px; color: #94a3b8; }
.pricing-publication-checkout ul { list-style: none; padding: 0; margin: 0; max-height: 220px; overflow-y: auto; }
.pricing-publication-checkout li { padding: 7px 0; border-top: 1px solid rgba(148, 163, 184, 0.12); }
.pricing-publication-checkout li > div:first-child { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 3px 8px; }
.pricing-publication-checkout li > div:first-child > span { color: #94a3b8; }
.pricing-publication-checkout-prices { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; font-variant-numeric: tabular-nums; }
.pricing-publication-checkout-prices > strong { color: #e2e8f0; }
.pricing-publication-acceptance { display: flex; align-items: flex-start; gap: 8px; margin-top: 10px; color: #e2e8f0; font-size: 0.65rem; line-height: 1.5; cursor: pointer; }
.pricing-base-publication .pricing-publication-acceptance input { flex: 0 0 15px; width: 15px; height: 15px; margin: 2px 0 0; accent-color: #0891b2; }
.pricing-publication-acceptance input:focus-visible { outline: 2px solid #67e8f9; outline-offset: 2px; }

.pricing-parent-sku-cell {
    padding: 6px 8px;
    white-space: nowrap;
}

.pricing-parent-sku-code {
    display: block;
    margin-bottom: 5px;
    color: #818cf8;
    font-family: "JetBrains Mono", monospace;
    font-size: 0.68rem;
}

.pricing-parent-analysis-button {
    display: inline-flex;
    min-height: 32px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 1px;
    padding: 4px 9px;
    border: 1px solid rgba(103, 232, 249, 0.38);
    border-radius: 8px;
    background: rgba(6, 182, 212, 0.1);
    color: #a5f3fc;
    cursor: pointer;
    font: inherit;
    text-align: left;
    white-space: nowrap;
}

.pricing-parent-analysis-button:hover {
    border-color: rgba(103, 232, 249, 0.62);
    background: rgba(6, 182, 212, 0.16);
}

.pricing-parent-analysis-button.is-disabled {
    border-color: rgba(100, 116, 139, 0.2);
    background: rgba(100, 116, 139, 0.06);
    color: #64748b;
    cursor: not-allowed;
}

.pricing-parent-analysis-button.is-disabled:hover {
    border-color: rgba(100, 116, 139, 0.2);
    background: rgba(100, 116, 139, 0.06);
}

.pricing-parent-analysis-button.is-disabled small {
    color: #64748b;
}

.pricing-parent-analysis-button strong {
    font-size: 0.62rem;
    line-height: 1.2;
}

.pricing-parent-analysis-button small {
    color: #67e8f9;
    font-size: 0.5rem;
    font-weight: 600;
    opacity: 0.72;
}

.pricing-expand-button {
    min-height: 30px;
    padding: 3px 7px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.pricing-expand-button[aria-expanded="true"] {
    border-color: rgba(129, 140, 248, 0.4);
    background: rgba(99, 102, 241, 0.1);
}

.pricing-stock-snapshot {
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
}

.pricing-stock-snapshot small {
    color: var(--pv-text-muted, #71809b);
    font-size: 0.58rem;
    font-weight: 600;
}

.pricing-stock-snapshot.current small {
    color: var(--pv-success-text, #86efac);
}

.pricing-stock-snapshot.stale small {
    color: var(--pv-warning-text, #fde68a);
}

.pricing-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.ho-th > small {
    display: block;
    margin-top: 2px;
    color: #64748b;
    font-size: 0.52rem;
    font-weight: 600;
    text-transform: none;
}

.pricing-select-column {
    width: 38px;
    padding: 6px !important;
    text-align: center;
}

.pricing-select-column input {
    width: 16px;
    height: 16px;
    accent-color: #818cf8;
    cursor: pointer;
}

.pricing-current-price-cell {
    padding: 6px 8px;
}

.pricing-current-price {
    display: inline-flex;
    min-width: 86px;
    flex-direction: column;
    align-items: flex-start;
    gap: 1px;
    color: #dbe5f4;
    line-height: 1.2;
    white-space: nowrap;
}

.pricing-current-price strong {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.7rem;
}

.pricing-current-price small,
.pricing-current-price-more {
    color: #71809b;
    font-size: 0.54rem;
    font-weight: 600;
}

.pricing-current-price del {
    color: #94a3b8;
}

.pricing-current-price-platform,
.pricing-current-price-tag {
    display: inline-flex;
    padding: 1px 4px;
    border: 1px solid rgba(129, 140, 248, 0.3);
    border-radius: 4px;
    background: rgba(99, 102, 241, 0.1);
    color: #a5b4fc;
    font-size: 0.48rem;
    font-weight: 800;
    text-transform: uppercase;
}

.pricing-current-price.is-promotional strong {
    color: #86efac;
}

.pricing-current-price.is-promotional .pricing-current-price-tag {
    border-color: rgba(34, 197, 94, 0.32);
    background: rgba(34, 197, 94, 0.1);
    color: #86efac;
}

.pricing-current-price.is-missing {
    color: #64748b;
    font-size: 0.62rem;
}

.pricing-current-price-more {
    display: block;
    margin-top: 2px;
}

.pricing-advertising-estimate {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
    color: #cbd5e1;
    white-space: nowrap;
}

.pricing-advertising-estimate strong {
    font-size: 0.66rem;
}

.pricing-advertising-cell {
    padding: 6px 8px;
    text-align: right;
    white-space: nowrap;
}

.pricing-advertising-amount {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #dbeafe;
    font-variant-numeric: tabular-nums;
    cursor: default;
}

.pricing-advertising-amount:focus-visible,
.pricing-platform-ddp:focus-visible {
    outline: 2px solid #67e8f9;
    outline-offset: 3px;
    border-radius: 4px;
}

.pricing-platform-ddp {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    cursor: default;
    color: #cbd5e1;
    font-variant-numeric: tabular-nums;
}

.pricing-platform-ddp small {
    color: #fcd34d;
    font-size: 0.56rem;
}

.pricing-platform-ddp-cell {
    padding: 6px 8px;
    text-align: center;
}

.pricing-advertising-amount.is-unavailable,
.pricing-advertising-declared {
    color: #94a3b8;
}

.pricing-advertising-amount.is-no-sales {
    color: #fcd34d;
}

.pricing-advertising-amount.is-verified-zero,
.pricing-advertising-amount.is-provisional,
.pricing-advertising-amount.is-prorated {
    display: inline-grid;
    grid-template-columns: auto auto;
    justify-items: end;
    row-gap: 3px;
}

.pricing-advertising-verified {
    grid-column: 1 / -1;
    color: #6ee7b7;
    font-size: 0.6rem;
    font-weight: 500;
}

.pricing-advertising-allocated,
.pricing-advertising-provisional {
    grid-column: 1 / -1;
    color: #fcd34d;
    font-size: 0.6rem;
    font-weight: 500;
}

.pricing-advertising-origin {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 19px;
    height: 19px;
    border-radius: 5px;
    border: 1px solid rgba(96, 165, 250, 0.4);
    background: rgba(96, 165, 250, 0.1);
    color: #93c5fd;
    font-size: 0.63rem;
    font-weight: 750;
}

.pricing-advertising-origin.is-product {
    border-color: rgba(167, 139, 250, 0.4);
    background: rgba(167, 139, 250, 0.12);
    color: #c4b5fd;
}

.pricing-advertising-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 16px;
    margin: 0 0 7px;
    color: #94a3b8;
    font-size: 0.62rem;
}

.pricing-advertising-legend b {
    color: #cbd5e1;
    margin-right: 3px;
}

.pricing-advertising-estimate small,
.pricing-cell-subline {
    display: block;
    margin-top: 2px;
    color: #71809b;
    font-size: 0.52rem;
    font-weight: 600;
    white-space: nowrap;
}

.pricing-total-cost-cell {
    padding: 6px 8px;
    text-align: right;
    white-space: nowrap;
}

.pricing-total-cost-btn {
    min-width: 126px;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
    border-color: color-mix(in srgb, var(--plat-color, #60a5fa) 32%, transparent);
}

.pricing-total-cost-btn strong {
    color: #dbeafe;
    font-size: 0.68rem;
    line-height: 1.15;
}

.pricing-total-cost-btn small {
    color: #71809b;
    font-family: inherit;
    font-size: 0.5rem;
    font-weight: 650;
    line-height: 1.15;
}

.pricing-total-cost-btn.is-incomplete strong {
    color: #fbbf24;
}

.pricing-cost-item-note {
    display: block;
    margin-top: 3px;
    font-size: 0.62rem;
    color: #94a3b8;
    line-height: 1.35;
}

.pricing-detail-row .pricing-total-cost-btn {
    min-width: 112px;
}

.pricing-cost-popover {
    width: min(380px, calc(100vw - 24px));
    max-height: calc(100vh - 24px);
    box-sizing: border-box;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.pricing-cost-pop-row > span {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.pricing-cost-pop-row small {
    color: #64748b;
    font-size: 0.58rem;
    line-height: 1.3;
}

.pricing-cost-pop-platform-details {
    margin: 0 0 5px;
    padding: 0 0 5px 10px;
    border-bottom: 1px solid rgba(51, 65, 85, 0.3);
}

.pricing-cost-pop-platform-details summary {
    padding: 2px 0;
    color: #7dd3fc;
    cursor: pointer;
    font-size: 0.58rem;
    font-weight: 650;
}

.pricing-cost-pop-platform-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 3px 0 2px 9px;
    color: #71809b;
    font-size: 0.6rem;
}

.pricing-cost-pop-platform-row strong {
    color: #94a3b8;
    font-family: 'JetBrains Mono', monospace;
}

.pricing-cost-pop-missing,
.pricing-cost-pop-basis-note {
    margin-top: 7px;
    padding: 6px 8px;
    border-radius: 6px;
    font-size: 0.59rem;
    line-height: 1.4;
}

.pricing-cost-pop-missing {
    border: 1px solid rgba(251, 191, 36, 0.3);
    background: rgba(245, 158, 11, 0.08);
    color: #fde68a;
}

.pricing-cost-pop-basis-note {
    border: 1px solid rgba(74, 222, 128, 0.22);
    background: rgba(34, 197, 94, 0.06);
    color: #a7f3d0;
}

.pricing-row-edit-button,
.pricing-selection-toolbar button,
.pricing-bulk-editor button,
.pricing-bulk-review-dialog button {
    min-height: 30px;
    padding: 5px 10px;
    border: 1px solid rgba(129, 140, 248, 0.34);
    border-radius: 7px;
    background: rgba(99, 102, 241, 0.1);
    color: #c7d2fe;
    cursor: pointer;
    font: inherit;
    font-size: 0.64rem;
    font-weight: 700;
}

.pricing-row-edit-button:hover,
.pricing-selection-toolbar button:hover,
.pricing-bulk-editor button:hover,
.pricing-bulk-review-dialog button:hover {
    border-color: rgba(129, 140, 248, 0.6);
    background: rgba(99, 102, 241, 0.18);
}

.pricing-selection-toolbar button:disabled,
.pricing-bulk-editor button:disabled,
.pricing-bulk-review-dialog button:disabled {
    cursor: not-allowed;
    opacity: 0.48;
}

.pricing-selection-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 10px;
    padding: 9px 12px;
    border: 1px solid rgba(129, 140, 248, 0.28);
    border-radius: 10px;
    background: rgba(99, 102, 241, 0.08);
}

.pricing-selection-toolbar[hidden] {
    display: none;
}

.pricing-selection-toolbar > div:first-child {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.pricing-selection-toolbar strong {
    color: #e0e7ff;
    font-size: 0.75rem;
}

.pricing-selection-toolbar span {
    color: #71809b;
    font-size: 0.62rem;
}

.pricing-selection-actions {
    display: flex;
    gap: 7px;
}

.pricing-selection-actions button:first-child,
.pricing-bulk-footer button:last-child,
.pricing-bulk-review-actions button:last-child {
    background: #4f46e5;
    color: #fff;
}

.pricing-bulk-editor {
    margin-bottom: 14px;
    padding: 14px;
    border: 1px solid rgba(103, 232, 249, 0.26);
    border-radius: 12px;
    background: rgba(8, 15, 29, 0.94);
}

.pricing-bulk-editor[hidden] {
    display: none;
}

.pricing-bulk-heading,
.pricing-bulk-footer {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}

.pricing-bulk-eyebrow {
    color: #67e8f9;
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pricing-bulk-heading h3,
.pricing-bulk-review-dialog h3 {
    margin: 3px 0 4px;
    color: #e5e7eb;
    font-size: 0.94rem;
}

.pricing-bulk-heading p,
.pricing-bulk-footer p,
.pricing-bulk-review-dialog p {
    margin: 0;
    color: #94a3b8;
    font-size: 0.65rem;
    line-height: 1.45;
}

.pricing-bulk-heading label {
    display: flex;
    min-width: 190px;
    flex-direction: column;
    gap: 4px;
    color: #94a3b8;
    font-size: 0.6rem;
    font-weight: 700;
}

.pricing-bulk-heading select {
    min-height: 34px;
    padding: 5px 9px;
    border: 1px solid rgba(100, 116, 139, 0.4);
    border-radius: 7px;
    background: #0b1220;
    color: #dbe5f4;
}

.pricing-bulk-status {
    margin-top: 10px;
    padding: 8px 10px;
    border: 1px solid rgba(96, 165, 250, 0.28);
    border-radius: 8px;
    background: rgba(59, 130, 246, 0.08);
    color: #bfdbfe;
    font-size: 0.67rem;
}

.pricing-bulk-status[data-kind="error"] {
    border-color: rgba(248, 113, 113, 0.36);
    background: rgba(239, 68, 68, 0.08);
    color: #fecaca;
}

.pricing-bulk-status[data-kind="success"] {
    border-color: rgba(74, 222, 128, 0.34);
    background: rgba(34, 197, 94, 0.08);
    color: #bbf7d0;
}

.pricing-bulk-status[data-kind="warning"] {
    border-color: rgba(251, 191, 36, 0.34);
    background: rgba(245, 158, 11, 0.08);
    color: #fde68a;
}

.pricing-bulk-table-wrap,
.pricing-bulk-review-table-wrap {
    margin-top: 12px;
    overflow: auto;
    border: 1px solid rgba(51, 65, 85, 0.38);
    border-radius: 9px;
}

.pricing-bulk-table,
.pricing-bulk-review-table {
    width: 100%;
    min-width: 1180px;
    border-collapse: collapse;
    font-size: 0.65rem;
}

.pricing-bulk-table th,
.pricing-bulk-table td,
.pricing-bulk-review-table th,
.pricing-bulk-review-table td {
    padding: 7px 8px;
    border-bottom: 1px solid rgba(51, 65, 85, 0.28);
    text-align: left;
    vertical-align: top;
}

.pricing-bulk-table thead th,
.pricing-bulk-review-table thead th {
    background: #111827;
    color: #94a3b8;
    font-size: 0.58rem;
    letter-spacing: 0.025em;
    text-transform: uppercase;
}

.pricing-bulk-table tbody th strong,
.pricing-bulk-review-table tbody td strong {
    display: block;
    color: #e2e8f0;
}

.pricing-bulk-table tbody th small,
.pricing-bulk-review-table tbody td small {
    display: block;
    margin-top: 2px;
    color: #64748b;
    font-size: 0.54rem;
}

.pricing-bulk-table tr.is-dirty {
    background: rgba(99, 102, 241, 0.06);
}

.pricing-bulk-table tr.is-unavailable {
    opacity: 0.58;
}

.pricing-bulk-table td.is-money {
    color: #cbd5e1;
    text-align: right;
    white-space: nowrap;
}

.pricing-bulk-table td.is-margin {
    color: var(--pricing-margin, #94a3b8);
    font-weight: 700;
    text-align: center;
}

.pricing-price-margin-cell {
    position: relative;
}

.pricing-bulk-price-input {
    display: flex;
    align-items: center;
    min-width: 112px;
    border: 1px solid rgba(100, 116, 139, 0.35);
    border-radius: 7px;
    background: #0b1220;
}

.pricing-bulk-price-input > span:not(.pricing-sr-only) {
    padding-left: 6px;
    color: #67e8f9;
    font-size: 0.48rem;
    font-weight: 800;
}

.pricing-bulk-price-input input {
    width: 86px;
    min-height: 31px;
    padding: 4px 6px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #e2e8f0;
    font: inherit;
    font-weight: 700;
}

.pricing-bulk-price-input:has(input[aria-invalid="true"]) {
    border-color: rgba(248, 113, 113, 0.68);
}

.pricing-bulk-field-error {
    display: block;
    max-width: 118px;
    margin-top: 3px;
    color: #fca5a5;
    font-size: 0.5rem;
}

.pricing-bulk-footer {
    align-items: center;
    margin-top: 12px;
}

.pricing-bulk-footer > div,
.pricing-bulk-review-actions {
    display: flex;
    gap: 7px;
}

.pricing-bulk-review-layer {
    position: fixed;
    inset: 0;
    z-index: 12020;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(2, 6, 23, 0.82);
    backdrop-filter: blur(5px);
}

.pricing-bulk-review-layer[hidden] {
    display: none;
}

.pricing-bulk-review-dialog {
    width: min(900px, calc(100vw - 32px));
    max-height: calc(100dvh - 48px);
    overflow: auto;
    padding: 18px;
    border: 1px solid rgba(129, 140, 248, 0.42);
    border-radius: 13px;
    background: #0b1220;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.48);
}

.pricing-bulk-review-summary {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
    color: #c7d2fe;
    font-size: 0.7rem;
}

.pricing-bulk-review-table {
    min-width: 680px;
}

.pricing-bulk-review-warning {
    margin-top: 12px;
    padding: 9px 10px;
    border: 1px solid rgba(251, 191, 36, 0.34);
    border-radius: 8px;
    background: rgba(245, 158, 11, 0.08);
    color: #fde68a;
    font-size: 0.65rem;
}

.pricing-bulk-review-actions {
    justify-content: flex-end;
    margin-top: 14px;
}

.pricing-cost-pop-excluded {
    margin-top: 8px;
    padding: 6px 8px;
    border: 1px dashed rgba(251, 191, 36, 0.34);
    border-radius: 6px;
    color: #fde68a;
    font-size: 0.58rem;
}

@media (max-width: 1120px) {
    .pwb__workspace {
        grid-template-columns: 1fr;
    }

    .pwb__simulator {
        grid-template-columns: 1fr 1fr;
    }

    .pwb__simulator > div {
        grid-column: 1 / -1;
    }

    .pwb__evidence-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pwb__demand-estimates {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pwb__wholesale-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .pwb {
        padding: 0;
    }

    .pwb__review-layer {
        padding: 10px;
    }

    .pwb__review-dialog {
        width: calc(100vw - 20px);
        max-height: calc(100dvh - 20px);
    }

    .pwb__dialog {
        width: 100vw;
        max-height: 100dvh;
        min-height: 100dvh;
        border-radius: 0;
    }

    .pwb__header {
        align-items: flex-start;
        padding: 14px;
    }

    .pwb__header-actions {
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .pwb__platform-label {
        display: none;
    }

    .pwb__body {
        padding: 12px max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
    }

    .pwb__summary,
    .pwb__price-grid,
    .pwb__evidence-grid,
    .pwb__validation-summary {
        grid-template-columns: 1fr 1fr;
    }

    .pwb__matrix-options {
        grid-template-columns: 1fr;
    }

    .pwb__matrix-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .pwb__wholesale-grid {
        grid-template-columns: 1fr;
    }

    .pwb__platform-table {
        min-width: 900px;
    }

    .pwb__alignment-note {
        grid-template-columns: 1fr;
        gap: 3px;
    }
}

@media (max-width: 520px) {
    .pwb__summary,
    .pwb__price-grid,
    .pwb__evidence-grid,
    .pwb__validation-summary {
        grid-template-columns: 1fr;
    }

    .pwb__simulator {
        grid-template-columns: 1fr;
    }

    .pwb__simulator > div {
        grid-column: auto;
    }

    .pwb__form-actions {
        position: sticky;
        bottom: 0;
        z-index: 2;
        padding: 9px 0 max(9px, env(safe-area-inset-bottom));
        background: var(--pv-card-surface-solid, #0b1220);
    }

    .pwb__button--primary {
        margin-left: 0;
    }

    .pwb__review-header,
    .pwb__review-body,
    .pwb__review-actions {
        padding-left: 13px;
        padding-right: 13px;
    }

    .pwb__review-summary,
    .pwb__review-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .pwb__wholesale-heading,
    .pwb__wholesale-footer {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pwb__spinner {
        animation: none;
    }
}
.pricing-imported-offers { margin:18px 0; padding:14px; border:1px solid rgba(71,85,105,.4); border-radius:10px; }
.pricing-imported-offers > summary { cursor:pointer; font-size:.82rem; font-weight:600; color:#cbd5e1; }
.pricing-imported-offers > summary span { margin-left:6px; color:#a5b4fc; }
.pricing-imported-offers[open] > summary { margin-bottom:16px; }
