/* TARO components — every value is a token from tokens.css */
.t-btn{display:inline-flex;align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-6);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:15px;font-weight:600;letter-spacing:.02em;text-decoration:none;cursor:pointer;border:2px solid transparent;transition:background .15s,color .15s,border-color .15s}
.t-btn--primary{background:var(--taro-plum);color:var(--mark-cream);border-color:var(--taro-plum)}
.t-btn--primary:hover{background:var(--taro-plum-soft);border-color:var(--taro-plum-soft)}
.t-btn--secondary{background:transparent;color:var(--taro-plum);border-color:var(--taro-plum)}
.t-btn--secondary:hover{background:var(--surface-200)}
.t-btn--quiet{background:transparent;color:var(--taro-plum);padding:0 var(--space-2);height:auto;border:0;text-decoration:underline;text-underline-offset:4px}
.t-btn--sm{height:34px;padding:0 var(--space-4);font-size:13px}
.t-btn:focus-visible{outline:3px solid var(--taro-plum);outline-offset:3px}
[data-theme="dark"] .t-btn--primary{background:var(--taro-plum);color:var(--surface-100);border-color:var(--taro-plum)}
.t-btn[disabled],.t-btn[aria-disabled="true"]{opacity:.45;pointer-events:none}

.t-tag{display:inline-flex;align-items:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface-200);color:var(--clay-deep);font-family:var(--font-sans);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.t-tag--plum{color:var(--taro-plum)}
.t-tag--solid{background:var(--clay);color:var(--mark-cream)}

.t-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);background:var(--surface-200);border-radius:var(--radius-lg);color:var(--ink);font-family:var(--font-sans);max-width:360px}
.t-card__eyebrow{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--clay-deep)}
.t-card__title{margin:0;font-family:var(--font-display);font-weight:500;font-size:24px;line-height:1.2;color:var(--ink)}
.t-card__title-zh{display:block;font-family:var(--font-han);font-weight:700;font-size:22px;line-height:1.35;margin-bottom:var(--space-1)}
.t-card__meta{font-size:14px;line-height:22px;color:var(--ink-muted)}
.t-card__body{font-size:16px;line-height:26px;margin:0}
.t-card__actions{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-2)}

.t-header{display:flex;align-items:center;gap:var(--space-8);height:72px;padding:0 var(--space-8);background:var(--surface-100);border-bottom:1px solid var(--hairline);font-family:var(--font-sans)}
.t-header__brand{display:flex;align-items:center;height:44px}
.t-header__brand img{height:44px;display:block}
.t-header__nav{display:flex;gap:var(--space-6);margin-left:auto;list-style:none;padding:0;margin-top:0;margin-bottom:0}
.t-header__nav a{color:var(--ink);text-decoration:none;font-size:15px;font-weight:500}
.t-header__nav a:hover,.t-header__nav a[aria-current="page"]{color:var(--taro-plum);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.t-header__nav .zh{font-family:var(--font-han)}

.t-footer{background:var(--taro-plum);color:var(--mark-cream);padding:var(--space-12) var(--space-8) var(--space-8);font-family:var(--font-sans)}
.t-footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:var(--space-8)}
.t-footer__brand img{height:64px;display:block;margin-bottom:var(--space-4)}
.t-footer__mission{font-size:15px;line-height:24px;max-width:36ch;opacity:.9;margin:0}
.t-footer h4{margin:0 0 var(--space-3);font-family:var(--font-display);font-weight:500;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.t-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}
.t-footer a{color:var(--mark-cream);text-decoration:none;font-size:15px}
.t-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.t-footer__legal{margin-top:var(--space-12);padding-top:var(--space-4);border-top:1px solid rgba(251,246,236,.25);font-size:13px;opacity:.7;display:flex;justify-content:space-between}
