/* =========================================================================
   Reserva de ESCRITORIO de la ficha del tour
   (panel lateral · checkout · confirmación)

   El HTML lo pinta _BookingWizard en modo escritorio dentro de
   #dmaDeskPanel y #dmaDeskPage (_DesktopView). Reutiliza las piezas del
   wizard móvil (.dma-cal, .dma-veh, .dma-card, .dma-row, .dma-result…);
   aquí sólo va el layout de escritorio y lo que el mockup cambia.
   Prefijo propio: .dmd-*
   ========================================================================= */

.dma-desk {
    --dma-sand: #f7f3ec;
    --dma-sand-deep: #efe8dc;
    --dma-beige: #f3eee6;
    --dma-ink: #23211c;
    --dma-ink-soft: #5c574d;
    --dma-ink-faint: #8f897c;
    --dma-jungle: #1f6b34;
    --dma-jungle-deep: #17532a;
    --dma-lime: #57b947;
    --dma-clay: #c2703d;
    --dma-line: #e5ddd0;
    --dma-field: #cfcac1;
    --dma-danger: #c23d3d;
    --dma-display: "Inter", system-ui, sans-serif;
    --dma-body: "Inter", system-ui, -apple-system, sans-serif;
    --dma-mono: "DM Mono", ui-monospace, monospace;
    font-family: var(--dma-body);
    color: var(--dma-ink);
}

    .dma-desk button {
        font-family: inherit;
    }

/* ============================ PANEL LATERAL ============================ */

.dmd-panel {
    padding: 4px 12px 8px;
}

.dmd-from__label {
    display: block;
    font-size: 11px;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--dma-ink-soft);
}

.dmd-from__price {
    display: flex;
    align-items: baseline;
    gap: 6px;
    line-height: 1.1;
}

    .dmd-from__price b {
        font-size: 26px;
        font-weight: 400;
    }

    .dmd-from__price span {
        font-size: 20px;
        color: var(--dma-ink-faint);
    }

.dmd-sec {
    margin-top: 30px;
}

    .dmd-sec + .dmd-sec {
        margin-top: 30px;
    }

/* ---- acordeones "SELECT DATE" / "SELECT VEHICLE" ---- */
.dmd-acc {
    display: flex;
    width: 100%;
    min-height: fit-content;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px 10px 10px;
    border: 1px solid var(--dma-ink-faint);
    border-radius: 4px;
    background: #f7f7f5;
    color: var(--dma-ink);
    text-align: left;
    transition: border-color .15s ease, background-color .15s ease;
}

    .dmd-acc:hover {
        border-color: var(--dma-ink);
    }

    .dmd-acc:focus-visible {
        outline: 2px solid var(--dma-jungle);
        outline-offset: 2px;
    }

