/* Rev. 10/10/2026 — CSS de ModalReenvioSunat (igual al ERP de escritorio; @@ → @, capa D-51). */
    .drs-scrim {
        position: fixed;
        inset: 0;
        background: rgba(8,22,19,.55);
        backdrop-filter: blur(4px);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 16px;
        z-index: var(--z-modal);
        animation: drs-fade .18s ease-out;
    }

    .drs-modal {
        background: var(--de-surface);
        border-radius: 14px;
        box-shadow: 0 30px 80px -24px rgba(6,30,26,.6);
        width: 100%;
        max-width: 880px;
        max-height: calc(100vh - 32px);
        display: flex;
        flex-direction: column;
        overflow: hidden;
        animation: drs-pop .26s cubic-bezier(.2,.9,.3,1.2);
    }

    @keyframes drs-fade { from { opacity: 0; } to { opacity: 1; } }
    @keyframes drs-pop { from { opacity: 0; transform: translateY(10px) scale(.97); } to { opacity: 1; transform: none; } }
    @keyframes drs-rise { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
    @keyframes drs-spin { to { transform: rotate(360deg); } }
    @keyframes drs-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .45; } }
    @keyframes drs-bar { from { background-position: 0 0; } to { background-position: 28px 0; } }

    /* ---------------------------------------------------------- cabecera */
    .drs-hero {
        position: relative;
        padding: 16px 20px 0;
        color: #fff;
        background:
            radial-gradient(circle at 1px 1px, rgba(255,255,255,.10) 1px, transparent 0) 0 0 / 14px 14px,
            linear-gradient(135deg, var(--de-acc-deep) 0%, var(--de-acc) 62%, #14806d 100%);
        flex: none;
    }

    .drs-hero-top {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
    }

    .drs-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 10.5px;
        font-weight: 700;
        letter-spacing: .12em;
        text-transform: uppercase;
        color: rgba(255,255,255,.78);
    }

        .drs-eyebrow .dot {
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: #7ee2c6;
            box-shadow: 0 0 0 3px rgba(126,226,198,.25);
        }

    .drs-title {
        font-size: 19px;
        font-weight: 700;
        margin-top: 5px;
    }

    .drs-sub {
        font-size: 12.5px;
        color: rgba(255,255,255,.8);
        margin-top: 2px;
    }

    .drs-x {
        border: none;
        background: rgba(255,255,255,.12);
        color: #fff;
        cursor: pointer;
        width: 30px;
        height: 30px;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex: none;
    }

        .drs-x:hover { background: rgba(255,255,255,.24); }

    .drs-tabs {
        display: flex;
        gap: 4px;
        margin-top: 14px;
    }

        .drs-tabs button {
            border: none;
            background: transparent;
            color: rgba(255,255,255,.75);
            font: inherit;
            font-size: 13px;
            font-weight: 600;
            padding: 9px 14px 10px;
            border-radius: 9px 9px 0 0;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            gap: 7px;
        }

            .drs-tabs button:hover { color: #fff; background: rgba(255,255,255,.08); }

            .drs-tabs button.on {
                background: var(--de-surface);
                color: var(--de-acc-deep);
            }

        .drs-tabs .n {
            min-width: 20px;
            height: 18px;
            padding: 0 6px;
            border-radius: 999px;
            font-size: 11px;
            font-weight: 700;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: var(--de-alert);
            color: #fff;
        }

        .drs-tabs .live {
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: #7ee2c6;
            animation: drs-pulse 1.2s ease-in-out infinite;
        }

    /* ---------------------------------------------------------- cuerpo */
    .drs-b {
        padding: 18px 20px;
        overflow-y: auto;
        flex: 1;
        min-height: 260px;
    }

    .drs-f {
        padding: 12px 20px;
        border-top: 1px solid var(--de-line);
        display: flex;
        align-items: center;
        gap: 8px;
        background: var(--de-surface-2);
        flex: none;
    }

        .drs-f .grow { flex: 1; }

        .drs-f .info {
            font-size: 12px;
            color: var(--de-muted);
        }

            .drs-f .info b { color: var(--de-ink); }

    .drs-btn {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        height: 34px;
        padding: 0 14px;
        border: none;
        border-radius: 7px;
        font: inherit;
        font-size: 12.5px;
        font-weight: 600;
        cursor: pointer;
        color: #fff;
        background: var(--de-acc);
        box-shadow: 0 1px 2px rgba(0,0,0,.08);
        white-space: nowrap;
    }

        .drs-btn:hover { background: var(--de-acc-deep); }
        .drs-btn:disabled { opacity: .55; cursor: not-allowed; }
        .drs-btn.alert { background: var(--de-alert); }
        .drs-btn.alert:hover { background: #9a3409; }
        .drs-btn.danger { background: var(--de-err); }

    .drs-btn-ghost {
        background: var(--de-surface);
        color: var(--de-ink-2);
        border: 1px solid var(--de-line-strong);
        font-weight: 500;
        box-shadow: none;
    }

        .drs-btn-ghost:hover { background: var(--de-surface-3); color: var(--de-ink); }

    .drs-icon {
        width: 14px;
        height: 14px;
        flex: none;
        stroke: currentColor;
        fill: none;
        stroke-width: 1.9;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .drs-spin {
        width: 14px;
        height: 14px;
        border-radius: 50%;
        border: 2px solid currentColor;
        border-right-color: transparent;
        animation: drs-spin .7s linear infinite;
        flex: none;
    }

    /* ---------------------------------------------------------- filtros */
    .drs-filtros {
        display: grid;
        grid-template-columns: 1.3fr 1.3fr 1fr 1fr auto;
        gap: 10px;
        align-items: end;
    }

    @media (max-width: 720px) {
        .drs-filtros { grid-template-columns: 1fr 1fr; }
    }

    .drs-campo label {
        display: block;
        font-size: 10.5px;
        font-weight: 700;
        letter-spacing: .06em;
        text-transform: uppercase;
        color: var(--de-muted);
        margin-bottom: 4px;
    }

    .drs-ctl {
        width: 100%;
        height: 32px;
        border: 1px solid var(--de-line-strong);
        border-radius: 5px;
        background: var(--de-surface);
        color: var(--de-ink);
        font: inherit;
        font-size: 12.5px;
        padding: 0 8px;
    }

        .drs-ctl:focus { outline: 2px solid var(--de-acc-line); border-color: var(--de-acc); }

    .drs-meta {
        display: flex;
        align-items: center;
        gap: 6px;
        font-size: 11.5px;
        color: var(--de-faint);
        margin: 10px 0 14px;
    }

        .drs-meta .dot {
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: var(--de-ok);
        }

    /* ---------------------------------------------------------- resumen */
    .drs-sum {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 9px;
        margin-bottom: 14px;
        animation: drs-rise .3s ease-out both;
    }

    @media (max-width: 720px) {
        .drs-sum { grid-template-columns: repeat(2, 1fr); }
    }

    .drs-tile {
        border: 1px solid var(--de-line);
        border-radius: 9px;
        padding: 10px 12px;
        background: var(--de-surface-2);
        position: relative;
        overflow: hidden;
    }

        .drs-tile::before {
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 3px;
            background: var(--c, var(--de-line-strong));
        }

        .drs-tile .l {
            font-size: 10px;
            font-weight: 700;
            letter-spacing: .08em;
            text-transform: uppercase;
            color: var(--de-muted);
        }

        .drs-tile .v {
            font-size: 22px;
            font-weight: 700;
            color: var(--de-ink);
            font-variant-numeric: tabular-nums;
            margin-top: 2px;
            line-height: 1.1;
        }

        .drs-tile .f {
            font-size: 11.5px;
            color: var(--de-muted);
            margin-top: 2px;
        }

        .drs-tile.ok { --c: var(--de-ok); }
        .drs-tile.ok .v { color: var(--de-ok); }
        .drs-tile.err { --c: var(--de-err); }
        .drs-tile.err .v { color: var(--de-err); }
        .drs-tile.warn { --c: var(--de-warn); }
        .drs-tile.warn .v { color: var(--de-warn); }
        .drs-tile.prog { --c: var(--de-prog); }
        .drs-tile.acc { --c: var(--de-acc); }

    /* ---------------------------------------------------------- tabla */
    .drs-tabla-wrap {
        border: 1px solid var(--de-line);
        border-radius: 9px;
        overflow: auto;
        max-height: 300px;
        animation: drs-rise .3s ease-out .05s both;
    }

    .drs-tabla {
        width: 100%;
        border-collapse: collapse;
        font-size: 12.5px;
    }

        .drs-tabla th {
            position: sticky;
            top: 0;
            background: var(--de-surface-2);
            text-align: left;
            font-size: 10px;
            font-weight: 700;
            letter-spacing: .08em;
            text-transform: uppercase;
            color: var(--de-muted);
            padding: 8px 10px;
            border-bottom: 1px solid var(--de-line);
            z-index: 1;
        }

        .drs-tabla td {
            padding: 7px 10px;
            border-bottom: 1px solid var(--de-line);
            color: var(--de-ink-2);
            vertical-align: middle;
        }

        .drs-tabla tr:last-child td { border-bottom: none; }
        .drs-tabla .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
        .drs-tabla .neg { color: var(--de-err); }

        .drs-tabla .mono {
            font-family: "IBM Plex Mono", Consolas, monospace;
            font-size: 12px;
            color: var(--de-ink);
            white-space: nowrap;
        }

        .drs-tabla .cli {
            max-width: 260px;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

    .drs-tipo {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 28px;
        height: 20px;
        border-radius: 5px;
        font-size: 10.5px;
        font-weight: 700;
        background: var(--de-acc-soft);
        color: var(--de-acc-deep);
    }

        .drs-tipo.nc { background: var(--de-err-bg); color: var(--de-err); }
        .drs-tipo.bo { background: var(--de-prog-bg); color: var(--de-prog); }

    .drs-edad {
        font-size: 11px;
        padding: 1px 7px;
        border-radius: 999px;
        background: var(--de-surface-3);
        color: var(--de-muted);
        white-space: nowrap;
    }

        .drs-edad.vieja { background: var(--de-warn-bg); color: var(--de-warn); }
        .drs-edad.vence { background: var(--de-alert-bg); color: var(--de-alert); font-weight: 600; }

    .drs-nota {
        display: flex;
        gap: 9px;
        align-items: flex-start;
        margin-top: 12px;
        padding: 10px 12px;
        border-radius: 9px;
        font-size: 12px;
        color: var(--de-ink-2);
        background: var(--de-surface-2);
        border: 1px dashed var(--de-line-strong);
    }

        .drs-nota.info { background: var(--de-acc-soft); border: 1px solid var(--de-acc-line); }
        .drs-nota.warn { background: var(--de-warn-bg); border: 1px solid var(--de-warn-line); }
        .drs-nota.err { background: var(--de-err-bg); border: 1px solid var(--de-err-line); }
        .drs-nota b { color: var(--de-ink); }

    /* ---------------------------------------------------------- vacío / cargando */
    .drs-vacio {
        text-align: center;
        padding: 30px 10px 20px;
        animation: drs-rise .35s ease-out both;
    }

        .drs-vacio .ic {
            width: 70px;
            height: 70px;
            border-radius: 50%;
            margin: 0 auto 14px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: var(--de-ok-bg);
            color: var(--de-ok);
        }

            .drs-vacio .ic svg { width: 34px; height: 34px; }

        .drs-vacio .t {
            font-size: 18px;
            font-weight: 700;
            color: var(--de-ink);
        }

        .drs-vacio .d {
            font-size: 13px;
            color: var(--de-muted);
            margin-top: 6px;
            max-width: 480px;
            margin-left: auto;
            margin-right: auto;
            line-height: 1.5;
        }

        .drs-vacio .pill {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            margin-top: 14px;
            padding: 6px 12px;
            border-radius: 999px;
            font-size: 12px;
            font-weight: 600;
            background: var(--de-acc-soft);
            color: var(--de-acc-deep);
            border: 1px solid var(--de-acc-line);
        }

    .drs-cargando {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 50px 0;
        color: var(--de-muted);
        font-size: 13px;
    }

    /* ---------------------------------------------------------- enviando */
    .drs-run {
        display: flex;
        gap: 22px;
        align-items: center;
        animation: drs-rise .3s ease-out both;
    }

    @media (max-width: 720px) {
        .drs-run { flex-direction: column; align-items: stretch; }
    }

    .drs-ring {
        position: relative;
        width: 132px;
        height: 132px;
        flex: none;
        align-self: center;
    }

        .drs-ring svg { width: 132px; height: 132px; transform: rotate(-90deg); }
        .drs-ring circle { fill: none; stroke-width: 10; }
        .drs-ring .bg { stroke: var(--de-surface-3); }
        .drs-ring .fg { stroke: var(--de-acc); stroke-linecap: round; transition: stroke-dashoffset .6s ease; }

        .drs-ring .c {
            position: absolute;
            inset: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
        }

            .drs-ring .c .n {
                font-size: 26px;
                font-weight: 700;
                color: var(--de-ink);
                font-variant-numeric: tabular-nums;
            }

            .drs-ring .c .s {
                font-size: 11px;
                color: var(--de-muted);
            }

    .drs-run-info { flex: 1; min-width: 0; }

    .drs-run-t {
        font-size: 17px;
        font-weight: 700;
        color: var(--de-ink);
        display: flex;
        align-items: center;
        gap: 9px;
    }

    .drs-run-doc {
        font-size: 12.5px;
        color: var(--de-muted);
        margin-top: 3px;
        font-family: "IBM Plex Mono", Consolas, monospace;
    }

    .drs-barra {
        height: 6px;
        border-radius: 3px;
        background: var(--de-surface-3);
        overflow: hidden;
        margin: 12px 0 14px;
    }

        .drs-barra span {
            display: block;
            height: 100%;
            border-radius: 3px;
            background: repeating-linear-gradient(45deg, var(--de-acc) 0 10px, #14806d 10px 14px);
            background-size: 28px 100%;
            animation: drs-bar .8s linear infinite;
            transition: width .6s ease;
        }

    .drs-run .drs-sum { grid-template-columns: repeat(4, 1fr); margin-bottom: 0; }

    .drs-log {
        margin-top: 16px;
        border: 1px solid var(--de-line);
        border-radius: 9px;
        overflow: hidden;
    }

        .drs-log .row {
            display: grid;
            grid-template-columns: 64px 130px 1fr auto;
            gap: 10px;
            align-items: center;
            padding: 7px 12px;
            font-size: 12px;
            border-bottom: 1px solid var(--de-line);
            animation: drs-rise .3s ease-out both;
        }

            .drs-log .row:last-child { border-bottom: none; }
            .drs-log .hora { color: var(--de-faint); font-variant-numeric: tabular-nums; }
            .drs-log .doc { font-family: "IBM Plex Mono", Consolas, monospace; color: var(--de-ink); }

            .drs-log .msg {
                color: var(--de-muted);
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
            }

    .drs-est {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        height: 20px;
        padding: 0 8px;
        border-radius: 999px;
        font-size: 10.5px;
        font-weight: 700;
        white-space: nowrap;
    }

        .drs-est.ok { background: var(--de-ok-bg); color: var(--de-ok); }
        .drs-est.rec { background: var(--de-acc-soft); color: var(--de-acc-deep); }
        .drs-est.err { background: var(--de-err-bg); color: var(--de-err); }
        .drs-est.omit { background: var(--de-surface-3); color: var(--de-muted); }
        .drs-est.pend { background: var(--de-warn-bg); color: var(--de-warn); }

    /* ---------------------------------------------------------- resultado */
    .drs-res-h {
        display: flex;
        align-items: center;
        gap: 16px;
        margin-bottom: 16px;
        animation: drs-rise .3s ease-out both;
    }

    .drs-seal {
        width: 58px;
        height: 58px;
        border-radius: 50%;
        flex: none;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        background: var(--c, var(--de-ok));
        box-shadow: 0 0 0 7px var(--bg, var(--de-ok-bg));
    }

        .drs-seal svg { width: 28px; height: 28px; stroke: currentColor; fill: none; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }

    .drs-res-t { font-size: 18px; font-weight: 700; color: var(--de-ink); }
    .drs-res-s { font-size: 12.5px; color: var(--de-muted); margin-top: 3px; }

    .drs-grupo {
        margin-top: 14px;
        border: 1px solid var(--de-line);
        border-radius: 9px;
        overflow: hidden;
        animation: drs-rise .3s ease-out both;
    }

        .drs-grupo > .h {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 9px 12px;
            font-size: 12.5px;
            font-weight: 700;
            color: var(--de-ink);
            background: var(--de-surface-2);
            border-bottom: 1px solid var(--de-line);
        }

            .drs-grupo > .h .n {
                min-width: 22px;
                height: 20px;
                padding: 0 6px;
                border-radius: 999px;
                font-size: 11px;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                color: #fff;
                background: var(--c, var(--de-muted));
            }

        .drs-grupo.err { --c: var(--de-err); }
        .drs-grupo.pend { --c: var(--de-warn); }
        .drs-grupo.ok { --c: var(--de-ok); }
        .drs-grupo.omit { --c: var(--de-faint); }

        .drs-grupo .it {
            display: grid;
            grid-template-columns: 34px 130px 1fr auto;
            gap: 10px;
            align-items: start;
            padding: 9px 12px;
            border-bottom: 1px solid var(--de-line);
            font-size: 12.5px;
        }

            .drs-grupo .it:last-child { border-bottom: none; }
            .drs-grupo .it .doc { font-family: "IBM Plex Mono", Consolas, monospace; color: var(--de-ink); }
            .drs-grupo .it .cli { color: var(--de-ink-2); font-weight: 600; }
            .drs-grupo .it .msg { color: var(--de-muted); font-size: 12px; margin-top: 2px; }
            .drs-grupo .it .cod { font-family: "IBM Plex Mono", Consolas, monospace; font-size: 11px; color: var(--de-err); margin-right: 5px; }

        .drs-grupo .chips {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            padding: 10px 12px;
        }

    .drs-chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 3px 9px;
        border-radius: 999px;
        font-size: 11.5px;
        font-family: "IBM Plex Mono", Consolas, monospace;
        background: var(--de-ok-bg);
        color: var(--de-ok);
        border: 1px solid var(--de-ok-line);
    }

        .drs-chip.rec { background: var(--de-acc-soft); color: var(--de-acc-deep); border-color: var(--de-acc-line); }
        .drs-chip small { font-family: inherit; font-size: 10px; opacity: .8; }

    /* ---------------------------------------------------------- programación */
    .drs-prog {
        display: grid;
        grid-template-columns: 1.15fr 1fr;
        gap: 18px;
        animation: drs-rise .3s ease-out both;
    }

    @media (max-width: 720px) {
        .drs-prog { grid-template-columns: 1fr; }
    }

    .drs-card {
        border: 1px solid var(--de-line);
        border-radius: 10px;
        padding: 14px;
        background: var(--de-surface);
    }

        .drs-card + .drs-card { margin-top: 12px; }

        .drs-card h4 {
            margin: 0 0 10px;
            font-size: 10.5px;
            font-weight: 700;
            letter-spacing: .08em;
            text-transform: uppercase;
            color: var(--de-muted);
        }

    .drs-switch {
        display: flex;
        align-items: center;
        gap: 14px;
        padding: 14px;
        border-radius: 10px;
        border: 1px solid var(--de-line);
        background: var(--de-surface-2);
        cursor: pointer;
        margin-bottom: 12px;
        user-select: none;
    }

        .drs-switch.on {
            border-color: var(--de-acc-line);
            background: var(--de-acc-soft);
        }

        .drs-switch .tg {
            width: 42px;
            height: 24px;
            border-radius: 999px;
            background: var(--de-line-strong);
            position: relative;
            flex: none;
            transition: background .2s;
        }

            .drs-switch .tg::after {
                content: "";
                position: absolute;
                top: 3px;
                left: 3px;
                width: 18px;
                height: 18px;
                border-radius: 50%;
                background: #fff;
                box-shadow: 0 1px 3px rgba(0,0,0,.25);
                transition: transform .2s;
            }

        .drs-switch.on .tg { background: var(--de-acc); }
        .drs-switch.on .tg::after { transform: translateX(18px); }

        .drs-switch .t { font-size: 14px; font-weight: 700; color: var(--de-ink); }
        .drs-switch .d { font-size: 12px; color: var(--de-muted); margin-top: 2px; }

    .drs-dias {
        display: flex;
        gap: 6px;
        flex-wrap: wrap;
    }

        .drs-dias button {
            width: 38px;
            height: 38px;
            border-radius: 50%;
            border: 1.5px solid var(--de-line-strong);
            background: var(--de-surface);
            color: var(--de-muted);
            font: inherit;
            font-size: 12.5px;
            font-weight: 700;
            cursor: pointer;
            transition: all .15s;
        }

            .drs-dias button:hover { border-color: var(--de-acc); color: var(--de-acc); }

            .drs-dias button.on {
                background: var(--de-acc);
                border-color: var(--de-acc);
                color: #fff;
                box-shadow: 0 4px 10px -4px var(--de-acc);
            }

    .drs-atajos {
        display: flex;
        gap: 6px;
        margin-top: 8px;
    }

        .drs-atajos button {
            border: none;
            background: transparent;
            color: var(--de-acc);
            font: inherit;
            font-size: 11.5px;
            font-weight: 600;
            cursor: pointer;
            padding: 2px 4px;
        }

            .drs-atajos button:hover { text-decoration: underline; }

    .drs-horas {
        display: flex;
        gap: 6px;
        flex-wrap: wrap;
        align-items: center;
    }

    .drs-hora {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        height: 32px;
        padding: 0 6px 0 12px;
        border-radius: 999px;
        background: var(--de-acc-soft);
        border: 1px solid var(--de-acc-line);
        color: var(--de-acc-deep);
        font-family: "IBM Plex Mono", Consolas, monospace;
        font-size: 13px;
        font-weight: 600;
    }

        .drs-hora button {
            border: none;
            background: transparent;
            color: var(--de-acc-deep);
            cursor: pointer;
            width: 22px;
            height: 22px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

            .drs-hora button:hover { background: rgba(15,107,92,.15); }

    .drs-addhora {
        display: inline-flex;
        align-items: center;
        gap: 6px;
    }

        .drs-addhora input {
            height: 32px;
            border: 1px dashed var(--de-line-strong);
            border-radius: 999px;
            padding: 0 10px;
            font: inherit;
            font-size: 12.5px;
            color: var(--de-ink);
            background: var(--de-surface);
        }

    .drs-fila {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 8px 0;
        border-bottom: 1px solid var(--de-line);
        font-size: 12.5px;
        color: var(--de-ink-2);
    }

        .drs-fila:last-child { border-bottom: none; }
        .drs-fila select, .drs-fila input { width: 120px; }

    .drs-proxima {
        border-radius: 10px;
        padding: 14px;
        color: #fff;
        background: linear-gradient(135deg, var(--de-acc-deep), var(--de-acc));
        margin-bottom: 12px;
    }

        .drs-proxima .l {
            font-size: 10.5px;
            font-weight: 700;
            letter-spacing: .1em;
            text-transform: uppercase;
            color: rgba(255,255,255,.75);
        }

        .drs-proxima .v { font-size: 20px; font-weight: 700; margin-top: 4px; }
        .drs-proxima .s { font-size: 12px; color: rgba(255,255,255,.8); margin-top: 3px; }

        .drs-proxima.off {
            background: var(--de-surface-3);
            color: var(--de-muted);
        }

            .drs-proxima.off .l, .drs-proxima.off .s { color: var(--de-muted); }
            .drs-proxima.off .v { color: var(--de-ink-2); }

    .drs-hist .it {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 8px 0;
        border-bottom: 1px solid var(--de-line);
        font-size: 12px;
        cursor: pointer;
    }

        .drs-hist .it:last-child { border-bottom: none; }
        .drs-hist .it:hover .q { color: var(--de-acc); }
        .drs-hist .q { flex: 1; color: var(--de-ink-2); }
        .drs-hist .q small { display: block; color: var(--de-faint); font-size: 11px; }
        .drs-hist .k { display: flex; gap: 4px; }

    .drs-ok-save {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: var(--de-ok);
        font-size: 12px;
        font-weight: 600;
        animation: drs-rise .3s ease-out both;
    }

    .drs-error {
        margin-bottom: 12px;
    }

.drs-check {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-top: 9px;
        font-size: 12.5px;
        color: var(--de-ink-2);
        cursor: pointer;
    }

        .drs-check input { width: 15px; height: 15px; accent-color: var(--de-acc); }

    .drs-hint { font-size: 11.5px; color: var(--de-faint); margin-top: 6px; }

    @media (prefers-reduced-motion: reduce) {
        .drs-scrim, .drs-modal, .drs-sum, .drs-tabla-wrap, .drs-vacio, .drs-run, .drs-res-h, .drs-grupo, .drs-prog,
        .drs-log .row, .drs-barra span, .drs-spin, .drs-tabs .live, .drs-ok-save {
            animation: none !important;
        }
    }
