.service-orders{padding:20px;display:flex;flex-direction:column;gap:14px;color:var(--mud-palette-text-primary)}
.so-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.so-header h1{font-size:1.8rem;margin:8px 0 2px;font-weight:800}.so-header p{margin:0;color:var(--mud-palette-text-secondary)}.so-crumb{font-size:.78rem;color:var(--mud-palette-primary)}.so-crumb span{padding:0 12px}.so-notice{display:flex;align-items:center;gap:7px;font-size:.78rem;color:var(--mud-palette-text-secondary)}
.so-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.so-metric{background:var(--mud-palette-surface);border:1px solid var(--mud-palette-lines-default);border-radius:9px;min-height:104px;padding:15px;display:flex;gap:12px;align-items:center;box-shadow:0 2px 10px #0000000a}.so-metric-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#e5f1ff;color:#0877fa}.so-metric-icon.green{background:#ddf9ef;color:#00a66c}.so-metric-icon.orange{background:#fff0d9;color:#f59e0b}.so-metric-icon.red{background:#ffe6e9;color:#fa3051}.so-metric>div{display:flex;flex-direction:column}.so-metric strong{font-size:1.7rem;line-height:1.15}.so-metric span:not(.so-metric-icon){font-size:.8rem}.so-metric small{font-size:.69rem;color:var(--mud-palette-text-secondary)}
.so-filters{display:grid;grid-template-columns:2fr 1.3fr 1.2fr 1.3fr auto;gap:12px;align-items:end;padding:14px;background:var(--mud-palette-surface);border:1px solid var(--mud-palette-lines-default);border-radius:9px}.so-filters label{display:flex;flex-direction:column;gap:5px;font-size:.76rem;font-weight:700;min-width:0}.so-filters input,.so-filters select{height:38px;min-width:0;width:100%;border:1px solid var(--mud-palette-lines-inputs);border-radius:6px;padding:0 10px;background:var(--mud-palette-surface);color:var(--mud-palette-text-primary)}.so-reset{height:38px;display:flex;align-items:center;gap:5px;cursor:pointer;background:transparent;border:0;color:var(--mud-palette-primary)}
.so-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.so-tabs{display:flex;gap:7px;overflow-x:auto}.so-tabs button{white-space:nowrap;padding:10px 13px;border-radius:7px;border:1px solid var(--mud-palette-lines-default);background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);cursor:pointer;font-weight:600}.so-tabs button.selected{background:#0877fa;color:white;border-color:#0877fa}.so-tabs span{margin-left:6px;border-radius:20px;padding:2px 7px;background:#829bc326}.so-demo{font-size:.75rem;color:var(--mud-palette-text-secondary)}
.so-table-panel{border:1px solid var(--mud-palette-lines-default);border-radius:9px;background:var(--mud-palette-surface);overflow:hidden}.so-table-scroll{overflow-x:auto}.so-table-panel table{width:100%;border-collapse:collapse;min-width:850px;text-align:left}.so-table-panel th{background:var(--mud-palette-background-gray);font-size:.75rem;padding:12px}.so-table-panel td{border-top:1px solid var(--mud-palette-lines-default);padding:11px 12px;font-size:.82rem}.so-table-panel td strong,.so-table-panel td small{display:block}.so-table-panel td small{color:var(--mud-palette-text-secondary)}.so-table-panel footer{padding:14px;font-size:.77rem;color:var(--mud-palette-text-secondary);border-top:1px solid var(--mud-palette-lines-default)}.so-service{font-weight:700}.so-service.blue{color:#0877fa}.so-service.green{color:#00a66c}.so-service.purple{color:#8b43ec}.so-service.orange{color:#f97316}.so-state{border-radius:6px;padding:5px 9px;background:#0877fa18}.so-progress{width:95px;height:7px;border-radius:20px;background:var(--mud-palette-lines-default);display:inline-block;overflow:hidden;margin-right:8px}.so-progress span{height:100%;display:block;background:#0877fa;border-radius:20px}.so-table-panel td button{border:1px solid var(--mud-palette-lines-default);border-radius:5px;padding:5px;background:transparent;color:var(--mud-palette-primary);cursor:pointer}.so-empty{text-align:center;padding:32px!important}.so-overlay{position:fixed;inset:0;background:#0008;display:grid;place-items:center;z-index:2000}.so-dialog{position:relative;width:min(480px,90vw);padding:28px;background:var(--mud-palette-surface);border-radius:12px;box-shadow:0 12px 60px #0004}.so-close{position:absolute;right:15px;top:12px;border:0;background:transparent;color:var(--mud-palette-text-primary);font-size:28px;cursor:pointer}
@media(max-width:1100px){.so-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.so-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.service-orders{padding:12px}.so-header{align-items:flex-start;flex-direction:column}.so-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.so-filters{grid-template-columns:1fr}.so-metric{padding:10px}.so-toolbar{flex-direction:column;align-items:flex-start}}

/* =========================================================
   COLUMNA TIPO DE SERVICIO
   Identificación visual uniforme por modelo de negocio.
   Compatible con los colores de MudBlazor (claro/oscuro).
   ========================================================= */

.so-table-panel .so-service {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    max-width: 100%;
    min-height: 34px;
    padding: 4px 11px 4px 5px;
    border-radius: 8px;
    font-size: .8rem;
    font-weight: 700;
    line-height: 1.3;
    white-space: nowrap;
    border: 1px solid transparent;
    background: var(--so-service-bg);
    color: var(--so-service-fg);
}

.so-table-panel .so-service-icon {
    display: inline-flex;
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--so-service-accent);
    color: #ffffff;
}

.so-table-panel .so-service-icon .mud-icon-root {
    font-size: 17px;
    color: inherit;
}

.so-table-panel .so-service-label {
    overflow: hidden;
    text-overflow: ellipsis;
}

.so-table-panel .so-service.blue {
    --so-service-accent: #0877fa;
    --so-service-bg: rgba(8, 119, 250, .10);
    --so-service-fg: #0877fa;
    border-color: rgba(8, 119, 250, .16);
}

.so-table-panel .so-service.green {
    --so-service-accent: #009e73;
    --so-service-bg: rgba(0, 158, 115, .10);
    --so-service-fg: #00845e;
    border-color: rgba(0, 158, 115, .16);
}

.so-table-panel .so-service.purple {
    --so-service-accent: #8c43ed;
    --so-service-bg: rgba(140, 67, 237, .10);
    --so-service-fg: #8236d8;
    border-color: rgba(140, 67, 237, .16);
}

.so-table-panel .so-service.orange {
    --so-service-accent: #f46b18;
    --so-service-bg: rgba(244, 107, 24, .10);
    --so-service-fg: #cb5510;
    border-color: rgba(244, 107, 24, .16);
}

/* Tema oscuro: contrastes legibles sin cambiar la paleta corporativa. */
:where(.mud-theme-dark, [data-theme="dark"]) .so-table-panel .so-service.blue {
    --so-service-fg: #83baff;
    --so-service-bg: rgba(8, 119, 250, .19);
}
:where(.mud-theme-dark, [data-theme="dark"]) .so-table-panel .so-service.green {
    --so-service-fg: #70e3bd;
    --so-service-bg: rgba(0, 158, 115, .19);
}
:where(.mud-theme-dark, [data-theme="dark"]) .so-table-panel .so-service.purple {
    --so-service-fg: #cfabff;
    --so-service-bg: rgba(140, 67, 237, .19);
}
:where(.mud-theme-dark, [data-theme="dark"]) .so-table-panel .so-service.orange {
    --so-service-fg: #ffba88;
    --so-service-bg: rgba(244, 107, 24, .19);
}


/* =============================================================
   ÓRDENES Y SERVICIOS - PRESENTACIÓN MÓVIL
   Desktop conserva su tabla. Móvil muestra fichas por orden.
   Colores heredados de MudBlazor y tema corporativo existente.
   ============================================================= */
@media (max-width: 700px) {
    .service-orders {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        padding: 14px 12px 24px;
        gap: 14px;
        overflow-x: clip;
    }

    .so-header { align-items: stretch; gap: 14px; }
    .so-header h1 { font-size: 1.55rem; line-height: 1.2; margin-top: 7px; }
    .so-header p { font-size: .86rem; line-height: 1.5; }
    .so-header .mud-button-root {
        align-self: stretch;
        width: 100%;
        min-height: 44px;
        white-space: normal;
        text-align: center;
        border-radius: 8px;
    }
    .so-crumb { line-height: 1.5; }
    .so-notice { align-items: flex-start; line-height: 1.45; }
    .so-notice .mud-icon-root { flex-shrink: 0; }

    .so-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .so-metric {
        min-width: 0;
        min-height: 95px;
        padding: 12px;
        gap: 10px;
        border-radius: 10px;
        background: var(--mud-palette-surface);
        border: 1px solid var(--mud-palette-lines-default);
    }
    .so-metric-icon { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 10px; }
    .so-metric-icon .mud-icon-root { font-size: 20px; }
    .so-metric strong { font-size: 1.55rem; }
    .so-metric span:not(.so-metric-icon) { font-size: .75rem; line-height: 1.2; }
    .so-metric small { font-size: .68rem; }
    .so-metric:last-child:nth-child(odd) { grid-column: 1 / -1; }

    .so-filters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        padding: 14px;
        border-radius: 10px;
        background: var(--mud-palette-surface);
        border: 1px solid var(--mud-palette-lines-default);
    }
    .so-filters label:first-child { grid-column: 1 / -1; }
    .so-filters label { font-size: .78rem; }
    .so-filters input, .so-filters select { min-width: 0; width: 100%; height: 44px; font-size: 16px; }
    .so-reset {
        grid-column: 1 / -1;
        min-height: 40px;
        justify-content: center;
        border: 1px solid var(--mud-palette-lines-default);
        border-radius: 7px;
    }

    .so-toolbar { gap: 8px; min-width: 0; }
    .so-tabs {
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        padding: 2px 0 8px;
        scrollbar-width: thin;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
    }
    .so-tabs button { flex: 0 0 auto; scroll-snap-align: start; min-height: 40px; }
    .so-demo { align-self: flex-end; }

    /* Transformar filas en tarjetas legibles sin scroll horizontal. */
    .so-table-panel {
        overflow: visible;
        border: 0;
        box-shadow: none;
        background: transparent;
    }
    .so-table-scroll { overflow: visible; width: 100%; }
    .so-table-panel table,
    .so-table-panel tbody { display: block; width: 100%; min-width: 0; }
    .so-table-panel thead { display: none; }
    .so-table-panel tbody tr {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 13px 12px;
        padding: 16px;
        margin-bottom: 12px;
        border: 1px solid var(--mud-palette-lines-default);
        border-radius: 11px;
        background: var(--mud-palette-surface);
        box-shadow: 0 2px 9px rgba(0, 0, 0, .07);
    }
    .so-table-panel td {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
        padding: 0;
        min-width: 0;
        border: 0;
        overflow-wrap: anywhere;
        font-size: .81rem;
        line-height: 1.4;
    }
    .so-table-panel td::before {
        content: attr(data-label);
        display: block;
        font-size: .7rem;
        font-weight: 700;
        letter-spacing: .01em;
        color: var(--mud-palette-text-secondary);
    }
    .so-table-panel td.so-order-cell {
        grid-column: 1 / -1;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--mud-palette-lines-default);
    }
    .so-table-panel td.so-order-cell::before { display: none; }
    .so-table-panel td.so-order-cell strong { font-size: .94rem; color: var(--mud-palette-primary); }
    .so-table-panel td.so-type-cell { grid-column: 1 / -1; }
    .so-table-panel td.so-progress-cell { grid-column: 1 / 2; }
    .so-table-panel td.so-actions-cell { grid-column: 2 / 3; align-items: flex-end; }
    .so-table-panel td.so-actions-cell button {
        min-width: 42px;
        min-height: 40px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: var(--mud-palette-background-gray);
    }
    .so-table-panel td.so-progress-cell .so-progress { width: min(100%, 125px); margin: 0; }
    .so-table-panel td.so-progress-cell small { margin-top: -2px; }
    .so-table-panel td.so-actions-cell::before { text-align: right; }
    .so-table-panel td.so-empty { grid-column: 1 / -1; padding: 15px !important; }
    .so-table-panel footer {
        margin-top: 3px;
        padding: 12px;
        text-align: center;
        border: 1px solid var(--mud-palette-lines-default);
        border-radius: 9px;
        background: var(--mud-palette-surface);
    }
    .so-dialog { width: min(460px, calc(100vw - 24px)); padding: 24px 18px; max-height: 85dvh; overflow-y: auto; }
}