.dmd-acc__main {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.dmd-acc__label {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.dmd-acc__value {
    font-size: 13px;
    color: var(--dma-jungle);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dmd-acc__chev {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    transform: rotate(90deg);
    transition: transform .2s ease;
}

.dmd-acc.is-open .dmd-acc__chev {
    transform: rotate(-90deg);
}

/* calendario dentro del panel */
.dmd-panel .dma-cal {
    margin-top: 6px;
    border-color: var(--dma-ink-faint);
    border-radius: 4px;
    padding: 16px 14px 10px;
}

.dmd-panel .dma-cal__month {
    font-family: var(--dma-body);
    font-weight: 400;
}

.dmd-panel .dma-cal__dow {
    font-weight: 400;
    margin-bottom: 10px;
}

.dmd-panel .dma-day {
    font-weight: 400;
    font-size: 13px;
    border-radius: 999px;
    aspect-ratio: auto;
    height: 36px;
}

/* lista de vehículos dentro del panel */
.dmd-vlist {
    margin-top: 6px;
    border: 1px solid var(--dma-ink-faint);
    border-radius: 4px;
    padding: 4px;
    animation: dma-fade .25s ease;
}

.dmd-veh.dma-veh {
    margin: 4px;
    padding: 14px;
    border-radius: 10px;
    border-color: var(--dma-line);
}

    .dmd-veh.dma-veh.is-on {
        border-color: rgba(31,107,52,.45);
        background: rgba(31,107,52,.03);
    }

.dmd-veh .dma-veh__icon {
    width: 44px;
    height: 44px;
    border-radius: 8px;
    background: var(--dma-beige);
    color: var(--dma-ink-soft);
}

.dmd-veh .dma-veh__name {
    font-family: var(--dma-body);
    font-size: 14.5px;
    font-weight: 500;
}

.dmd-veh .dma-veh__cap {
    font-size: 12px;
    color: var(--dma-ink-faint);
}

.dmd-veh .dma-veh__price {
    font-size: 13px;
    font-weight: 400;
    color: var(--dma-jungle);
}

    .dmd-veh .dma-veh__price span {
        color: var(--dma-ink-faint);
    }

.dmd-veh .dma-stepper {
    gap: 8px;
}

.dmd-veh .dma-stepbtn {
    width: 34px;
    height: 34px;
}

.dmd-vlist .dma-insnote {
    margin: 8px 4px 4px;
}

/* salidas */
.dmd-deps .dma-eyebrow {
    font-size: 12px;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.dmd-deps .dma-group {
    margin-top: 10px;
}

.dmd-deps .dma-dep {
    border-radius: 8px;
    padding: 12px 14px;
}

.dmd-deps .dma-dep__time {
    font-family: var(--dma-body);
    font-size: 16px;
}

/* ---- "WHERE ARE YOU STAYING?" ---- */
.dmd-stay {
    margin-top: 40px;
}

.dmd-h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.dmd-stay .dmd-sub {
    margin: 6px 0 22px;
    font-size: 13px;
}

.dmd-stay .dma-search .dma-input {
    height: fit-content;
    border-radius: 4px;
    border-color: var(--dma-ink-faint);
    background: #f7f7f5;
}

.dmd-stay .dma-hint {
    margin-top: 10px;
    font-size: 11px;
    color: var(--dma-ink-faint);
}

/* "I haven't booked my accommodation yet": botón con contorno, centrado */
.dmd-stay .dma-dashed {
    width: 100%;
    margin: 10px 0 0;
    padding: 14px;
    border: 0;
    border-radius: 10px;
    background: var(--dma-jungle);
    color: #fff;
    font-size: 13px;
    font-weight: 500;
    justify-content: center;
    box-shadow: none;
    transition: background-color .15s ease;
}

    .dmd-stay .dma-dashed svg {
        display: none;
    }

    .dmd-stay .dma-dashed:hover {
        background: var(--dma-jungle-deep);
        color: #fff;
    }

.dmd-stay .dma-center {
    display: block;
    margin: 14px auto 0;
}

.dmd-stay .dma-result {
    margin-top: 16px;
}

/* ---- CTA "BOOK NOW" (panel y checkout) ---- */
.dmd-ctawrap {
    margin-top: 40px;
}

.dmd-cta {
    display: block;
    width: 100%;
    height: 45px;
    border: 0;
    border-radius: 10px;
    background: var(--dma-jungle);
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .1em;
    text-transform: uppercase;
    transition: background-color .15s ease, opacity .15s ease;
}

    .dmd-cta:hover:not(:disabled) {
        background: var(--dma-jungle-deep);
    }

    .dmd-cta:focus-visible {
        outline: 2px solid var(--dma-jungle);
        outline-offset: 3px;
    }

    .dmd-cta:disabled {
        opacity: .45;
        cursor: not-allowed;
    }

.dmd-cta__hint {
    margin: 10px 0 0;
    font-size: 12px;
    text-align: center;
    color: var(--dma-ink-faint);
}

/* =============================== CHECKOUT =============================== */

.dmd-page {
    background: #f7f7f5;
    min-height: 70vh;
}

.dmd-box {
    background: #fff;
    border-radius: 6px;
    padding: 20px;
}

/* Resumen del checkout: sin scroll propio, acompaña al hacer scroll.
   Si es más alto que la ventana, el JS (deskFitSticky) le pone un "top"
   negativo para que se pegue por ABAJO y el botón Book now siempre se vea. */
@media (min-width: 768px) {
    .dmd-sticky {
        position: sticky;
        top: 20px;
    }
}

.dmd-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 14px;
    border: 0;
    background: transparent;
    padding: 4px 0;
    font-size: 13.5px;
    color: var(--dma-ink-soft);
}

    .dmd-back:hover {
        color: var(--dma-jungle);
    }

.dmd-h2 {
    margin: 0;
    font-size: 26px;
    font-weight: 400;
    letter-spacing: .01em;
    text-transform: uppercase;
    line-height: 1.2;
}

.dmd-sub {
    margin: 6px 0 20px;
    font-size: 14px;
    color: var(--dma-ink);
}

.dmd-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px 16px;
}

.dmd-form__full {
    grid-column: 1 / -1;
}

@media (max-width: 767.98px) {
    .dmd-form {
        grid-template-columns: 1fr;
    }
}

.dmd-checkout .dma-field {
    margin-bottom: 14px;
}

.dmd-checkout .dma-field__label {
    font-size: 12px;
    font-weight: 500;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--dma-ink);
}

    .dmd-checkout .dma-field__label b {
        color: var(--dma-clay);
    }

.dmd-checkout .dma-field__hint {
    font-size: 11px;
    text-transform: none;
    letter-spacing: 0;
    color: var(--dma-ink-faint);
}

.dmd-checkout .dma-input {
    min-height: 46px;
    border-radius: 8px;
    border-color: var(--dma-field);
    background: #fff;
    font-size: 14px;
}

.dmd-checkout textarea.dma-input {
    min-height: 88px;
}

.dmd-checkout .iti {
    width: 100%;
}

.dmd-privacy.dma-note {
    margin-top: 6px;
    border: 0;
    border-radius: 6px;
    background: var(--dma-beige);
    padding: 18px 20px;
    font-size: 12.5px;
}

.dmd-h2--pay {
    margin-top: 28px;
}

.dmd-checkout .dma-trust {
    justify-content: flex-start;
    margin: 12px 0 16px;
}

.dmd-stripe {
    min-height: 180px;
}

/* columna derecha: resumen */
.dmd-checkout .dma-card {
    border-radius: 10px;
    margin-bottom: 10px;
}

.dmd-checkout .dma-card__title {
    font-weight: 400;
}

.dmd-checkout .dma-row > span,
.dmd-checkout .dma-row > b {
    font-size: 13.5px;
}

.dmd-checkout .dma-total span {
    font-family: var(--dma-body);
    font-size: 13.5px;
}

.dmd-insnote {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px;
    margin: 20px 0 20px;
    border-radius: 10px;
    background: var(--dma-beige);
    padding: 18px 16px;
    font-size: 12.5px;
    color: var(--dma-ink-soft);
}

    .dmd-insnote b {
        font-weight: 400;
        color: var(--dma-clay);
    }

/* ============================= CONFIRMACIÓN ============================= */

.dmd-done__hero {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 335px;
    max-width: 1275px;
    margin: 0 auto;
    border-radius: 6px;
    overflow: hidden;
    background: #3b3a35 center / cover no-repeat;
    color: #fff;
    text-align: center;
}

    .dmd-done__hero::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.35) 60%, rgba(0,0,0,.5) 100%);
    }

