/*
 * Series y folios de facturas.
 * Concepto: el foliador. La numeradora de oficina con ruedas de dígitos; cada serie es un
 * contador propio que avanza sin tocar al otro. Color fijo en toda la página:
 * Serie A = azul tinta, Serie B = dorado, UUID fiscal = verde (identificador del SAT).
 * Display Instrument Sans semicondensada; los folios y el UUID en Martian Mono.
 * Momento animado único: en el hero las ruedas giran de A-103 a A-104 y de B-251 a B-252.
 * En el ejemplo, los renglones de la tabla aparecen en orden al entrar en pantalla.
 */
[data-function-layout="series-folios"] {
    --sf-ink: #041f49;
    --sf-ink-2: #0b2e61;
    --sf-a: #1f63c6;
    --sf-a-soft: #e8f0fc;
    --sf-b: #fac63f;
    --sf-b-text: #8a5d00;
    --sf-b-soft: #fff6dc;
    --sf-uuid: #0f7a5f;
    --sf-uuid-light: #6fd4b4;
    --sf-paper: #f3f5f8;
    --sf-line: #dbe2ea;
    --sf-muted: #4a5466;
    --sf-wheel: #0d1a33;
    --sf-display: "Instrument Sans", "Hanken Grotesk", ui-sans-serif, sans-serif;
    --sf-mono: "Martian Mono", ui-monospace, monospace;
    --sf-ease: cubic-bezier(.2, .7, .2, 1);
}

[data-function-layout="series-folios"] .cv-hero-title,
[data-function-layout="series-folios"] .cv-section-title,
[data-function-layout="series-folios"] .cv-form-title {
    font-family: var(--sf-display);
    font-stretch: 87.5%;
    letter-spacing: -.02em;
}

/* ---------- Reveal: solo opacidad ---------- */
.sf-reveal-ready [data-function-layout="series-folios"] [data-sf-reveal] { opacity: 0; transition: opacity .7s ease; }
.sf-reveal-ready [data-function-layout="series-folios"] [data-sf-reveal].is-visible { opacity: 1; }

