/* Capa 4 — el estilo bajo prueba. Su nombre lo decide el usuario; aquí solo importa
   que cada propiedad salga de un token editable y que [lang] pueda anularla. */

.p4-style {
  font-family: var(--p4-family, var(--p4-base-font-family));
  font-weight: var(--p4-font-weight, var(--p4-base-font-weight));
  font-size: calc(var(--p4-base-font-size) * var(--p4-scale-fs, 1));
  line-height: calc(var(--p4-base-line-height) * var(--p4-scale-lh, 1));
  letter-spacing: var(--p4-letter-spacing, var(--p4-base-letter-spacing));
  text-transform: var(--p4-text-transform, var(--p4-base-text-transform));
  word-break: var(--p4-word-break, normal);
}

.text-m {
  font-family: var(--p4-family, var(--p4-font-family-latin));
  font-weight: var(--p4-core-font-weight-400);
  font-size: var(--p4-core-font-size-14);
  line-height: var(--p4-core-line-height-20);
  letter-spacing: var(--p4-core-letter-spacing-0-04em);
}

.label-s {
  font-family: var(--p4-family, var(--p4-font-family-latin));
  font-weight: var(--p4-core-font-weight-500);
  font-size: var(--p4-core-font-size-11);
  line-height: var(--p4-core-line-height-16);
  letter-spacing: var(--p4-core-letter-spacing-0-16em);
  text-transform: var(--p4-core-text-transform-uppercase);
}

/* Toggles del panel. Ganan por especificidad al bloque [lang] sin tocar los tokens de idioma. */
[data-tracking="off"] .p4-target {
  letter-spacing: var(--p4-core-letter-spacing-0);
}

[data-tracking="force"] .p4-target {
  letter-spacing: var(--p4-base-letter-spacing);
}

[data-transform="off"] .p4-target {
  text-transform: var(--p4-core-text-transform-none);
}

[data-transform="force"] .p4-target {
  text-transform: var(--p4-base-text-transform);
}

/* Recorta el leading según métricas reales de la fuente (Chrome 133+). */
[data-textbox="on"] .p4-target {
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}