.dmd-done__inner {
    position: relative;
    padding: 40px 20px 70px;
}

.dmd-done__check {
    display: grid;
    place-items: center;
    width: 80px;
    height: 80px;
    margin: 0 auto;
    border-radius: 999px;
    background: #4cb648;
    color: #fff;
    box-shadow: 0 6px 20px rgba(0,0,0,.2);
    animation: dma-pop .4s ease;
}

.dmd-done__title {
    margin: 22px 0 0;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: .01em;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 1px 8px rgba(0,0,0,.35);
}

.dmd-done__sub {
    margin: 8px 0 0;
    font-size: 15px;
    color: rgba(255,255,255,.92);
}

.dmd-done__code {
    position: relative;
    width: 342px;
    max-width: calc(100% - 32px);
    margin: -46px auto 0;
    border: 1px solid #cfcac1;
    border-radius: 10px;
    background: #fff;
    padding: 20px 16px;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,.12);
}

    .dmd-done__code span {
        display: block;
        font-size: 11px;
        letter-spacing: .15em;
        text-transform: uppercase;
        color: var(--dma-jungle);
    }

    .dmd-done__code b {
        display: block;
        margin-top: 6px;
        font-family: var(--dma-mono);
        font-size: 24px;
        font-weight: 400;
        letter-spacing: .15em;
    }

.dmd-done__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    max-width: 980px;
    margin: 30px auto 0;
    align-items: start;
}

@media (max-width: 991.98px) {
    .dmd-done__grid {
        grid-template-columns: 1fr;
        gap: 0;
    }
}

.dmd-done .dma-card {
    border-radius: 10px;
    padding: 18px 16px;
    margin-bottom: 16px;
}

