/* Scope all styling to the Designite widget; Elementor's generated styles override these defaults. */
.dsc-root {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    width: 100%;
    box-sizing: border-box;
}
.dsc-root[hidden] { display: none !important; }
.dsc-root, .dsc-root * { box-sizing: border-box; }
.dsc-prefix, .dsc-suffix {
    display: inline-block;
    min-width: 0;
    max-width: 100%;
    overflow-wrap: break-word;
}
.dsc-root .dsc-prefix { order: 1; }
.dsc-root .dsc-timer { order: 2; }
.dsc-root .dsc-suffix { order: 3; }
.dsc-root.dsc-position-start .dsc-timer { order: 0; }
.dsc-root.dsc-position-end .dsc-timer { order: 4; }
.dsc-timer {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    max-width: 100%;
    min-width: 0;
    font-variant-numeric: tabular-nums;
}
.dsc-separator {
    display: inline-block;
    flex: 0 0 auto;
    font-size: 24px;
    line-height: 1;
    font-variant-numeric: normal;
}
.dsc-unit {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    text-align: center;
}
.dsc-number {
    display: block;
    font-size: 24px;
    line-height: 1.1;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.dsc-unit-label {
    display: block;
    font-size: 12px;
    line-height: 1.2;
}
.dsc-expired-message { display: none; }
.dsc-root.dsc-is-expired .dsc-prefix,
.dsc-root.dsc-is-expired .dsc-suffix,
.dsc-root.dsc-is-expired .dsc-timer { display: none; }
.dsc-root.dsc-is-expired .dsc-expired-message { display: inline-block; }