@media (max-width: 360px) {
    .so-metrics { grid-template-columns: 1fr 1fr; }
    .so-metric { padding: 9px; gap: 7px; }
    .so-metric-icon { flex-basis: 31px; width: 31px; height: 31px; }
    .so-metric strong { font-size: 1.4rem; }
    .so-filters { grid-template-columns: 1fr; }
    .so-filters label { grid-column: 1 / -1; }
}

/* Pestañas de servicios y acción principal. Sin alterar el layout compartido. */
.service-orders .so-new-order-button { min-height:44px; padding:0 20px; border-radius:9px; background:#0877fa; color:#fff; font-weight:700; text-transform:none; letter-spacing:0; box-shadow:0 4px 12px rgba(8,119,250,.20); }
.service-orders .so-new-order-button:hover { background:#0068e7; box-shadow:0 6px 16px rgba(8,119,250,.28); }
.service-orders .so-new-order-button .mud-icon-root { color:#fff; }
.service-orders .so-tabs { align-items:center; }
.service-orders .so-tabs .so-tab { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:43px; padding:9px 13px; background:var(--mud-palette-surface); color:var(--mud-palette-text-primary); border:1px solid var(--mud-palette-lines-default); border-radius:8px; transition:background-color .15s ease,border-color .15s ease; }
.service-orders .so-tabs .so-tab .mud-icon-root { flex-shrink:0; font-size:19px; color:#0877fa; }
.service-orders .so-tabs .so-tab:nth-child(3) .mud-icon-root { color:#00a879; }
.service-orders .so-tabs .so-tab:nth-child(4) .mud-icon-root { color:#8b43ec; }
.service-orders .so-tabs .so-tab:nth-child(5) .mud-icon-root { color:#f56813; }
.service-orders .so-tabs .so-tab .so-tab-label { margin:0; padding:0; background:none; border-radius:0; }
.service-orders .so-tabs .so-tab .so-tab-count { margin:0; padding:2px 8px; border-radius:999px; background:var(--mud-palette-background-gray); color:var(--mud-palette-text-primary); font-size:.76rem; line-height:1.3; }
.service-orders .so-tabs .so-tab.selected { background:#0877fa; border-color:#0877fa; color:#fff; }
.service-orders .so-tabs .so-tab.selected .mud-icon-root { color:#fff; }
.service-orders .so-tabs .so-tab.selected .so-tab-count { background:rgba(255,255,255,.19); color:#fff; }
.service-orders .so-tabs .so-tab:focus-visible,.service-orders .so-new-order-button:focus-visible { outline:2px solid var(--mud-palette-primary); outline-offset:3px; }
@media(max-width:650px) { .service-orders .so-new-order-button { width:100%; margin:0; } .service-orders .so-tabs .so-tab { flex:0 0 auto; min-height:44px; } }

/* =========================================================
   ESTÁNDAR TRAYEKTO: BOTONES AZULES Y ROBOTO CONDENSED
   Solo esta pantalla. No modifica eventos ni navegación.
   ========================================================= */
.service-orders .so-new-order-button,
.service-orders .so-tabs .so-tab {
    font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}

.service-orders .so-new-order-button.mud-button-root {
    background-color: #0877fa;
    color: #ffffff;
    border: 1px solid #0877fa;
    min-height: 44px;
    padding: 0 20px;
    border-radius: 8px;
    box-shadow: 0 3px 10px rgba(8, 119, 250, .22);
}

.service-orders .so-new-order-button.mud-button-root .mud-icon-root {
    color: #ffffff;
}

.service-orders .so-new-order-button.mud-button-root:hover {
    background-color: #0067df;
    border-color: #0067df;
}

.service-orders .so-tabs .so-tab,
.service-orders .so-tabs .so-tab:not(:first-child) {
    background-color: rgba(8, 119, 250, .08);
    border: 1px solid rgba(8, 119, 250, .28);
    color: #0877fa;
}

.service-orders .so-tabs .so-tab .mud-icon-root,
.service-orders .so-tabs .so-tab:nth-child(3) .mud-icon-root,
.service-orders .so-tabs .so-tab:nth-child(4) .mud-icon-root,
.service-orders .so-tabs .so-tab:nth-child(5) .mud-icon-root {
    color: #0877fa;
}

.service-orders .so-tabs .so-tab .so-tab-count {
    background-color: rgba(8, 119, 250, .12);
    color: #0759b9;
}

.service-orders .so-tabs .so-tab.selected,
.service-orders .so-tabs .so-tab.selected:not(:first-child) {
    background-color: #0877fa;
    border-color: #0877fa;
    color: #ffffff;
}

.service-orders .so-tabs .so-tab.selected .mud-icon-root,
.service-orders .so-tabs .so-tab.selected .so-tab-count {
    color: #ffffff;
}

.service-orders .so-tabs .so-tab.selected .so-tab-count {
    background-color: rgba(255, 255, 255, .22);
}

.service-orders .so-tabs .so-tab:not(.selected):hover {
    background-color: rgba(8, 119, 250, .16);
    border-color: #0877fa;
}

:where(.mud-theme-dark, [data-theme="dark"]) .service-orders .so-tabs .so-tab:not(.selected) {
    background-color: rgba(8, 119, 250, .18);
    border-color: rgba(112, 176, 255, .4);
    color: #9acaff;
}

:where(.mud-theme-dark, [data-theme="dark"]) .service-orders .so-tabs .so-tab:not(.selected) .mud-icon-root,
:where(.mud-theme-dark, [data-theme="dark"]) .service-orders .so-tabs .so-tab:not(.selected) .so-tab-count {
    color: #9acaff;
}

/* En móvil la acción principal utiliza el ancho disponible. */
@media (max-width: 650px) {
    .service-orders .so-new-order-button.mud-button-root {
        width: 100%;
    }
}

/* =========================================================
   CORRECCIÓN: MUD BUTTON RENDERIZADO EN CSS ISOLATION
   ::deep permite alcanzar el botón generado por MudBlazor.
   ========================================================= */
.service-orders ::deep .so-new-order-button.mud-button-root {
    background: #0877fa !important;
    background-color: #0877fa !important;
    border: 1px solid #0877fa !important;
    color: #ffffff !important;
    min-height: 44px;
    padding: 0 20px;
    border-radius: 8px;
    font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
    font-weight: 700;
    text-transform: none;
    box-shadow: 0 4px 12px rgba(8,119,250,.24);
}
.service-orders ::deep .so-new-order-button.mud-button-root:hover {
    background: #0067df !important;
    border-color: #0067df !important;
    color: #ffffff !important;
}
.service-orders ::deep .so-new-order-button.mud-button-root .mud-icon-root,
.service-orders ::deep .so-new-order-button.mud-button-root .mud-button-label {
    color: #ffffff !important;
}
@media (max-width: 650px) {
    .service-orders ::deep .so-new-order-button.mud-button-root {
        width: 100%;
    }
}

/* Navegación aditiva: conserva el listado de órdenes sin alterar sus estilos. */
.so-main-switch{display:flex;gap:8px;border-bottom:1px solid var(--mud-palette-lines-default);padding:3px 0 7px}
.so-main-switch button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--mud-palette-lines-default);border-radius:8px;padding:10px 16px;background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);font-weight:700;cursor:pointer}
.so-main-switch button.active{background:var(--mud-palette-primary);border-color:var(--mud-palette-primary);color:var(--mud-palette-primary-text)}
@media(max-width:650px){.so-main-switch{flex-wrap:wrap}.so-main-switch button{flex:1;justify-content:center}}

/* TRAYEKTO · Solicitudes recibidas. Colores heredados del tema global MudBlazor. */
.received-panel{display:flex;flex-direction:column;gap:16px;min-width:0;font-family:'Roboto Condensed',sans-serif}
.rr-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.rr-metrics article{display:flex;align-items:center;gap:15px;padding:17px;background:var(--mud-palette-surface);border:1px solid var(--mud-palette-lines-default);border-radius:11px;min-width:0}
.rr-metrics article>div{display:flex;flex-direction:column;min-width:0}.rr-metrics strong{font-size:1.7rem;line-height:1.15}.rr-metrics span:not(.rr-metric-icon){font-weight:700}.rr-metrics small{color:var(--mud-palette-text-secondary)}
.rr-metric-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;flex:none}
.rr-metric-icon.blue{background:#0877fa20;color:#0877fa}.rr-metric-icon.green{background:#0ab98020;color:#09b87a}.rr-metric-icon.amber{background:#f9ac1920;color:#ed9900}.rr-metric-icon.purple{background:#8c43ed20;color:#8c43ed}
.rr-filters{display:grid;grid-template-columns:2fr 1fr 1fr .9fr .9fr auto auto;gap:10px;align-items:end;padding:14px;border:1px solid var(--mud-palette-lines-default);background:var(--mud-palette-surface);border-radius:10px}
.rr-filters label{min-width:0;display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:.76rem}.rr-filters input,.rr-filters select{height:39px;width:100%;min-width:0;background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);border:1px solid var(--mud-palette-lines-inputs);border-radius:7px;padding:0 9px}
.rr-filters button,.rr-actions button,.rr-pagination button,.rr-dialog footer button{height:39px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border:1px solid var(--mud-palette-lines-default);border-radius:7px;background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);cursor:pointer;white-space:nowrap}
.rr-filters .rr-search{background:var(--mud-palette-primary);border-color:var(--mud-palette-primary);color:var(--mud-palette-primary-text)}
.rr-results{border:1px solid var(--mud-palette-lines-default);border-radius:10px;background:var(--mud-palette-surface);overflow:hidden}.rr-table-wrap{overflow-x:auto}.rr-results table{width:100%;border-collapse:collapse;min-width:890px}.rr-results th{background:var(--mud-palette-background-gray);text-align:left;font-size:.8rem;padding:14px}.rr-results td{padding:14px;border-top:1px solid var(--mud-palette-lines-default);font-size:.85rem}.rr-results td strong{color:var(--mud-palette-text-primary);overflow-wrap:anywhere}.rr-actions{display:flex;gap:7px}
.rr-service{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:8px;font-weight:700;background:var(--rr-bg);color:var(--rr-fg);border:1px solid var(--rr-border)}
.rr-service.blue{--rr-bg:#0877fa20;--rr-fg:#0877fa;--rr-border:#0877fa40}.rr-service.green{--rr-bg:#0a9f7820;--rr-fg:#008967;--rr-border:#0a9f7840}.rr-service.purple{--rr-bg:#8c43ed20;--rr-fg:#8c43ed;--rr-border:#8c43ed40}.rr-service.orange{--rr-bg:#f46b1820;--rr-fg:#e66311;--rr-border:#f46b1840}
.rr-state{display:inline-block;padding:6px 11px;border-radius:30px;font-weight:700;background:var(--mud-palette-background-gray)}.rr-state.registered,.rr-state.completed{background:#0ab98020;color:#00a26c}.rr-state.progress{background:#f9ac1920;color:#db9200}.rr-state.cancelled{background:#e44b6420;color:#df3957}
.rr-empty{padding:28px;text-align:center;color:var(--mud-palette-text-secondary)}.rr-alert{border:1px solid var(--mud-palette-error);border-radius:8px;padding:12px;background:var(--mud-palette-surface);color:var(--mud-palette-error)}.rr-alert button{margin-left:10px}
.rr-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px;border-top:1px solid var(--mud-palette-lines-default);font-size:.82rem}.rr-pagination>div{display:flex;align-items:center;gap:9px}.rr-pagination select{background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);border:1px solid var(--mud-palette-lines-default);padding:6px}.rr-pagination button{height:32px}.rr-pagination button:disabled{opacity:.4;cursor:default}
.rr-backdrop{position:fixed;inset:0;z-index:2200;background:#0009;display:grid;place-items:center;padding:16px}.rr-dialog{display:flex;flex-direction:column;width:min(920px,100%);max-height:92vh;background:var(--mud-palette-surface);border:1px solid var(--mud-palette-lines-default);border-radius:14px;box-shadow:0 20px 80px #0005;overflow:hidden}
.rr-dialog>header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--mud-palette-lines-default)}.rr-dialog>header>div{display:flex;align-items:center;gap:12px}.rr-dialog-icon{padding:11px;background:#0877fa20;color:#0877fa;border-radius:9px}.rr-dialog h2{margin:0;font-size:1.3rem}.rr-dialog header p{margin:3px 0 0;color:var(--mud-palette-text-secondary);overflow-wrap:anywhere}.rr-x{background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);border:1px solid var(--mud-palette-lines-default);border-radius:8px;font-size:24px;width:40px;height:40px;cursor:pointer;flex:none}.rr-dialog-body{padding:20px 22px;overflow-y:auto}.rr-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rr-detail-grid article,.rr-detail-stops article{border:1px solid var(--mud-palette-lines-default);border-radius:9px;background:var(--mud-palette-surface);padding:13px}.rr-detail-grid small{display:block;color:var(--mud-palette-text-secondary)}.rr-detail-grid strong{display:block;overflow-wrap:anywhere}.rr-dialog h3{font-size:1.05rem;margin:22px 0 10px}.rr-detail-stops{display:grid;gap:10px}.rr-detail-stops p{margin:5px 0}.rr-dialog footer{padding:14px 22px;border-top:1px solid var(--mud-palette-lines-default);display:flex;justify-content:flex-end}.rr-print-title{display:none}
:where(.mud-theme-dark,[data-theme="dark"]) .rr-service.green{--rr-fg:#6ee7bf}:where(.mud-theme-dark,[data-theme="dark"]) .rr-service.purple{--rr-fg:#c5a1ff}:where(.mud-theme-dark,[data-theme="dark"]) .rr-service.orange{--rr-fg:#ffb27f}:where(.mud-theme-dark,[data-theme="dark"]) .rr-service.blue{--rr-fg:#8dc0ff}
@media(max-width:1200px){.rr-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.rr-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.rr-filters{grid-template-columns:1fr}.rr-metrics{grid-template-columns:1fr 1fr;gap:9px}.rr-metrics article{padding:11px;gap:8px}.rr-metric-icon{width:35px;height:35px}.rr-pagination{flex-wrap:wrap}.rr-table-wrap{overflow:visible}.rr-results table{min-width:0}.rr-results thead{display:none}.rr-results tbody,.rr-results tr,.rr-results td{display:block}.rr-results tr{margin:12px;border:1px solid var(--mud-palette-lines-default);border-radius:9px;padding:8px}.rr-results td{display:flex;justify-content:space-between;gap:10px;padding:9px;border:0;overflow-wrap:anywhere}.rr-results td::before{content:attr(data-label);font-weight:700;color:var(--mud-palette-text-secondary)}.rr-actions{flex-wrap:wrap}.rr-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rr-dialog-body{padding:12px}.rr-dialog>header{padding:12px}}
@media print{body *{visibility:hidden!important}.rr-backdrop,.rr-backdrop *{visibility:visible!important}.rr-backdrop{position:absolute!important;inset:0!important;background:white!important;padding:0!important;display:block!important}.rr-dialog{max-height:none!important;width:100%!important;box-shadow:none!important;border:0!important;color:black!important;background:white!important;overflow:visible!important}.rr-dialog>header,.rr-dialog>footer{display:none!important}.rr-dialog-body{overflow:visible!important;padding:0!important}.rr-print-title{display:block!important}.rr-detail-grid article,.rr-detail-stops article{color:black!important;background:white!important;border:1px solid #aaa!important} }

/* TRAYEKTO: contraste y acciones de solicitudes recibidas. */
.service-orders .so-main-switch {display:flex;gap:10px;padding:8px 0 14px;border-bottom:1px solid var(--mud-palette-lines-default)}
.service-orders .so-main-switch button {display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 18px;border:1px solid var(--mud-palette-lines-default);border-radius:9px;background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);font-weight:700;cursor:pointer;box-shadow:0 1px 3px #00000010}
.service-orders .so-main-switch button.active {background:#0877fa;border-color:#0877fa;color:#fff;box-shadow:0 3px 9px #0877fa30}
.service-orders .so-main-switch button:hover:not(.active){border-color:#0877fa;background:var(--mud-palette-background-gray)}
.service-orders .received-panel .rr-filters button,.service-orders .received-panel .rr-actions button,.service-orders .received-panel .rr-pagination button,.service-orders .received-panel .rr-dialog footer button {font-weight:700;box-shadow:0 1px 3px #00000010}
.service-orders .received-panel .rr-actions button:hover,.service-orders .received-panel .rr-filters .rr-clear:hover {border-color:#0877fa;color:var(--mud-palette-primary)}
.service-orders .received-panel .rr-metrics article,.service-orders .received-panel .rr-filters,.service-orders .received-panel .rr-results {box-shadow:0 3px 12px #0000000b}
.service-orders .received-panel .rr-filters input:focus-visible,.service-orders .received-panel .rr-filters select:focus-visible,.service-orders .received-panel button:focus-visible,.service-orders .so-main-switch button:focus-visible {outline:2px solid #0877fa;outline-offset:2px}
@media(max-width:700px){.service-orders .so-main-switch{flex-wrap:wrap}.service-orders .so-main-switch button{flex:1 1 180px}.service-orders .received-panel .rr-actions button{flex:1 1 auto}}

/* TRAYEKTO · Corrección visual de controles del módulo, 06/11/2026.
   Únicamente presentación: no modifica navegación, eventos ni datos. */
.service-orders .so-main-switch {gap:10px; padding:4px 0 12px; border-bottom:1px solid var(--mud-palette-lines-default);}
.service-orders .so-main-switch button {min-height:44px; padding:10px 17px; background:#fff; color:#0b2850; border:1px solid #b7cde7; border-radius:9px; box-shadow:0 2px 5px rgba(11,40,80,.07); font-weight:700; transition:background .15s,border-color .15s,box-shadow .15s;}
.service-orders .so-main-switch button.active {background:#0877fa; border-color:#0877fa; color:#fff; box-shadow:0 3px 10px rgba(8,119,250,.22);}
.service-orders .so-main-switch button:hover:not(.active) {background:#f1f7ff; border-color:#0877fa; color:#0758ba;}
.service-orders .so-main-switch button.active .mud-icon-root {color:#fff;}
/* Las tarjetas y formularios son superficies opacas y separadas del fondo de página. */
.service-orders .received-panel .rr-metrics article,
.service-orders .received-panel .rr-filters,
.service-orders .received-panel .rr-results {background:#fff; border:1px solid #d3e1f1; border-radius:11px; box-shadow:0 3px 12px rgba(11,40,80,.06);}
.service-orders .received-panel .rr-filters input,
.service-orders .received-panel .rr-filters select,
.service-orders .received-panel .rr-pagination select {background:#fff; color:#0b2850; border:1px solid #b7cde7; border-radius:7px; min-height:39px; opacity:1;}
.service-orders .received-panel .rr-filters input::placeholder {color:#617a9b; opacity:1;}
.service-orders .received-panel .rr-results th {background:#edf4fc; color:#102d50;}
.service-orders .received-panel .rr-results td {background:#fff; border-color:#dce7f3;}
.service-orders .received-panel .rr-filters button,
.service-orders .received-panel .rr-actions button,
.service-orders .received-panel .rr-pagination button {background:#fff; border:1px solid #b7cde7; color:#0b2850; min-height:39px; border-radius:8px; font-weight:700; box-shadow:0 2px 5px rgba(11,40,80,.06);}
.service-orders .received-panel .rr-filters .rr-search {background:#0877fa; border-color:#0877fa; color:#fff;}
.service-orders .received-panel .rr-filters .rr-search:hover {background:#0066df; color:#fff;}
.service-orders .received-panel .rr-filters .rr-clear:hover,
.service-orders .received-panel .rr-actions button:hover {background:#f1f7ff; border-color:#0877fa; color:#0758ba;}
.service-orders .received-panel .rr-pagination button:disabled {opacity:.45; cursor:not-allowed;}
.service-orders .received-panel .rr-dialog,
.service-orders .received-panel .rr-detail-grid article,
.service-orders .received-panel .rr-detail-stops article {background:#fff; border-color:#d3e1f1; color:#0b2850;}
/* MudBlazor tema oscuro: hereda el color de superficie corporativo. */
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .so-main-switch button:not(.active) {background:var(--mud-palette-surface,#102e46); color:var(--mud-palette-text-primary,#fff); border-color:#315571; box-shadow:0 2px 7px rgba(0,0,0,.18);}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .so-main-switch button:hover:not(.active) {background:var(--mud-palette-background-gray,#173b57); border-color:#4b99ed; color:var(--mud-palette-text-primary,#fff);}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-metrics article,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-filters,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-results {background:var(--mud-palette-surface,#102e46); border-color:#315571; box-shadow:0 3px 12px rgba(0,0,0,.16);}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-filters input,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-filters select,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-pagination select {background:var(--mud-palette-background-gray,#0b253b); color:var(--mud-palette-text-primary,#fff); border-color:#41617c;}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-filters input::placeholder {color:#a6bed3;}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-results th {background:var(--mud-palette-background-gray,#173b57); color:var(--mud-palette-text-primary,#fff);}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-results td {background:var(--mud-palette-surface,#102e46); border-color:#315571;}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-filters button:not(.rr-search),
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-actions button,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-pagination button {background:var(--mud-palette-surface,#102e46); border-color:#41617c; color:var(--mud-palette-text-primary,#fff);}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-filters button:not(.rr-search):hover,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-actions button:hover {background:var(--mud-palette-background-gray,#173b57); border-color:#4b99ed;}
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-dialog,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-detail-grid article,
:where(.mud-theme-dark,[data-theme="dark"],.dark-theme) .service-orders .received-panel .rr-detail-stops article {background:var(--mud-palette-surface,#102e46); border-color:#315571; color:var(--mud-palette-text-primary,#fff);}
.service-orders .received-panel button:focus-visible,.service-orders .so-main-switch button:focus-visible,.service-orders .received-panel input:focus-visible,.service-orders .received-panel select:focus-visible {outline:2px solid #0877fa; outline-offset:2px;}
@media(max-width:700px){.service-orders .so-main-switch{flex-wrap:wrap}.service-orders .so-main-switch button{flex:1 1 180px;justify-content:center}.service-orders .received-panel .rr-actions{flex-wrap:wrap}}


/* Detalle empresarial de solicitudes: superficies y jerarquía visual Light/Dark. */
.service-orders .received-panel .rr-detail-modal{width:min(1120px,100%);max-height:94vh;border-radius:16px;background:var(--mud-palette-surface);color:var(--mud-palette-text-primary);border:1px solid var(--mud-palette-lines-default)}
.service-orders .received-panel .rr-modal-header{padding:20px 24px;background:var(--mud-palette-surface);border-bottom:1px solid var(--mud-palette-lines-default)}
.service-orders .received-panel .rr-modal-heading{display:flex;align-items:center;gap:14px;min-width:0}
.service-orders .received-panel .rr-modal-heading-icon{width:52px;height:52px;flex:none;display:grid;place-items:center;border-radius:13px;background:#0877fa1c;color:#0877fa}
.service-orders .received-panel .rr-modal-heading h2{font-size:1.55rem;font-weight:800;margin:0;color:var(--mud-palette-text-primary)}
.service-orders .received-panel .rr-modal-heading p{font-size:.9rem;margin:4px 0 0;overflow-wrap:anywhere;color:var(--mud-palette-text-secondary)}
.service-orders .received-panel .rr-modal-content{padding:22px 24px;display:flex;flex-direction:column;gap:22px;background:var(--mud-palette-surface)}
.service-orders .received-panel .rr-modal-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.service-orders .received-panel .rr-summary-card{display:flex;align-items:center;gap:12px;padding:16px 13px;border:1px solid var(--mud-palette-lines-default);border-radius:12px;background:var(--mud-palette-background-gray);min-width:0}
.service-orders .received-panel .rr-summary-card>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.service-orders .received-panel .rr-summary-card small{font-size:.85rem;color:var(--mud-palette-text-secondary)}
.service-orders .received-panel .rr-summary-card strong{font-size:1rem;color:var(--mud-palette-text-primary);overflow-wrap:anywhere}
.service-orders .received-panel .rr-summary-icon,.service-orders .received-panel .rr-stop-icon{width:43px;height:43px;display:grid;place-items:center;flex:none;border-radius:12px}
.service-orders .received-panel .rr-icon-blue{background:#0877fa1c;color:#1682ff}.service-orders .received-panel .rr-icon-purple{background:#8c43ed20;color:#a36af7}.service-orders .received-panel .rr-icon-green{background:#00ae7520;color:#00ad77}
.service-orders .received-panel .rr-modal-columns{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;align-items:stretch}
.service-orders .received-panel .rr-modal-side{display:flex;flex-direction:column;gap:16px;min-width:0}
.service-orders .received-panel .rr-modal-section{border:1px solid var(--mud-palette-lines-default);border-radius:13px;background:var(--mud-palette-surface);overflow:hidden;min-width:0}
.service-orders .received-panel .rr-modal-section h3{display:flex;align-items:center;gap:9px;margin:0;padding:14px 16px;background:var(--mud-palette-background-gray);border-bottom:1px solid var(--mud-palette-lines-default);font-size:1.1rem;font-weight:800;color:var(--mud-palette-text-primary)}
.service-orders .received-panel .rr-modal-section h3 .mud-icon-root{color:#1682ff}
.service-orders .received-panel .rr-modal-section-body{padding:14px 16px}
.service-orders .received-panel .rr-stop-list{display:grid;gap:12px}
.service-orders .received-panel .rr-stop-card{display:flex;gap:12px;padding:15px;border:1px solid var(--mud-palette-lines-default);border-radius:10px;background:var(--mud-palette-background-gray);min-width:0}
.service-orders .received-panel .rr-stop-card>div{min-width:0}.service-orders .received-panel .rr-stop-card strong{display:block;margin-bottom:7px;color:var(--mud-palette-text-primary)}
.service-orders .received-panel .rr-stop-card p{margin:4px 0;color:var(--mud-palette-text-secondary);overflow-wrap:anywhere}
.service-orders .received-panel .rr-item-list{display:grid;gap:9px}
.service-orders .received-panel .rr-item-card{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--mud-palette-lines-default);border-radius:9px;background:var(--mud-palette-background-gray);min-width:0}
.service-orders .received-panel .rr-item-card>.mud-icon-root{color:#1682ff;flex:none}.service-orders .received-panel .rr-item-card strong{flex:1;min-width:0;overflow-wrap:anywhere}
.service-orders .received-panel .rr-item-card span{white-space:nowrap;border-radius:20px;background:#0877fa1c;color:var(--mud-palette-text-primary);padding:5px 9px}
.service-orders .received-panel .rr-timeline{display:grid;gap:12px}
.service-orders .received-panel .rr-timeline-event{display:flex;gap:13px;position:relative;min-width:0}
.service-orders .received-panel .rr-timeline-dot{width:13px;height:13px;margin-top:4px;border-radius:50%;background:#0877fa;flex:none;box-shadow:0 0 0 4px #0877fa20}
.service-orders .received-panel .rr-timeline-event>div{min-width:0}.service-orders .received-panel .rr-timeline-event strong{margin-right:10px}.service-orders .received-panel .rr-timeline-event time{color:var(--mud-palette-text-secondary);font-size:.85rem}.service-orders .received-panel .rr-timeline-event p{margin:5px 0 0;color:var(--mud-palette-text-secondary)}
.service-orders .received-panel .rr-modal-notes p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.service-orders .received-panel .rr-modal-empty{color:var(--mud-palette-text-secondary);margin:0}
.service-orders .received-panel .rr-modal-footer{padding:15px 24px;background:var(--mud-palette-surface);border-top:1px solid var(--mud-palette-lines-default)}
.service-orders .received-panel .rr-modal-footer .rr-print-action{height:42px;padding:0 20px;border-radius:9px;background:#0877fa;color:white;border:1px solid #0877fa;font-weight:700}
.service-orders .received-panel .rr-modal-footer .rr-print-action:hover{background:#0065dc;border-color:#0065dc}
.service-orders .received-panel .rr-detail-modal .rr-x{background:var(--mud-palette-background-gray);color:var(--mud-palette-text-primary);border:1px solid var(--mud-palette-lines-default)}
.service-orders .received-panel .rr-detail-modal .rr-x:hover{border-color:#0877fa;color:#0877fa}
@media(max-width:900px){.service-orders .received-panel .rr-modal-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.service-orders .received-panel .rr-modal-columns{grid-template-columns:1fr}}
@media(max-width:520px){.service-orders .received-panel .rr-modal-header{padding:12px}.service-orders .received-panel .rr-modal-content{padding:12px;gap:12px}.service-orders .received-panel .rr-modal-summary{gap:8px}.service-orders .received-panel .rr-summary-card{padding:10px;gap:7px}.service-orders .received-panel .rr-summary-icon{width:32px;height:32px}.service-orders .received-panel .rr-summary-card strong{font-size:.86rem}.service-orders .received-panel .rr-modal-heading h2{font-size:1.15rem}.service-orders .received-panel .rr-modal-heading-icon{width:38px;height:38px}}
@media print{.service-orders .received-panel .rr-detail-modal{width:100%!important;max-height:none!important;border:0!important;box-shadow:none!important;background:white!important;color:black!important}.service-orders .received-panel .rr-modal-content,.service-orders .received-panel .rr-modal-section,.service-orders .received-panel .rr-summary-card,.service-orders .received-panel .rr-stop-card,.service-orders .received-panel .rr-item-card{background:white!important;color:black!important;break-inside:avoid}.service-orders .received-panel .rr-modal-columns{display:block!important}.service-orders .received-panel .rr-modal-section{margin:12px 0!important}.service-orders .received-panel .rr-modal-section h3{background:#eee!important;color:black!important}.service-orders .received-panel .rr-summary-card strong,.service-orders .received-panel .rr-stop-card strong{color:black!important}}


/* TRAYEKTO | Detalle de solicitud: superficies reales y opacas en ambos temas.
   Las variables locales impiden que un token de superficie transparente del layout
   haga visible la pantalla subyacente dentro del diálogo. */
.service-orders .received-panel .rr-backdrop {
    position: fixed;
    inset: 0;
    z-index: 2200;
    display: grid;
    place-items: center;
    padding: 16px;
    background: rgba(3, 15, 31, .68);
}
.service-orders .received-panel .rr-detail-modal {
    --rr-dialog-bg: #ffffff;
    --rr-dialog-card: #f3f7fc;
    --rr-dialog-border: #d7e3f1;
    --rr-dialog-text: #10294c;
    --rr-dialog-muted: #49617f;
    position: relative;
    display: flex;
    flex-direction: column;
    width: min(1120px, 100%);
    max-height: min(94vh, 940px);
    isolation: isolate;
    opacity: 1;
    background: var(--rr-dialog-bg) !important;
    color: var(--rr-dialog-text) !important;
    border: 1px solid var(--rr-dialog-border) !important;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 24px 80px rgba(0, 0, 0, .35);
}
/* Se contempla tanto el atributo HTML como las clases de tema del layout. */
html[data-theme="dark"] .service-orders .received-panel .rr-detail-modal,
html.mud-theme-dark .service-orders .received-panel .rr-detail-modal,
body.mud-theme-dark .service-orders .received-panel .rr-detail-modal,
.dark-theme .service-orders .received-panel .rr-detail-modal {
    --rr-dialog-bg: #0b2439;
    --rr-dialog-card: #12344e;
    --rr-dialog-border: #31536c;
    --rr-dialog-text: #f4f8ff;
    --rr-dialog-muted: #b8cce0;
}
.service-orders .received-panel .rr-detail-modal .rr-modal-header,
.service-orders .received-panel .rr-detail-modal .rr-modal-content,
.service-orders .received-panel .rr-detail-modal .rr-modal-footer,
.service-orders .received-panel .rr-detail-modal .rr-modal-section,
.service-orders .received-panel .rr-detail-modal .rr-modal-section-body {
    background: var(--rr-dialog-bg) !important;
    color: var(--rr-dialog-text) !important;
    border-color: var(--rr-dialog-border) !important;
    opacity: 1;
}
.service-orders .received-panel .rr-detail-modal .rr-summary-card,
.service-orders .received-panel .rr-detail-modal .rr-stop-card,
.service-orders .received-panel .rr-detail-modal .rr-item-card,
.service-orders .received-panel .rr-detail-modal .rr-modal-section h3 {
    background: var(--rr-dialog-card) !important;
    color: var(--rr-dialog-text) !important;
    border-color: var(--rr-dialog-border) !important;
}
.service-orders .received-panel .rr-detail-modal h2,
.service-orders .received-panel .rr-detail-modal h3,
.service-orders .received-panel .rr-detail-modal strong,
.service-orders .received-panel .rr-detail-modal .rr-modal-heading p,
.service-orders .received-panel .rr-detail-modal .rr-summary-card strong {
    color: var(--rr-dialog-text) !important;
}
.service-orders .received-panel .rr-detail-modal small,
.service-orders .received-panel .rr-detail-modal time,
.service-orders .received-panel .rr-detail-modal .rr-stop-card p,
.service-orders .received-panel .rr-detail-modal .rr-timeline-event p {
    color: var(--rr-dialog-muted) !important;
}
.service-orders .received-panel .rr-detail-modal .rr-x {
    background: var(--rr-dialog-card) !important;
    color: var(--rr-dialog-text) !important;
    border-color: var(--rr-dialog-border) !important;
}
.service-orders .received-panel .rr-detail-modal .rr-print-action {
    background: #0877fa !important;
    border-color: #0877fa !important;
    color: #fff !important;
}
@media (max-width: 760px) {
    .service-orders .received-panel .rr-detail-modal { max-height: 96dvh; }
    .service-orders .received-panel .rr-modal-columns { grid-template-columns: 1fr; }
    .service-orders .received-panel .rr-modal-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media print {
    .service-orders .received-panel .rr-detail-modal,
    .service-orders .received-panel .rr-detail-modal .rr-modal-content,
    .service-orders .received-panel .rr-detail-modal .rr-modal-section,
    .service-orders .received-panel .rr-detail-modal .rr-modal-section-body,
    .service-orders .received-panel .rr-detail-modal .rr-summary-card,
    .service-orders .received-panel .rr-detail-modal .rr-stop-card,
    .service-orders .received-panel .rr-detail-modal .rr-item-card {
        --rr-dialog-bg: #fff;
        --rr-dialog-card: #fff;
        --rr-dialog-border: #bbb;
        --rr-dialog-text: #000;
        --rr-dialog-muted: #333;
        background: #fff !important;
        color: #000 !important;
    }
}