.dmd-done .dma-card__title {
    font-weight: 400;
    margin-bottom: 14px;
}

.dmd-done .dma-row > span,
.dmd-done .dma-row > b {
    font-size: 13.5px;
}

.dmd-done__email.dma-note {
    margin: 20px 0 16px;
    border: 0;
    border-radius: 8px;
    background: var(--dma-beige);
    padding: 12px 14px;
    font-size: 12.5px;
}

.dmd-done__warn {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin-top: 8px;
    font-size: 11.5px;
    line-height: 1.4;
    color: var(--dma-clay);
}

    .dmd-done__warn svg {
        flex: 0 0 auto;
        margin-top: 1px;
    }

.dmd-done__tiles {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 10px;
}

    .dmd-done__tiles .dma-tile-btn {
        width: 100px;
        min-height: 90px;
        justify-content: center;
        border-radius: 8px;
        padding: 12px 6px;
        transition: border-color .15s ease, box-shadow .15s ease;
    }

        .dmd-done__tiles .dma-tile-btn:hover {
            border-color: var(--dma-jungle);
            box-shadow: 0 2px 8px rgba(0,0,0,.06);
        }

        .dmd-done__tiles .dma-tile-btn span {
            font-size: 12.5px;
            font-weight: 400;
        }

.dmd-done__change {
    margin: 60px 0 40px;
    text-align: center;
    font-size: 13px;
    color: var(--dma-ink-soft);
}

    .dmd-done__change a {
        color: var(--dma-jungle);
        text-decoration: underline;
        text-underline-offset: 3px;
    }

.dmd-done-err {
    max-width: 560px;
    margin: 0 auto;
    padding: 40px 28px;
    text-align: center;
}

.dmd-done-err__icon {
    display: grid;
    place-items: center;
    width: 72px;
    height: 72px;
    margin: 0 auto 16px;
    border-radius: 999px;
    background: rgba(194,61,61,.1);
    color: var(--dma-danger);
}

.dmd-done-err .dmd-done__tiles {
    margin-top: 20px;
}

/* Notas (privacidad, correo enviado): ícono y texto en la misma línea. */
.dma-desk .dma-note {
    flex-direction: row;
    align-items: center;
    gap: 10px;
    color: var(--dma-ink-soft);
}

    .dma-desk .dma-note svg {
        flex: 0 0 auto;
        color: var(--dma-jungle);
    }

/* "SELECT DATE" ya no es acordeón: el calendario va siempre abierto debajo. */
.dmd-acc--static {
    cursor: default;
}

    .dmd-acc--static:hover {
        border-color: var(--dma-ink-faint);
    }

/* Nota azul del seguro: arriba de la lista de vehículos. */
.dmd-vlist > .dma-insnote:first-child {
    margin: 4px 4px 8px;
}

/* Botón "Confirm vehicles": cierra la lista de vehículos. */
.dmd-vdone {
    display: block;
    width: calc(100% - 8px);
    margin: 8px 4px 4px;
    padding: 12px;
    border: 1px solid var(--dma-jungle);
    border-radius: 10px;
    background: #fff;
    color: var(--dma-jungle);
    font-size: 13.5px;
    font-weight: 500;
    transition: background-color .15s ease, color .15s ease;
}

    .dmd-vdone:hover:not(:disabled) {
        background: var(--dma-jungle);
        color: #fff;
    }

    .dmd-vdone:disabled {
        opacity: .4;
        cursor: not-allowed;
    }

/* =========================================================================
   PAGO Y CONFIRMACIÓN DENTRO DEL PANEL (columna angosta de la derecha)
   Ya no hay página aparte: el wizard pinta todo en #dmaDeskPanel.
   ========================================================================= */

/* el panel acompaña al scroll; el "top" lo pone el JS (deskFitSticky)
   para que quede debajo del header fijo del sitio */
@media (min-width: 768px) {
    .dmk-bookcard.dmd-sticky {
        position: sticky;
        top: 100px;
    }
}

.dmd-checkout--panel .dmd-back {
    margin-bottom: 10px;
}

.dmd-panel .dmd-h2 {
    font-size: 19px;
    font-weight: 500;
}

.dmd-panel .dmd-sub {
    font-size: 13px;
    margin-bottom: 14px;
}

.dmd-panel .dmd-form {
    grid-template-columns: 1fr;
}

.dmd-checkout--panel #dmaDeskRight {
    margin-bottom: 28px;
}

