/**
 * TCC Component Authority Contract v1
 * Declarative shared component behavior. Design System remains the owner;
 * feature modules only opt in through data-tcc-component attributes.
 */

/* RC7.9.347 — Shared Eyebrow Pill Authority.
 * Homepage remains the frozen visual baseline; feature modules opt in with .tcc-eyebrow.
 */
/* RC7.9.371 — harden the single shared eyebrow authority so page context cannot resize it. */
.tcc-eyebrow{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 var(--tcc-space-md,20px)!important;
  padding:6px 14px!important;
  border:1px solid color-mix(in srgb,var(--tcc-color-accent,var(--tcc-accent,#b98232)) 34%,transparent)!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--tcc-color-accent,var(--tcc-accent,#b98232)) 8%,transparent)!important;
  color:var(--tcc-color-accent,var(--tcc-accent,#b98232))!important;
  font-family:inherit!important;
  font-size:.76rem!important;
  font-weight:800!important;
  line-height:1!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

[data-tcc-component="button"]{
  min-height:var(--tcc-ds-button-height,44px);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--tcc-ds-icon-gap,8px);
  border-radius:var(--tcc-button-radius,var(--tcc-radius-sm,8px));
  font-size:var(--tcc-ds-button-size,15px);
  font-weight:var(--tcc-ds-button-weight,700);
  line-height:1.2;
  text-decoration:none;
  transition:background-color var(--tcc-ds-transition,220ms) ease,border-color var(--tcc-ds-transition,220ms) ease,color var(--tcc-ds-transition,220ms) ease,transform var(--tcc-ds-transition,220ms) ease;
}
[data-tcc-component="button"][data-tcc-variant="primary"]{
  background:var(--tcc-color-primary,#07523d);
  border:1px solid var(--tcc-color-primary,#07523d);
  color:#fff;
}
[data-tcc-component="button"][data-tcc-variant="secondary"]{
  background:var(--tcc-color-surface,#fff);
  border:1px solid var(--tcc-color-border,#e6e1d7);
  color:var(--tcc-color-primary,#07523d);
}
[data-tcc-component="button"][data-tcc-variant="link"]{
  min-height:auto;
  color:var(--tcc-color-primary,#07523d);
}
[data-tcc-component="button"]:focus-visible,
[data-tcc-component="form"] :is(input,select,textarea,button):focus-visible{
  outline:var(--tcc-ds-focus-width,3px) solid color-mix(in srgb,var(--tcc-color-accent,#b77a24) 70%,transparent);
  outline-offset:var(--tcc-ds-focus-offset,3px);
}
[data-tcc-component="card"]{
  border:var(--tcc-ds-card-border,1px) solid var(--tcc-color-border,#e6e1d7);
  border-radius:var(--tcc-radius-md,18px);
  background:var(--tcc-color-surface,#fff);
  overflow:hidden;
}
[data-tcc-component="form"] :is(input:not([type="checkbox"]):not([type="radio"]),select){
  min-height:var(--tcc-ds-input-height,40px);
  border-width:var(--tcc-ds-input-border,1px);
  border-radius:var(--tcc-ds-input-radius,10px);
  font-size:var(--tcc-ds-input-size,14px);
}
[data-tcc-component="form"] textarea{
  min-height:var(--tcc-ds-textarea-height,104px);
  border-radius:var(--tcc-ds-input-radius,10px);
  font-size:var(--tcc-ds-input-size,14px);
}
[data-tcc-component="empty-state"]{
  border:1px solid var(--tcc-color-border,#e6e1d7);
  border-radius:var(--tcc-radius-md,18px);
  background:var(--tcc-color-surface,#fff);
}
[data-tcc-component="pagination"] .nav-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:var(--tcc-space-xs,8px);
}
[data-tcc-component="pagination"] .page-numbers{
  min-width:40px;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--tcc-color-border,#e6e1d7);
  border-radius:var(--tcc-radius-sm,8px);
  background:var(--tcc-color-surface,#fff);
  color:var(--tcc-color-text,#17342b);
  text-decoration:none;
}
[data-tcc-component="pagination"] .page-numbers.current{
  background:var(--tcc-color-primary,#07523d);
  border-color:var(--tcc-color-primary,#07523d);
  color:#fff;
}
@media (prefers-reduced-motion:reduce){
  [data-tcc-component]{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
