/* Generado por aye-core desde el child theme: css/components.css (copia literal del prototipo). No editar. */
@layer ds {
  .ds-icon { width: var(--icon-md); height: var(--icon-md); flex: none; fill: none; stroke: currentColor; stroke-width: var(--icon-stroke); stroke-linecap: round; stroke-linejoin: round; }
  .ds-icon--lg { width: var(--icon-lg); height: var(--icon-lg); }
  .ds-icon--sm { width: var(--icon-sm); height: var(--icon-sm); }
  .ds-button { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); min-height: var(--button-h); padding: var(--button-pad-y) var(--button-pad-x); border: var(--border-width) solid transparent; border-radius: var(--radius-pill); background: transparent; font-family: var(--font-ui); font-size: var(--text-body-l); font-weight: var(--weight-light); line-height: var(--leading-body-l); text-decoration: none; white-space: nowrap; transition: background-color var(--dur-instant) var(--ease-linear), border-color var(--dur-instant) var(--ease-linear), color var(--dur-instant) var(--ease-linear), transform var(--dur-instant) var(--ease-out); }
  .ds-button:active { transform: translateY(var(--press-offset)); }
  .ds-button:disabled, .ds-button[aria-disabled="true"] { pointer-events: none; }
  .ds-button--primary { background: var(--black); border-color: var(--black); color: var(--white); }
  .ds-button--secondary { background: var(--white); border-color: var(--black); color: var(--black); }
  .ds-button--accent { background: var(--color-cta-bg); color: var(--color-text-on-accent); }
  .ds-button--ghost { background: var(--translucent); color: var(--color-text); }
  .ds-button--inverse { background: var(--white); border-color: var(--white); color: var(--black); }
  .ds-button--lg { min-height: var(--button-h-lg); padding-inline: var(--space-9); }
  .ds-button--primary:active { background: var(--grey-08); }
  .ds-button--secondary:active, .ds-button--ghost:active { background: var(--grey-01); }
  @media (hover: hover) {
    .ds-button--primary:hover { background: var(--white); color: var(--black); }
    .ds-button--secondary:hover { background: var(--black); color: var(--white); }
    .ds-button--accent:hover { background: var(--color-cta-bg-hover); }
    .ds-button--ghost:hover { background: var(--grey-01); border-color: var(--grey-03); }
    .ds-button--inverse:hover { background: var(--black); color: var(--white); }
  }
  .ds-button--inverse:focus-visible { box-shadow: var(--shadow-focus-inverse); }
  .ds-pill { display: inline-flex; align-items: center; justify-content: center; min-height: var(--button-h); padding: var(--space-2) var(--space-7); border: var(--border-width) solid transparent; border-radius: var(--radius-pill); background: var(--pill-bg, var(--color-bg-alt)); font-family: var(--font-ui); font-size: var(--text-body); font-weight: var(--weight-regular); line-height: var(--leading-body); text-decoration: none; white-space: nowrap; cursor: pointer; user-select: none; transition: background-color var(--dur-fast) var(--ease-linear), color var(--dur-fast) var(--ease-linear), border-color var(--dur-fast) var(--ease-linear); }
  .ds-pill:active { transform: translateY(var(--press-offset)); }
  @media (hover: hover) {
    .ds-pill:hover { border-color: var(--black); }
  }
  .ds-tag { display: inline-flex; align-items: center; padding: var(--space-1) var(--space-3); border-radius: var(--radius-pill); background: var(--color-accent); color: var(--color-text-on-accent); font-family: var(--font-ui); font-size: var(--text-small); font-weight: var(--weight-medium); line-height: var(--leading-small); letter-spacing: var(--tracking-caps); text-transform: uppercase; white-space: nowrap; }
  .ds-breadcrumb { font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-breadcrumb__list { display: flex; flex-wrap: nowrap; align-items: center; gap: var(--space-2); min-width: 0; }
  .ds-breadcrumb__item { display: none; align-items: center; gap: var(--space-2); min-width: 0; white-space: nowrap; }
  .ds-breadcrumb__item--parent { display: flex; }
  .ds-breadcrumb__item--parent::before { content: "‹"; color: var(--color-text-secondary); }
  .ds-breadcrumb__link { display: inline-flex; align-items: center; min-height: var(--touch-min); color: var(--color-text-secondary); text-decoration: none; }
  .ds-breadcrumb__current { overflow: hidden; text-overflow: ellipsis; font-weight: var(--crumb-current-weight); }
  @media (hover: hover) {
    .ds-breadcrumb__link:hover { color: var(--color-text); text-decoration: underline; }
  }
  @media (min-width: 43.75em) {
    .ds-breadcrumb__item { display: flex; }
    .ds-breadcrumb__item--parent::before { content: none; }
    .ds-breadcrumb__item + .ds-breadcrumb__item::before { content: var(--crumb-separator); color: var(--color-text-secondary); }
  }
  .ds-menu { position: fixed; inset: var(--header-offset) 0 0 auto; z-index: var(--z-overlay); width: var(--panel-width); overflow: hidden; background: var(--color-bg-alt); border-left: var(--border-width) solid var(--color-border-subtle); transform: translateX(100%); visibility: hidden; transition: transform var(--dur-base) var(--ease-out), visibility 0s linear var(--dur-base); }
  .ds-menu.is-open { transform: none; visibility: visible; transition: transform var(--dur-base) var(--ease-out); }
  .ds-menu__level { position: absolute; inset: 0; overflow-y: auto; background: var(--color-bg-alt); transition: transform var(--dur-base) var(--ease-out); }
  .ds-menu__level--sub { transform: translateX(100%); visibility: hidden; }
  .ds-menu__level--sub.is-active { transform: none; visibility: visible; }
  .ds-menu__level--root.is-behind { transform: translateX(var(--menu-parallax)); visibility: hidden; }
  .ds-menu__item { border-bottom: var(--border-width) solid var(--color-border-subtle); }
  .ds-menu__link { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); width: 100%; min-height: var(--menu-row-h); padding: var(--space-3) var(--space-5); border: 0; background: transparent; font-family: var(--font-ui); font-size: var(--text-body-l); font-weight: var(--weight-regular); line-height: var(--leading-body-l); text-align: left; text-decoration: none; white-space: nowrap; transition: background-color var(--dur-fast) var(--ease-linear); }
  .ds-menu__link[aria-current="page"] { font-weight: var(--weight-medium); }
  .ds-menu__link:active { background: var(--grey-02); }
  .ds-menu__link--back { justify-content: flex-start; color: var(--color-text-secondary); }
  @media (hover: hover) {
    .ds-menu__link:hover { background: var(--color-surface); }
  }
  .ds-menu__scrim { position: fixed; inset: var(--header-offset) 0 0 0; z-index: var(--z-dropdown); border: 0; background: var(--scrim); opacity: 0; visibility: hidden; transition: opacity var(--dur-base) var(--ease-linear), visibility 0s linear var(--dur-base); }
  .ds-menu__scrim.is-visible { opacity: 1; visibility: visible; transition: opacity var(--dur-base) var(--ease-linear); }
  .ds-hero { --position: relative; --overflow: hidden; background: var(--color-bg-inverse); color: var(--color-text-on-image); }
  .ds-hero__inner { position: relative; height: var(--hero-min-h); }
  @media (min-width: 43.75em) {
    .ds-hero__inner { height: max(var(--hero-min-h), 100svh - var(--header-offset)); }
  }
  .ds-hero__slide { position: absolute; inset: 0; display: grid; grid-template-rows: 1fr auto; align-items: center; justify-items: center; padding: var(--space-11) var(--page-gutter) var(--space-12); opacity: 0; visibility: hidden; transition: opacity var(--dur-slow) var(--ease-linear), visibility 0s linear var(--dur-slow); }
  .ds-hero__slide.is-active { opacity: 1; visibility: visible; transition: opacity var(--dur-slow) var(--ease-linear); }
  .ds-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
  .ds-hero__slide::before { content: ""; position: absolute; inset: 0; z-index: 1; background: var(--scrim-text); }
  .ds-hero__title { position: relative; z-index: 2; font-family: var(--font-display); font-size: var(--text-display-l); font-weight: var(--weight-light); line-height: var(--leading-display); text-align: center; text-transform: none; }
  .ds-hero__line { display: block; }
  .ds-hero__cta { position: relative; z-index: 2; }
  .ds-hero__controls { --position: absolute; inset: auto 0 0 0; --z-index: 3; display: flex; --align-items: center; --justify-content: space-between; --padding-top: var(--space-4); --padding-right: var(--space-4); --padding-bottom: var(--space-4); --padding-left: var(--space-4); }
  .ds-hero__arrow, .ds-hero__pause { display: inline-flex; align-items: center; justify-content: center; width: var(--touch-min); height: var(--touch-min); padding: 0; border: var(--border-width) solid transparent; border-radius: var(--radius-pill); background: transparent; color: var(--color-text-on-image); transition: background-color var(--dur-fast) var(--ease-linear), color var(--dur-fast) var(--ease-linear); }
  .ds-hero__arrow:active, .ds-hero__pause:active { transform: translateY(var(--press-offset)); }
  .ds-hero__arrow:focus-visible, .ds-hero__pause:focus-visible, .ds-hero__cta:focus-visible { box-shadow: var(--shadow-focus-inverse); }
  @media (hover: hover) {
    .ds-hero__arrow:hover, .ds-hero__pause:hover { background: var(--white); color: var(--black); }
  }
  .ds-hero__pause [data-icon="play"], .ds-hero__pause[aria-pressed="true"] [data-icon="pause"] { display: none; }
  .ds-hero__pause[aria-pressed="true"] [data-icon="play"] { display: block; }
  @media (min-width: 43.75em) {
    .ds-hero__title { font-size: var(--text-display-xl); }
  }
  .ds-access-tile { --position: relative; display: grid; place-items: center; --align-content: center; --row-gap: var(--space-6); --column-gap: var(--space-6); --min-height: 0; aspect-ratio: var(--ratio-access); --padding-top: var(--space-9); --padding-right: var(--space-6); --padding-bottom: var(--space-9); --padding-left: var(--space-6); --overflow: hidden; background: var(--color-bg-inverse); color: var(--color-text-on-image); --text-align: center; text-decoration: none; }
  .ds-access-tile__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform var(--dur-slow) var(--ease-out); }
  .ds-access-tile::before { content: ""; position: absolute; inset: 0; z-index: 1; background: var(--scrim-text); }
  .ds-access-tile__title, .ds-access-tile__link { position: relative; z-index: 2; }
  .ds-access-tile__title { font-family: var(--font-display); font-size: var(--text-display-l); font-weight: var(--weight-light); line-height: var(--leading-display-l); }
  .ds-access-tile__link { font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); text-decoration: underline; text-underline-offset: var(--underline-offset); }
  .ds-access-tile:focus-visible { border-radius: var(--radius-0); box-shadow: var(--shadow-focus-inset); }
  .ds-access-tile:active .ds-access-tile__image { transform: scale(var(--press-zoom)); }
  @media (hover: hover) {
    .ds-access-tile:hover .ds-access-tile__image { transform: scale(var(--hover-zoom)); }
  }
  .ds-feature-card { --position: relative; display: grid; grid-template-rows: auto 1fr auto; --row-gap: var(--space-6); --column-gap: var(--space-6); --min-height: var(--card-min-h); --padding-top: var(--space-6); --padding-right: var(--space-6); --padding-bottom: var(--space-6); --padding-left: var(--space-6); --border-radius: var(--radius-lg); background: var(--color-surface); transition: background-color var(--dur-fast) var(--ease-linear); }
  .ds-feature-card__tag { justify-self: start; }
  .ds-feature-card__title { align-self: center; font-family: var(--font-display); font-size: var(--text-h2); line-height: var(--leading-tight); text-align: center; }
  .ds-feature-card__link { text-decoration: none; }
  .ds-feature-card__link::after { content: ""; position: absolute; inset: 0; border-radius: var(--radius-lg); }
  .ds-feature-card__link:focus-visible { box-shadow: none; }
  .ds-feature-card__link:focus-visible::after { box-shadow: var(--shadow-focus); }
  .ds-feature-card__meta { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-2) var(--space-5); color: var(--color-text-secondary); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-feature-card:active { background: var(--color-bg-alt); }
  @media (hover: hover) {
    .ds-feature-card:hover { background: var(--color-surface-hover); }
  }
  .ds-showcase { display: grid; justify-items: center; --align-content: center; --row-gap: var(--space-8); --column-gap: var(--space-8); --min-height: var(--showcase-min-h); --padding-top: var(--space-12); --padding-right: var(--page-gutter); --padding-bottom: var(--space-12); --padding-left: var(--page-gutter); --text-align: center; }
  .ds-showcase__name { font-size: var(--text-display-l); line-height: var(--leading-display-l); }
  .ds-showcase__places { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-2); max-width: var(--container-md); }
  .ds-showcase__count { color: var(--color-text-secondary); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-showcase--alt { --pill-bg: var(--color-surface); background: var(--color-bg-alt); }
  .ds-cat-tile { display: grid; grid-template-rows: auto 1fr auto auto; justify-items: center; --row-gap: var(--space-5); --column-gap: var(--space-5); aspect-ratio: var(--tile-ratio); --padding-top: var(--space-11); --padding-right: var(--space-6); --padding-bottom: var(--space-9); --padding-left: var(--space-6); background: var(--color-bg-alt); color: var(--color-text-on-accent); --text-align: center; }
  .ds-cat-tile__name { font-size: var(--text-h2); line-height: var(--leading-h2); letter-spacing: var(--tracking-caps); text-transform: uppercase; }
  .ds-cat-tile__sample { align-self: center; max-width: 100%; font-family: var(--font-display); font-size: var(--text-sample); font-weight: var(--weight-regular); line-height: var(--leading-display-l); }
  .ds-cat-tile__desc { max-width: var(--measure-narrow); font-size: var(--text-body-l); }
  .ds-cat-tile__footer { display: flex; --flex-wrap: wrap; --align-items: center; --justify-content: center; --row-gap: var(--space-4); --column-gap: var(--space-6); }
  .ds-cat-tile__count { font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-cat-tile--montana { background: var(--cat-montana); }
  .ds-cat-tile--playa { background: var(--cat-playa); }
  .ds-cat-tile--ciudad { background: var(--cat-ciudad); }
  .ds-cat-tile--carretera { background: var(--cat-carretera); }
  .ds-cat-tile--senderismo { background: var(--cat-senderismo); }
  .ds-cat-tile--gastronomia { background: var(--cat-gastronomia); }
  .ds-cat-tile--invierno { background: var(--cat-invierno); }
  .ds-cat-tile--islas { background: var(--cat-islas); }
  .ds-cat-tile--lento { background: var(--cat-lento); }
  .ds-cat-tile--all { grid-template-rows: 1fr; --align-items: center; background: var(--color-bg-inverse); color: var(--color-text-inverse); font-family: var(--font-display); font-size: var(--text-h2); text-decoration: none; transition: background-color var(--dur-fast) var(--ease-linear), color var(--dur-fast) var(--ease-linear); }
  .ds-cat-tile--all:focus-visible { border-radius: var(--radius-0); box-shadow: var(--shadow-focus-inset); }
  @media (hover: hover) {
    .ds-cat-tile--all:hover { background: var(--white); color: var(--black); }
  }
  @media (min-width: 60em) {
    .ds-cat-tile { --text-sample: var(--text-sample-half); aspect-ratio: var(--tile-ratio-wide); }
  }
  .ds-index-tile { --tile-accent: var(--color-accent); --position: relative; display: grid; grid-template-rows: auto 1fr auto; justify-items: center; --row-gap: var(--space-5); --column-gap: var(--space-5); --padding-top: var(--space-8); --padding-right: var(--space-5); --padding-bottom: var(--space-5); --padding-left: var(--space-5); background: var(--color-bg-alt); --text-align: center; transition: background-color var(--dur-fast) var(--ease-linear); }
  .ds-index-tile--tall { grid-row: span 2; display: flex; flex-direction: column; align-items: center; }
  .ds-index-tile--tall .ds-index-tile__title { margin-top: auto; }
  .ds-index-tile--tall .ds-index-tile__excerpt { margin-bottom: auto; }
  .ds-index-tile__label { display: flex; align-items: center; justify-content: center; width: var(--index-label-w); min-height: var(--button-h); padding: var(--space-1) var(--space-5); border-radius: var(--radius-pill); background: var(--tile-accent); color: var(--color-text-on-accent); font-family: var(--font-ui); font-size: var(--text-body); font-weight: var(--weight-regular); line-height: var(--leading-body); letter-spacing: var(--tracking-caps); text-transform: uppercase; white-space: nowrap; transition: background-color var(--dur-fast) var(--ease-linear); }
  .ds-index-tile__title { align-self: center; max-width: 100%; font-size: var(--text-index-title); line-height: var(--leading-tight); overflow-wrap: break-word; }
  .ds-index-tile--tall .ds-index-tile__title { font-size: var(--text-index-title-tall); }
  .ds-index-tile__link { text-decoration: none; }
  .ds-index-tile__link::after { content: ""; position: absolute; inset: 0; }
  .ds-index-tile__link:focus-visible { box-shadow: none; }
  .ds-index-tile__link:focus-visible::after { box-shadow: var(--shadow-focus-inset); }
  .ds-index-tile__excerpt { align-self: start; max-width: var(--measure-narrow); }
  .ds-index-tile__meta { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-1) var(--space-4); color: var(--color-text-secondary); font-family: var(--font-ui); font-size: var(--text-small); line-height: var(--leading-small); }
  .ds-index-tile:active { background: var(--tile-accent); }
  @media (hover: hover) {
    .ds-index-tile:hover { background: var(--tile-accent); }
    .ds-index-tile:hover .ds-index-tile__label { background: var(--color-surface); }
    .ds-index-tile:hover .ds-index-tile__meta { color: var(--color-text); }
  }
  .ds-index-tile--montana { --tile-accent: var(--cat-montana); }
  .ds-index-tile--playa { --tile-accent: var(--cat-playa); }
  .ds-index-tile--ciudad { --tile-accent: var(--cat-ciudad); }
  .ds-index-tile--carretera { --tile-accent: var(--cat-carretera); }
  .ds-index-tile--senderismo { --tile-accent: var(--cat-senderismo); }
  .ds-index-tile--gastronomia { --tile-accent: var(--cat-gastronomia); }
  .ds-index-tile--invierno { --tile-accent: var(--cat-invierno); }
  .ds-index-tile--islas { --tile-accent: var(--cat-islas); }
  .ds-index-tile--lento { --tile-accent: var(--cat-lento); }
  .ds-case-tile { --position: relative; aspect-ratio: var(--case-ratio); --overflow: hidden; background: var(--grey-02); color: var(--color-text-on-image); }
  .ds-case-tile__image { width: 100%; height: 100%; object-fit: cover; transition: filter var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out); }
  .ds-case-tile__layer { --position: absolute; inset: 0; display: grid; grid-template-rows: 1fr auto auto; justify-items: center; --align-items: center; --row-gap: var(--space-5); --column-gap: var(--space-5); --padding-top: var(--space-6); --padding-right: var(--space-6); --padding-bottom: var(--space-6); --padding-left: var(--space-6); background: var(--scrim-text); --text-align: center; opacity: 0; transition: opacity var(--dur-slow) var(--ease-linear); }
  .ds-case-tile__name { max-width: 100%; font-size: var(--text-display-l); line-height: var(--leading-display-l); overflow-wrap: break-word; }
  .ds-case-tile__credits { display: grid; gap: var(--space-1); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-case-tile:focus-within .ds-case-tile__layer, .ds-case-tile.is-open .ds-case-tile__layer { opacity: 1; }
  .ds-case-tile:focus-within .ds-case-tile__image, .ds-case-tile.is-open .ds-case-tile__image { filter: blur(var(--blur-layer)); transform: scale(var(--hover-zoom)); }
  @media (hover: hover) {
    .ds-case-tile:hover .ds-case-tile__layer { opacity: 1; }
    .ds-case-tile:hover .ds-case-tile__image { filter: blur(var(--blur-layer)); transform: scale(var(--hover-zoom)); }
  }
  @media (min-width: 60em) {
    .ds-case-tile { aspect-ratio: var(--case-ratio-wide); }
  }
  .ds-help-card { display: grid; grid-template-rows: auto auto 1fr auto; --row-gap: var(--space-6); --column-gap: var(--space-6); --padding-top: var(--space-9); --padding-right: var(--space-6); --padding-bottom: var(--space-6); --padding-left: var(--space-6); --border-radius: var(--radius-lg); background: var(--color-bg-alt); }
  .ds-help-card__icon { justify-self: center; width: var(--space-12); height: var(--space-12); stroke-width: var(--icon-stroke-thin); }
  .ds-help-card__title { font-size: var(--text-h3); letter-spacing: var(--tracking-caps); text-align: center; text-transform: uppercase; }
  .ds-help-card__list { border-top: var(--border-width) solid var(--color-border-subtle); }
  .ds-help-card__item { border-bottom: var(--border-width) solid var(--color-border-subtle); }
  .ds-help-card__link { display: flex; align-items: center; min-height: var(--touch-min); padding-block: var(--space-2); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); text-decoration: none; }
  @media (hover: hover) {
    .ds-help-card__link:hover { text-decoration: underline; }
  }
  .ds-help-card__more { justify-self: end; display: inline-flex; align-items: center; gap: var(--space-2); min-height: var(--touch-min); font-family: var(--font-ui); font-size: var(--text-body); text-decoration: none; }
  .ds-search { position: relative; width: 100%; max-width: var(--search-max); }
  .ds-search__input { width: 100%; min-height: var(--input-h); padding: var(--space-2) calc(var(--touch-min) + var(--space-4)) var(--space-2) var(--space-7); border: var(--border-width) solid var(--color-border-input); border-radius: var(--radius-pill); background: var(--color-bg-alt); font-family: var(--font-ui); font-size: var(--text-body-l); line-height: var(--input-leading); transition: border-color var(--dur-fast) var(--ease-linear); }
  .ds-search__input::placeholder { color: var(--color-text-secondary); }
  .ds-search__input:focus::placeholder { color: transparent; }
  .ds-search__input:focus-visible { border-color: var(--black); border-radius: var(--radius-pill); }
  .ds-search__submit { position: absolute; top: 50%; right: var(--space-1); display: inline-flex; align-items: center; justify-content: center; width: var(--touch-min); height: var(--touch-min); padding: 0; border: 0; border-radius: var(--radius-pill); background: transparent; transform: translateY(-50%); transition: background-color var(--dur-instant) var(--ease-linear), color var(--dur-instant) var(--ease-linear); }
  .ds-search__submit:active { transform: translateY(calc(-50% + var(--press-offset))); }
  @media (hover: hover) {
    .ds-search__input:hover { border-color: var(--black); }
    .ds-search__submit:hover { background: var(--black); color: var(--white); }
  }
  .ds-quote { display: grid; gap: var(--space-5); padding-block: var(--space-9); border-top: var(--border-width) solid var(--color-border); border-bottom: var(--border-width) solid var(--color-border); }
  .ds-quote__text { font-family: var(--font-display); font-size: var(--text-quote); font-weight: var(--weight-light); line-height: var(--leading-h1); }
  .ds-quote__source { font-family: var(--font-ui); font-size: var(--text-body); font-style: normal; color: var(--color-text-secondary); }
  .ds-credits { display: grid; --row-gap: var(--space-4); --column-gap: var(--space-4); }
  .ds-credits__row { display: grid; --row-gap: var(--space-1); --column-gap: var(--space-1); --padding-bottom: var(--space-4); border-bottom: var(--border-width) solid var(--color-border-subtle); }
  .ds-credits__label { font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); color: var(--color-text-secondary); }
  .ds-credits__value { font-size: var(--text-body-l); }
  @media (min-width: 43.75em) {
    .ds-credits__row { grid-template-columns: var(--credits-label-w) 1fr; --row-gap: var(--space-6); --column-gap: var(--space-6); }
  }
  .ds-form { display: grid; gap: var(--space-6); }
  .ds-form__row { display: grid; gap: var(--space-6); }
  @media (min-width: 43.75em) {
    .ds-form__row { grid-template-columns: 1fr 1fr; }
  }
  .ds-form__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-6); margin-top: var(--space-4); }
  .ds-form__status { font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-form__status--success { color: var(--color-success-text); }
  .ds-form-summary { display: grid; gap: var(--space-3); padding: var(--space-6); border: var(--border-width) solid var(--color-error); background: var(--color-error-bg); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-form-summary__title { font-family: var(--font-ui); font-size: var(--text-body-l); font-weight: var(--weight-medium); color: var(--color-error); }
  .ds-form-summary__list { display: grid; gap: var(--space-2); padding-left: var(--space-6); list-style: disc; }
  .ds-form-summary__link { color: var(--color-error); }
  .ds-field { display: grid; gap: var(--space-1); }
  .ds-field__label { font-family: var(--font-ui); font-size: var(--text-label); font-weight: var(--weight-regular); line-height: var(--input-leading); }
  .ds-field__required { color: var(--color-text-secondary); font-weight: var(--weight-light); }
  .ds-field__help { color: var(--color-text-secondary); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-field__error { display: flex; align-items: flex-start; gap: var(--space-2); margin-top: var(--space-2); color: var(--color-error); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--leading-body); }
  .ds-field__error .ds-icon { margin-top: var(--space-1); }
  .ds-field__control { position: relative; }
  .ds-field__valid-icon { position: absolute; top: 50%; right: var(--input-pad-x); color: var(--color-success-text); transform: translateY(-50%); pointer-events: none; }
  .ds-input, .ds-select, .ds-textarea { display: block; width: 100%; min-height: var(--input-h); padding: var(--space-3) var(--input-pad-x); border: var(--border-width) solid var(--color-border-input); border-radius: var(--radius-sm); background: var(--color-surface); font-family: var(--font-ui); font-size: var(--text-body-l); line-height: var(--input-leading); transition: border-color var(--dur-fast) var(--ease-linear), box-shadow var(--dur-fast) var(--ease-linear); }
  .ds-textarea { min-height: calc(var(--input-h) * 3); resize: vertical; }
  .ds-select { appearance: none; padding-right: calc(var(--input-pad-x) * 2 + var(--icon-md)); cursor: pointer; }
  .ds-field__chevron { position: absolute; top: 50%; right: var(--input-pad-x); transform: translateY(-50%); pointer-events: none; }
  .ds-input::placeholder, .ds-textarea::placeholder { color: var(--color-text-secondary); }
  .ds-input:focus::placeholder, .ds-textarea:focus::placeholder { color: transparent; }
  @media (hover: hover) {
    .ds-input:hover, .ds-select:hover, .ds-textarea:hover { border-color: var(--black); }
  }
  .ds-input:focus-visible, .ds-select:focus-visible, .ds-textarea:focus-visible { border-color: var(--black); box-shadow: var(--shadow-focus); }
  .ds-input[aria-invalid="true"], .ds-select[aria-invalid="true"], .ds-textarea[aria-invalid="true"] { border-color: var(--color-error); box-shadow: var(--shadow-invalid); }
  .ds-input[aria-invalid="true"]:focus-visible, .ds-select[aria-invalid="true"]:focus-visible, .ds-textarea[aria-invalid="true"]:focus-visible { box-shadow: var(--shadow-invalid), var(--shadow-focus); }
  .ds-input.is-valid { padding-right: calc(var(--input-pad-x) * 2 + var(--icon-sm)); }
  .ds-input:disabled, .ds-select:disabled, .ds-textarea:disabled { background: var(--color-bg-alt); }
  .ds-input:read-only:not(:disabled) { background: var(--color-bg-alt); border-color: var(--color-border-subtle); }
  .ds-check { display: grid; grid-template-columns: var(--check-size) 1fr; align-items: start; gap: var(--space-4); font-family: var(--font-ui); font-size: var(--text-body); line-height: var(--input-leading); }
  .ds-check__input { appearance: none; display: grid; place-items: center; width: var(--check-size); height: var(--check-size); margin: 0; border: var(--border-width) solid var(--color-border-input); border-radius: var(--radius-0); background: var(--color-surface); cursor: pointer; transition: border-color var(--dur-fast) var(--ease-linear); }
  .ds-check__input::before { content: ""; width: var(--space-4); height: var(--space-4); background: var(--color-accent); transform: scale(0); transition: transform var(--dur-instant) var(--ease-out); }
  .ds-check__input:checked { border-color: var(--black); }
  .ds-check__input:checked::before { transform: scale(1); }
  .ds-check__input:focus-visible { border-radius: var(--radius-0); }
  .ds-check__input[aria-invalid="true"] { border-color: var(--color-error); box-shadow: var(--shadow-invalid); }
  @media (hover: hover) {
    .ds-check__input:hover { border-color: var(--black); }
  }
}