.dmd-checkout--panel #dmaDeskRight .dmd-insnote {
    margin-bottom: 0;
}

.dmd-checkout--panel #dmaDeskPayWrap {
    margin-top: 18px;
}

.dmd-panel .dmd-h2--pay {
    margin-top: 22px;
}

.dmd-panel .dmd-privacy.dma-note {
    padding: 14px 16px;
}

/* ---- confirmación ---- */
.dmd-panel .dmd-done {
    max-width: none;
    padding: 0 !important;
}

.dmd-panel .dmd-done__hero {
    min-height: 220px;
    border-radius: 10px;
}

.dmd-panel .dmd-done__inner {
    padding: 26px 14px 56px;
}

.dmd-panel .dmd-done__check {
    width: 62px;
    height: 62px;
}

.dmd-panel .dmd-done__title {
    margin-top: 14px;
    font-size: 19px;
}

.dmd-panel .dmd-done__sub {
    font-size: 13.5px;
}

.dmd-panel .dmd-done__code {
    width: auto;
    max-width: calc(100% - 28px);
    margin-top: -38px;
    padding: 16px 12px;
}

    .dmd-panel .dmd-done__code b {
        font-size: 21px;
    }

.dmd-panel .dmd-done__grid {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 6px;
}

.dmd-panel .dmd-done__tiles {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

    .dmd-panel .dmd-done__tiles .dma-tile-btn {
        width: auto;
        min-height: 78px;
    }

.dmd-panel .dmd-done__change {
    margin: 26px 0 8px;
}

.dmd-panel .dmd-done-err {
    padding: 24px 8px;
}

/* "Total today" debajo del formulario de Stripe (igual que el móvil) */
.dmd-totaltoday {
    margin-top: 18px;
    border-radius: 16px;
    background: rgba(239,232,220,.6);
    padding: 16px;
}

.dmd-totaltoday__ins {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-top: 4px;
    font-size: 12px;
    color: var(--dma-ink-soft);
}

    .dmd-totaltoday__ins b {
        font-weight: 600;
        color: var(--dma-clay);
    }

/* =========================================================================
   PANEL COMPACTO
   Todo el panel (reserva, pago y confirmación) más apretado para que su alto
   se acerque al de la columna de contenido y no haya que scrollear tanto.
   Va al final para ganarle a las reglas de arriba con la misma especificidad.
   ========================================================================= */

.dmk-bookcard {
    padding: 14px 4px;
}

.dmd-panel {
    padding: 2px 12px 4px;
}

/* ---- paso 1: precio, fecha, vehículos, hospedaje ---- */
.dmd-panel .dmd-from__price b {
    font-size: 22px;
}

.dmd-panel .dmd-from__price span {
    font-size: 16px;
}

.dmd-panel .dmd-sec,
.dmd-panel .dmd-sec + .dmd-sec {
    margin-top: 14px;
}

.dmd-panel .dmd-acc {
    min-height: 50px;
    padding: 8px 12px 8px 10px;
}

.dmd-panel .dmd-acc__label {
    font-size: 13px;
}

.dmd-panel .dma-cal {
    padding: 10px 10px 6px;
}

.dmd-panel .dma-cal__nav {
    margin-bottom: 6px;
}

.dmd-panel .dma-day {
    height: 30px;
    font-size: 12.5px;
}

.dmd-panel .dmd-veh.dma-veh {
    padding: 10px;
    margin: 3px;
}

.dmd-panel .dmd-veh .dma-veh__icon {
    width: 36px;
    height: 36px;
}

.dmd-panel .dmd-veh .dma-stepbtn {
    width: 30px;
    height: 30px;
}

.dmd-panel .dmd-stay {
    margin-top: 22px;
}

.dmd-panel .dmd-h3 {
    font-size: 16px;
}

.dmd-panel .dmd-stay .dmd-sub {
    margin: 4px 0 12px;
}

.dmd-panel .dmd-stay .dma-search .dma-input {
    height: 50px;
}

.dmd-panel .dmd-stay .dma-dashed {
    margin-top: 14px;
    padding: 11px 18px;
}

.dmd-panel .dmd-ctawrap {
    margin-top: 22px;
}

.dmd-panel .dmd-cta {
    height: 46px;
}

/* ---- tarjetas de resumen (pago y confirmación) ---- */
.dmd-panel .dma-card {
    padding: 12px 14px;
    margin-bottom: 8px;
    border-radius: 10px;
}

.dmd-panel .dma-card__title {
    margin-bottom: 6px;
    font-size: 10.5px;
}

.dmd-panel .dma-row {
    padding: 2px 0;
}

    .dmd-panel .dma-row > span,
    .dmd-panel .dma-row > b {
        font-size: 12.5px;
    }

.dmd-panel .dma-hr {
    margin: 5px 0;
}

.dmd-panel .dma-muted {
    font-size: 11px;
    margin-top: 2px;
}

.dmd-panel .dma-total b {
    font-size: 18px;
}

.dmd-panel .dmd-h2 {
    font-size: 17px;
}

.dmd-panel .dmd-sub {
    margin: 2px 0 10px;
    font-size: 12.5px;
}

.dmd-checkout--panel .dmd-back {
    margin-bottom: 4px;
    font-size: 13px;
}

.dmd-checkout--panel #dmaDeskRight {
    margin-bottom: 0;
}