/* ---------- Superficies y texto ---------- */
[data-function-layout="series-folios"] .sf-paper { background: var(--sf-paper); }
[data-function-layout="series-folios"] .sf-navy { background: var(--sf-ink); color: #fff; }
[data-function-layout="series-folios"] .sf-navy .cv-section-title { color: #fff; }
[data-function-layout="series-folios"] .sf-split { display: grid; gap: 2.5rem 4.5rem; align-items: start; }
[data-function-layout="series-folios"] .sf-lead {
    margin-top: 1.25rem;
    max-width: 48rem;
    color: #1f2a3d;
    font-size: clamp(1.0625rem, 1.4vw, 1.1875rem);
    line-height: 1.8;
}
[data-function-layout="series-folios"] .sf-body { margin-top: 1rem; max-width: 48rem; color: #2b3547; font-size: 1.0625rem; line-height: 1.8; }
[data-function-layout="series-folios"] .sf-navy .sf-lead,
[data-function-layout="series-folios"] .sf-navy .sf-body { color: rgb(255 255 255 / .86); }
[data-function-layout="series-folios"] .sf-link-line a {
    color: var(--sf-a);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: .2em;
}
[data-function-layout="series-folios"] .sf-navy .sf-link-line a { color: #fff; text-decoration-color: var(--sf-b); }
[data-function-layout="series-folios"] .sf-link-line a:hover { text-decoration-color: var(--sf-b); }
[data-function-layout="series-folios"] .sf-link-line a:focus-visible { outline: 3px solid rgb(31 99 198 / .45); outline-offset: 3px; border-radius: .2rem; }
[data-function-layout="series-folios"] .sf-list-intro { margin-top: 3rem; color: var(--sf-ink); font-family: var(--sf-display); font-size: 1.25rem; font-weight: 700; }

/* Chips y etiquetas de folio: el color identifica la serie. */
[data-function-layout="series-folios"] .sf-chip {
    display: inline-grid;
    place-items: center;
    min-width: 2rem;
    height: 2rem;
    padding-inline: .45rem;
    border-radius: .35rem;
    background: var(--sf-ink);
    color: #fff;
    font-family: var(--sf-mono);
    font-size: .9rem;
    font-weight: 700;
}
[data-function-layout="series-folios"] .sf-serie--a .sf-chip { background: var(--sf-a); }
[data-function-layout="series-folios"] .sf-serie--b .sf-chip { background: var(--sf-b); color: var(--sf-ink); }
[data-function-layout="series-folios"] .sf-tag {
    display: inline-block;
    padding: .3rem .6rem;
    border-radius: .3rem;
    background: var(--sf-a-soft);
    color: var(--sf-a);
    font-family: var(--sf-mono);
    font-size: .95rem;
    font-weight: 700;
    white-space: nowrap;
}
[data-function-layout="series-folios"] .sf-serie--b .sf-tag,
[data-function-layout="series-folios"] .sf-tag.sf-serie--b { background: var(--sf-b-soft); color: var(--sf-b-text); }

/* ---------- Hero ---------- */
[data-function-layout="series-folios"] #inicio { padding-block: clamp(2.5rem, 6vw, 5rem); background: var(--sf-ink); color: #fff; }
[data-function-layout="series-folios"] .rh-hero-layout { position: relative; z-index: 1; align-items: center; }
[data-function-layout="series-folios"] #inicio .cv-hero-title {
    max-width: 15ch;
    color: #fff;
    font-size: clamp(2.4rem, 4.6vw, 4rem);
    font-weight: 700;
    line-height: 1.02;
}
[data-function-layout="series-folios"] #inicio .cv-hero-description { max-width: 40rem; margin-top: 1.5rem; color: rgb(255 255 255 / .86); font-size: clamp(1rem, 1.3vw, 1.125rem); }
[data-function-layout="series-folios"] .sf-hero__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
[data-function-layout="series-folios"] #inicio .cv-primary-button { border-color: var(--sf-b); background: var(--sf-b); color: var(--sf-ink); box-shadow: 0 14px 30px rgb(0 0 0 / .3); }
[data-function-layout="series-folios"] #inicio .cv-primary-button:hover,
[data-function-layout="series-folios"] #inicio .cv-primary-button:focus-visible { background: #ffd666; }
[data-function-layout="series-folios"] #inicio .cv-secondary-button { border-color: rgb(255 255 255 / .7); background: transparent; color: #fff; }
[data-function-layout="series-folios"] #inicio .cv-secondary-button:hover,
[data-function-layout="series-folios"] #inicio .cv-secondary-button:focus-visible { background: #fff; color: var(--sf-ink); }
[data-function-layout="series-folios"] #inicio .cv-primary-button:focus-visible,
[data-function-layout="series-folios"] #inicio .cv-secondary-button:focus-visible { outline: 3px solid var(--sf-b); outline-offset: 3px; }
[data-function-layout="series-folios"] #inicio .function-hero__media img { object-position: 62% 40%; }
[data-function-layout="series-folios"] #inicio .function-hero__overlay {
    background:
        linear-gradient(180deg, transparent 62%, rgb(4 31 73 / .75) 100%),
        linear-gradient(90deg, rgb(4 31 73 / .97) 0%, rgb(4 31 73 / .9) 42%, rgb(9 40 84 / .72) 70%, rgb(12 50 102 / .55) 100%);
}

/* El foliador: cuerpo metálico, ventana y ruedas de dígitos. */
[data-function-layout="series-folios"] .sf-foliador {
    justify-self: center;
    width: fit-content;
    max-width: 100%;
    margin: 0;
    padding: 1.6rem 1.6rem 1.8rem;
    border-radius: 1rem;
    background: linear-gradient(160deg, #e9edf2 0%, #c9d1db 55%, #b4bfcc 100%);
    box-shadow: 0 30px 60px rgb(0 0 0 / .4), inset 0 1px 0 rgb(255 255 255 / .8), inset 0 -3px 0 rgb(4 31 73 / .15);
    color: var(--sf-ink);
    animation: sf-in .7s var(--sf-ease) .1s both;
}
[data-function-layout="series-folios"] .sf-foliador__label { margin: 0 0 1rem; font-family: var(--sf-display); font-size: 1.15rem; font-weight: 700; }
[data-function-layout="series-folios"] .sf-counter + .sf-counter { margin-top: 1.25rem; }
[data-function-layout="series-folios"] .sf-counter__name { margin: 0 0 .5rem; color: #34405a; font-size: .9rem; font-weight: 600; }
[data-function-layout="series-folios"] .sf-counter__window {
    display: flex;
    align-items: center;
    gap: .3rem;
    padding: .55rem;
    border-radius: .55rem;
    background: #1b2638;
    box-shadow: inset 0 3px 8px rgb(0 0 0 / .55);
}
[data-function-layout="series-folios"] .sf-wheel {
    position: relative;
    display: block;
    flex: 0 0 3.5rem;
    height: 4.2rem;
    overflow: hidden;
    border-radius: .3rem;
    background: var(--sf-wheel);
    color: #fff;
    font-family: var(--sf-mono);
    font-size: 2.3rem;
    font-weight: 600;
    line-height: 4.2rem;
    text-align: center;
}
/* Sombra superior e inferior: la rueda se lee como cilindro. */
[data-function-layout="series-folios"] .sf-wheel::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgb(0 0 0 / .55) 0%, transparent 28%, transparent 72%, rgb(0 0 0 / .55) 100%);
    pointer-events: none;
}
[data-function-layout="series-folios"] .sf-counter--a .sf-wheel--serie { background: var(--sf-a); }
[data-function-layout="series-folios"] .sf-counter--b .sf-wheel--serie { background: var(--sf-b); color: var(--sf-ink); }
[data-function-layout="series-folios"] .sf-counter__dash { color: rgb(255 255 255 / .6); font-family: var(--sf-mono); font-size: 1.6rem; }
[data-function-layout="series-folios"] .sf-wheel__strip { display: block; animation: sf-roll .75s cubic-bezier(.5, 0, .2, 1.25) var(--sf-roll-delay, 1s) both; }
[data-function-layout="series-folios"] .sf-wheel__strip span { display: block; height: 4.2rem; }

/* ---------- Anatomía del identificador ---------- */
[data-function-layout="series-folios"] .sf-anatomy {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: .25rem;
    margin: 0;
    padding: clamp(1.5rem, 4vw, 2.5rem) 1rem;
    border-radius: .75rem;
    background: var(--sf-paper);
    color: var(--sf-ink);
    font-family: var(--sf-mono);
}
[data-function-layout="series-folios"] .sf-anatomy__part { display: grid; justify-items: center; gap: 1rem; }
[data-function-layout="series-folios"] .sf-anatomy__part strong { font-size: clamp(3.5rem, 9vw, 6.5rem); font-weight: 700; line-height: 1; }
[data-function-layout="series-folios"] .sf-anatomy__part--serie strong { color: var(--sf-a); }
/* Llave bajo cada parte, como las cotas de un plano. */
[data-function-layout="series-folios"] .sf-anatomy__part small {
    position: relative;
    width: 100%;
    padding-top: .9rem;
    border-top: 2px solid currentColor;
    color: var(--sf-muted);
    font-family: Inter, ui-sans-serif, sans-serif;
    font-size: .95rem;
    font-weight: 700;
    text-align: center;
}
[data-function-layout="series-folios"] .sf-anatomy__part small::before,
[data-function-layout="series-folios"] .sf-anatomy__part small::after {
    content: "";
    position: absolute;
    top: -.6rem;
    width: 2px;
    height: .6rem;
    background: currentColor;
}
[data-function-layout="series-folios"] .sf-anatomy__part small::before { left: 0; }
[data-function-layout="series-folios"] .sf-anatomy__part small::after { right: 0; }
[data-function-layout="series-folios"] .sf-anatomy__part--serie small { color: var(--sf-a); }
[data-function-layout="series-folios"] .sf-anatomy__part--folio small { color: var(--sf-ink); }
[data-function-layout="series-folios"] .sf-anatomy__dash { color: #9aa6b6; font-size: clamp(3.5rem, 9vw, 6.5rem); font-weight: 400; line-height: 1; }

/* ---------- Problemas por falta de configuración ---------- */
[data-function-layout="series-folios"] .sf-issues { display: grid; gap: 1rem; margin: 2.5rem 0 0; padding: 0; list-style: none; }
[data-function-layout="series-folios"] .sf-issues li {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    padding: 1.35rem;
    border-radius: .5rem;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--sf-line);
    color: #1f2a3d;
    font-size: 1.0625rem;
    line-height: 1.6;
}
[data-function-layout="series-folios"] .sf-issues__icon { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border-radius: 50%; background: #fdecea; color: #b42318; }
[data-function-layout="series-folios"] .sf-solution {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    gap: 1rem;
    margin-top: 1.5rem;
    padding: clamp(1.4rem, 3vw, 2rem);
    border-radius: .5rem;
    background: var(--sf-ink);
    color: #fff;
    font-size: clamp(1.0625rem, 1.5vw, 1.2rem);
    line-height: 1.7;
}
[data-function-layout="series-folios"] .sf-solution .cv-icon { width: 2rem; height: 2rem; color: var(--sf-b); }

/* ---------- Folio interno vs. UUID ---------- */
[data-function-layout="series-folios"] .sf-ids { display: grid; gap: 1rem; margin: 0; }
[data-function-layout="series-folios"] .sf-id {
    padding: 1.5rem;
    border-radius: .6rem;
    background: #fff;
    color: var(--sf-ink);
    box-shadow: 0 20px 44px rgb(0 0 0 / .25);
}
[data-function-layout="series-folios"] .sf-id--folio { border-left: 6px solid var(--sf-a); }
[data-function-layout="series-folios"] .sf-id--uuid { border-left: 6px solid var(--sf-uuid); }
[data-function-layout="series-folios"] .sf-id__name { margin: 0; font-family: var(--sf-display); font-size: 1.2rem; font-weight: 700; }
[data-function-layout="series-folios"] .sf-id__sample {
    margin-top: .85rem;
    padding: .7rem .85rem;
    border-radius: .35rem;
    font-family: var(--sf-mono);
    font-weight: 600;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
[data-function-layout="series-folios"] .sf-id--folio .sf-id__sample { background: var(--sf-a-soft); color: var(--sf-a); font-size: 2rem; line-height: 1.2; }
[data-function-layout="series-folios"] .sf-id--uuid .sf-id__sample { background: #e6f5ef; color: var(--sf-uuid); font-size: .95rem; letter-spacing: .02em; }
[data-function-layout="series-folios"] .sf-id__origin { margin-top: .85rem; color: var(--sf-muted); font-size: .95rem; line-height: 1.5; }
[data-function-layout="series-folios"] .sf-id__use { margin-top: .35rem; font-weight: 700; line-height: 1.45; }

/* ---------- Ejemplo: tabla por carriles ---------- */
[data-function-layout="series-folios"] .sf-ledger {
    width: 100%;
    margin-top: 2.5rem;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: .6rem;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--sf-line), 0 20px 44px rgb(4 31 73 / .07);
    overflow: hidden;
}
[data-function-layout="series-folios"] .sf-ledger thead th {
    padding: 1rem 1.25rem;
    border-bottom: 2px solid var(--sf-ink);
    color: var(--sf-muted);
    font-size: .95rem;
    font-weight: 700;
    text-align: left;
}
[data-function-layout="series-folios"] .sf-ledger tbody th,
[data-function-layout="series-folios"] .sf-ledger td {
    padding: .95rem 1.25rem;
    border-bottom: 1px solid var(--sf-line);
    color: #1f2a3d;
    font-size: 1.0625rem;
    text-align: left;
    vertical-align: middle;
}
[data-function-layout="series-folios"] .sf-ledger tbody th { color: var(--sf-ink); font-weight: 600; }
[data-function-layout="series-folios"] .sf-ledger__num { font-family: var(--sf-mono); font-variant-numeric: tabular-nums; }
/* Dos carriles en la columna de identificación: la Serie A a la izquierda, la B a la derecha. */
[data-function-layout="series-folios"] .sf-ledger td.sf-ledger__lanes {
    width: 40%;
    padding-inline: 0;
    background:
        linear-gradient(90deg, transparent calc(25% - 1px), rgb(31 99 198 / .25) calc(25% - 1px) calc(25% + 1px), transparent calc(25% + 1px)),
        linear-gradient(90deg, transparent calc(75% - 1px), rgb(250 198 63 / .7) calc(75% - 1px) calc(75% + 1px), transparent calc(75% + 1px));
}
[data-function-layout="series-folios"] .sf-ledger__lanes .sf-tag { position: relative; left: 25%; transform: translateX(-50%); }
[data-function-layout="series-folios"] .sf-serie--b .sf-ledger__lanes .sf-tag { left: 75%; }
[data-function-layout="series-folios"] .sf-ledger__next th,
[data-function-layout="series-folios"] .sf-ledger__next td { padding: 1rem 1.25rem; background-color: var(--sf-paper); color: var(--sf-ink); font-weight: 700; text-align: left; }
[data-function-layout="series-folios"] .sf-ledger__next .sf-ledger__lanes { position: relative; height: 3.75rem; background-color: var(--sf-paper); }
[data-function-layout="series-folios"] .sf-ledger__next .sf-tag { position: absolute; top: 50%; left: 25%; transform: translate(-50%, -50%); outline: 2px dashed currentColor; outline-offset: 2px; background: #fff; }
[data-function-layout="series-folios"] .sf-ledger__next .sf-tag.sf-serie--b { left: 75%; }
.sf-reveal-ready [data-function-layout="series-folios"] .sf-ledger .sf-ledger__row { opacity: 0; transform: translateY(.5rem); }
.sf-reveal-ready [data-function-layout="series-folios"] .sf-ledger.is-visible .sf-ledger__row {
    opacity: 1;
    transform: none;
    transition: opacity .4s ease, transform .4s var(--sf-ease);
    transition-delay: calc(var(--sf-row) * 140ms + 150ms);
}
.sf-reveal-ready [data-function-layout="series-folios"] .sf-ledger .sf-ledger__next { opacity: 0; }
.sf-reveal-ready [data-function-layout="series-folios"] .sf-ledger.is-visible .sf-ledger__next { opacity: 1; transition: opacity .5s ease 1.2s; }
[data-function-layout="series-folios"] .sf-conclusion { display: grid; gap: .75rem; margin-top: 2rem; max-width: 52rem; }
[data-function-layout="series-folios"] .sf-conclusion p { color: #1f2a3d; font-size: 1.0625rem; line-height: 1.8; }
[data-function-layout="series-folios"] .sf-conclusion p:first-child { color: var(--sf-ink); font-size: clamp(1.125rem, 1.6vw, 1.3rem); font-weight: 600; }

/* ---------- Configuración: ruta del menú y apartado ---------- */
[data-function-layout="series-folios"] .sf-window {
    margin: 0;
    border-radius: .6rem;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--sf-line), 0 24px 50px rgb(4 31 73 / .1);
    overflow: hidden;
}
[data-function-layout="series-folios"] .sf-window__bar { display: flex; gap: .4rem; padding: .7rem .9rem; background: var(--sf-ink); }
[data-function-layout="series-folios"] .sf-window__bar span { width: .65rem; height: .65rem; border-radius: 50%; background: rgb(255 255 255 / .3); }
[data-function-layout="series-folios"] .sf-window__path { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; margin: 0; padding: .9rem 1.1rem; list-style: none; border-bottom: 1px solid var(--sf-line); background: var(--sf-paper); font-size: .9rem; }
[data-function-layout="series-folios"] .sf-window__path li { color: var(--sf-muted); font-weight: 600; }
[data-function-layout="series-folios"] .sf-window__path li:not(:last-child)::after { content: "›"; margin-left: .35rem; color: #9aa6b6; }
[data-function-layout="series-folios"] .sf-window__path li.is-current { padding: .15rem .55rem; border-radius: .3rem; background: var(--sf-ink); color: #fff; }
[data-function-layout="series-folios"] .sf-window__rows { padding: .5rem 1.1rem 1rem; }
[data-function-layout="series-folios"] .sf-window__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
    padding: .8rem 0;
    border-bottom: 1px dashed var(--sf-line);
    color: var(--sf-ink);
    font-weight: 600;
}
[data-function-layout="series-folios"] .sf-window__row:last-child { border-bottom: 0; }
[data-function-layout="series-folios"] .sf-window__row:last-child .sf-chip { background: var(--sf-a); }
[data-function-layout="series-folios"] .sf-window__next { display: grid; justify-items: end; font-family: var(--sf-mono); font-size: 1rem; }
[data-function-layout="series-folios"] .sf-window__next small { color: var(--sf-muted); font-family: Inter, ui-sans-serif, sans-serif; font-size: .75rem; font-weight: 600; }
[data-function-layout="series-folios"] .sf-features { display: grid; gap: 0; margin: 1.25rem 0 0; padding: 0; list-style: none; border-top: 2px solid var(--sf-ink); }
[data-function-layout="series-folios"] .sf-features li {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    padding: 1.4rem 0;
    border-bottom: 1px solid var(--sf-line);
}
[data-function-layout="series-folios"] .sf-features p { color: #2b3547; font-size: 1.0625rem; line-height: 1.65; }
[data-function-layout="series-folios"] .sf-features strong { color: var(--sf-ink); }
[data-function-layout="series-folios"] .sf-features__icon { display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border-radius: .5rem; background: var(--sf-a-soft); color: var(--sf-a); }
[data-function-layout="series-folios"] #configuracion-function .sf-link-line { margin-top: 2rem; }

/* ---------- Año de facturas recurrentes ---------- */
[data-function-layout="series-folios"] .sf-year { margin: 3rem 0 0; }
[data-function-layout="series-folios"] .sf-year figcaption { display: flex; align-items: center; gap: .6rem; color: var(--sf-b); font-weight: 700; }
[data-function-layout="series-folios"] .sf-year ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .6rem; margin: 1rem 0 0; padding: 0; list-style: none; }
[data-function-layout="series-folios"] .sf-year li {
    display: grid;
    gap: .55rem;
    padding: .85rem .6rem;
    border-radius: .4rem;
    background: rgb(255 255 255 / .06);
    box-shadow: inset 0 0 0 1px rgb(255 255 255 / .16);
    text-align: center;
}
[data-function-layout="series-folios"] .sf-year__month { color: rgb(255 255 255 / .75); font-size: .85rem; font-weight: 700; }
[data-function-layout="series-folios"] .sf-year__doc {
    padding: .35rem .25rem;
    border-radius: .25rem;
    background: #fff;
    color: var(--sf-a);
    font-family: var(--sf-mono);
    font-size: .8rem;
    font-weight: 700;
    white-space: nowrap;
}

/* ---------- Relación con ventas, facturación y contabilidad ---------- */
[data-function-layout="series-folios"] .sf-flow { display: grid; gap: .75rem; margin: 2.5rem 0 0; padding: 0; list-style: none; }
[data-function-layout="series-folios"] .sf-flow li {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 4.25rem;
    padding: .9rem 1rem;
    border-radius: .45rem;
    box-shadow: inset 0 0 0 2px var(--sf-line);
    color: var(--sf-ink);
    font-family: var(--sf-display);
    font-size: 1.15rem;
    font-weight: 700;
    text-align: center;
}
[data-function-layout="series-folios"] .sf-flow li.is-current { background: var(--sf-ink); box-shadow: none; color: #fff; }
[data-function-layout="series-folios"] .sf-related { margin-top: 2rem; padding: 1.5rem; border-radius: .5rem; background: var(--sf-paper); }
[data-function-layout="series-folios"] .sf-related .sf-body { margin-top: 0; }
[data-function-layout="series-folios"] .sf-related ul { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1rem 0 0; padding: 0; list-style: none; }
[data-function-layout="series-folios"] .sf-related li {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .55rem .9rem;
    border-radius: 999px;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--sf-line);
    color: var(--sf-ink);
    font-weight: 600;
}
[data-function-layout="series-folios"] .sf-related .cv-icon { width: 1.1rem; height: 1.1rem; color: var(--sf-a); }

/* ---------- Qué empresas lo necesitan ---------- */
[data-function-layout="series-folios"] .sf-fit { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--sf-ink); }
[data-function-layout="series-folios"] .sf-fit li {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
    padding: 1.15rem 0;
    border-bottom: 1px solid var(--sf-line);
    color: #1f2a3d;
    font-size: 1.0625rem;
    line-height: 1.6;
}
[data-function-layout="series-folios"] .sf-fit__icon { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 50%; background: var(--sf-ink); color: var(--sf-b); }

/* ---------- Ventajas: misma numeración vs. numeración independiente ---------- */
[data-function-layout="series-folios"] .sf-contrast { display: grid; gap: 1rem; margin: 0; }
[data-function-layout="series-folios"] .sf-contrast__row { padding: 1.4rem; border-radius: .6rem; }
[data-function-layout="series-folios"] .sf-contrast__row--others { background: var(--sf-paper); }
[data-function-layout="series-folios"] .sf-contrast__row--evidence { background: var(--sf-ink); }
[data-function-layout="series-folios"] .sf-contrast__label { margin: 0 0 1rem; color: var(--sf-muted); font-weight: 700; }
[data-function-layout="series-folios"] .sf-contrast__row--evidence .sf-contrast__label { color: var(--sf-b); }
[data-function-layout="series-folios"] .sf-contrast__docs { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: .75rem; align-items: center; }
[data-function-layout="series-folios"] .sf-contrast__op { display: grid; place-items: center; color: #9aa6b6; font-family: var(--sf-mono); font-size: 1.5rem; font-weight: 700; }
[data-function-layout="series-folios"] .sf-contrast__row--evidence .sf-contrast__op { color: var(--sf-b); }
[data-function-layout="series-folios"] .sf-doc {
    display: grid;
    gap: .3rem;
    padding: .9rem 1rem;
    border-radius: .4rem;
    background: #fff;
    box-shadow: inset 0 0 0 1px var(--sf-line);
}
[data-function-layout="series-folios"] .sf-doc small { color: var(--sf-muted); font-size: .82rem; font-weight: 700; }
[data-function-layout="series-folios"] .sf-doc strong { color: #8792a3; font-family: var(--sf-mono); font-size: 1.35rem; font-weight: 700; }
[data-function-layout="series-folios"] .sf-doc--sale { border-top: 4px solid #8aa0bd; }
[data-function-layout="series-folios"] .sf-doc--sale strong { color: var(--sf-ink); }
[data-function-layout="series-folios"] .sf-doc--invoice { border-top: 4px solid var(--sf-a); }
[data-function-layout="series-folios"] .sf-doc--invoice strong { color: var(--sf-a); }
[data-function-layout="series-folios"] .sf-benefits { display: grid; gap: .75rem 2.5rem; margin: 1.25rem 0 0; padding: 0; list-style: none; }
[data-function-layout="series-folios"] .sf-benefits li { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: .85rem; color: #1f2a3d; font-size: 1.0625rem; line-height: 1.6; }
[data-function-layout="series-folios"] .sf-benefits .cv-icon { color: var(--sf-uuid); margin-top: .15rem; }

/* ---------- FAQ: fundamento normativo ---------- */
[data-function-layout="series-folios"] .sf-faq-basis p { font-weight: 700; }
[data-function-layout="series-folios"] .sf-faq-basis ul { display: grid; gap: .4rem; margin: .5rem 0 0; padding-left: 1.1rem; list-style: disc; }

/* ---------- Responsive ---------- */
@media (min-width: 768px) {
    [data-function-layout="series-folios"] .sf-issues { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    [data-function-layout="series-folios"] .sf-features { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3rem; }
    [data-function-layout="series-folios"] .sf-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    [data-function-layout="series-folios"] .sf-year ol { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    [data-function-layout="series-folios"] .sf-flow { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2.25rem; }
    [data-function-layout="series-folios"] .sf-flow li:not(:last-child)::after {
        content: "";
        position: absolute;
        top: 50%;
        right: -1.85rem;
        width: 1.4rem;
        height: 2px;
        background: var(--sf-ink);
    }
    [data-function-layout="series-folios"] .sf-flow li:not(:last-child) > span::after {
        content: "";
        position: absolute;
        top: calc(50% - 5px);
        right: -1.95rem;
        border: 6px solid transparent;
        border-left-color: var(--sf-ink);
        border-right: 0;
    }
}
@media (min-width: 1024px) {
    [data-function-layout="series-folios"] .rh-hero-layout { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); }
    [data-function-layout="series-folios"] .sf-split { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
    [data-function-layout="series-folios"] .sf-split--intro { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: center; }
    [data-function-layout="series-folios"] .sf-features { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 2.5rem; }
    [data-function-layout="series-folios"] .sf-year ol { grid-template-columns: repeat(12, minmax(0, 1fr)); }
    [data-function-layout="series-folios"] #uuid-function .sf-ids,
    [data-function-layout="series-folios"] #ventajas-function .sf-contrast { margin-top: 1rem; }
}
@media (max-width: 767px) {
    [data-function-layout="series-folios"] #inicio .cv-hero-title { max-width: none; }
    [data-function-layout="series-folios"] .sf-hero__actions > * { width: 100%; }
    [data-function-layout="series-folios"] .sf-foliador { padding: 1.25rem; }
    [data-function-layout="series-folios"] .sf-wheel { flex-basis: 3rem; height: 3.6rem; font-size: 1.9rem; line-height: 3.6rem; }
    [data-function-layout="series-folios"] .sf-wheel__strip span { height: 3.6rem; }
    [data-function-layout="series-folios"] .sf-ledger thead th,
    [data-function-layout="series-folios"] .sf-ledger tbody th,
    [data-function-layout="series-folios"] .sf-ledger td,
    [data-function-layout="series-folios"] .sf-ledger__next th,
    [data-function-layout="series-folios"] .sf-ledger__next td { padding: .75rem .5rem; font-size: .9rem; }
    [data-function-layout="series-folios"] .sf-ledger thead th { font-size: .78rem; }
    [data-function-layout="series-folios"] .sf-ledger .sf-chip { min-width: 1.6rem; height: 1.6rem; font-size: .78rem; }
    [data-function-layout="series-folios"] .sf-ledger .sf-tag { padding: .2rem .35rem; font-size: .72rem; }
    [data-function-layout="series-folios"] .sf-ledger td.sf-ledger__lanes { width: 46%; padding-inline: 0; }
    [data-function-layout="series-folios"] .sf-flow li:not(:last-child)::after {
        content: "↓";
        position: absolute;
        bottom: -1.05rem;
        left: 50%;
        z-index: 1;
        transform: translateX(-50%);
        color: var(--sf-ink);
        font-size: 1rem;
        line-height: 1;
    }
    [data-function-layout="series-folios"] .sf-flow { gap: 1.25rem; }
    [data-function-layout="series-folios"] .sf-contrast__docs { gap: .5rem; }
    [data-function-layout="series-folios"] .sf-doc { padding: .75rem; }
    [data-function-layout="series-folios"] .sf-doc strong { font-size: 1.1rem; }
}

/* ---------- Keyframes ---------- */
@keyframes sf-in {
    from { opacity: 0; transform: translateY(.75rem); }
    to { opacity: 1; transform: none; }
}
@keyframes sf-roll {
    from { transform: translateY(0); }
    to { transform: translateY(-50%); }
}

@media (prefers-reduced-motion: reduce) {
    [data-function-layout="series-folios"] *,
    [data-function-layout="series-folios"] *::before,
    [data-function-layout="series-folios"] *::after {
        animation: none !important;
        transition: none !important;
    }
    /* Sin animación, la rueda muestra directo el folio siguiente. */
    [data-function-layout="series-folios"] .sf-wheel__strip { transform: translateY(-50%); }
}