.dmd-checkout--panel #dmaDeskPayWrap {
    margin-top: 12px;
}

.dmd-panel .dmd-checkout .dma-field {
    margin-bottom: 10px;
}

.dmd-panel .dmd-checkout .dma-input {
    min-height: 40px;
}

.dmd-panel .dmd-checkout textarea.dma-input {
    min-height: 64px;
}

.dmd-panel .dmd-totaltoday {
    margin-top: 12px;
    padding: 12px 14px;
}

/* ---- confirmación ---- */
.dmd-panel .dmd-done__hero {
    min-height: 150px;
}

.dmd-panel .dmd-done__inner {
    padding: 14px 12px 40px;
}

.dmd-panel .dmd-done__check {
    width: 44px;
    height: 44px;
}

    .dmd-panel .dmd-done__check svg {
        width: 24px;
        height: 24px;
    }

.dmd-panel .dmd-done__title {
    margin-top: 8px;
    font-size: 16px;
}

.dmd-panel .dmd-done__sub {
    margin-top: 2px;
    font-size: 12.5px;
}

.dmd-panel .dmd-done__code {
    margin-top: -28px;
    padding: 10px 12px;
}

    .dmd-panel .dmd-done__code span {
        font-size: 10px;
    }

    .dmd-panel .dmd-done__code b {
        margin-top: 2px;
        font-size: 18px;
    }

.dmd-panel .dmd-done__email.dma-note {
    margin: 12px 0 8px;
    padding: 8px 12px;
    font-size: 11.5px;
}

.dmd-panel .dmd-done .dma-card {
    padding: 10px 14px;
    margin-bottom: 8px;
}

.dmd-panel .dmd-done__warn {
    margin-top: 4px;
    font-size: 11px;
}

/* los 5 botones (calendario, cómo llegar, compartir, WhatsApp, llamar) en una fila */
.dmd-panel .dmd-done__tiles {
    grid-template-columns: repeat(5, 1fr);
    gap: 6px;
    margin-top: 4px;
}

    .dmd-panel .dmd-done__tiles .dma-tile-btn {
        min-height: 0;
        padding: 8px 2px;
        gap: 4px;
        border-radius: 8px;
    }

        .dmd-panel .dmd-done__tiles .dma-tile-btn svg {
            width: 16px;
            height: 16px;
        }

        .dmd-panel .dmd-done__tiles .dma-tile-btn span {
            font-size: 10.5px;
            line-height: 1.15;
        }

.dmd-panel .dmd-done__change {
    margin: 14px 0 4px;
    font-size: 12px;
}


/* =========================================================================
   TABLETA (768–991px): el panel es más angosto. Calendario sin desbordarse
   (minmax(0,1fr) deja que las columnas se encojan) y menos relleno.
   ========================================================================= */
@media (min-width: 768px) and (max-width: 991.98px) {
    .dmd-panel {
        padding: 0 8px 4px;
    }

    .dmd-panel .dma-cal {
        padding: 8px 6px 4px;
    }

    .dmd-panel .dma-cal__grid {
        grid-template-columns: repeat(7, minmax(0, 1fr));
        gap: 2px;
    }

    .dmd-panel .dma-day {
        min-width: 0;
        padding: 0;
        height: 28px;
        font-size: 12px;
    }

    .dmd-panel .dmd-acc {
        padding-left: 10px;
        padding-right: 10px;
    }
}
