/* Generated from tokens/source.json. Do not edit. */
:root {
  --turbo-color-pink-213c-1000: #FA4786;
  --turbo-color-pink-213c-hover: #CD3A6E;
  --turbo-color-pink-213c-940: #FA528D;
  --turbo-color-pink-213c-500: #FDA3C3;
  --turbo-color-pink-213c-140: #FEE5EE;
  --turbo-color-pink-213c-60: #FFF4F8;
  --turbo-color-blue-294c-1000: #002F6C;
  --turbo-color-blue-294c-950: #0D3973;
  --turbo-color-blue-294c-880: #1F487E;
  --turbo-color-blue-294c-820: #2E5486;
  --turbo-color-blue-294c-700: #4D6D98;
  --turbo-color-blue-294c-410: #96AAC3;
  --turbo-color-blue-294c-140: #DBE2EA;
  --turbo-color-blue-294c-40: #F5F7F9;
  --turbo-color-white: #FFFFFF;
  --turbo-color-danger: #D70015;
  --turbo-color-danger-soft: #FDF0F1;
  --turbo-color-success: #1F7E37;
  --turbo-color-success-soft: #F2F7F3;
  --turbo-surface-canvas: var(--turbo-color-white);
  --turbo-surface-raised: var(--turbo-color-white);
  --turbo-surface-soft: var(--turbo-color-pink-213c-60);
  --turbo-surface-technical: var(--turbo-color-blue-294c-40);
  --turbo-surface-brand: var(--turbo-color-pink-213c-1000);
  --turbo-surface-selected: var(--turbo-color-pink-213c-140);
  --turbo-text-primary: var(--turbo-color-blue-294c-950);
  --turbo-text-body: var(--turbo-color-blue-294c-880);
  --turbo-text-secondary: var(--turbo-color-blue-294c-700);
  --turbo-text-display: var(--turbo-color-pink-213c-1000);
  --turbo-text-accent: var(--turbo-color-pink-213c-hover);
  --turbo-text-accentOnSoft: var(--turbo-color-blue-294c-950);
  --turbo-text-onBrand: var(--turbo-color-white);
  --turbo-text-link: var(--turbo-color-blue-294c-950);
  --turbo-border-subtle: var(--turbo-color-blue-294c-140);
  --turbo-border-control: var(--turbo-color-blue-294c-700);
  --turbo-focus-ring: var(--turbo-color-blue-294c-950);
  --turbo-action-primary: var(--turbo-color-pink-213c-1000);
  --turbo-action-hover: var(--turbo-color-pink-213c-hover);
  --turbo-status-error: var(--turbo-color-danger);
  --turbo-status-success: var(--turbo-color-success);
  --turbo-status-info: var(--turbo-color-blue-294c-950);
  --turbo-space-0: 0px;
  --turbo-space-1: 4px;
  --turbo-space-2: 8px;
  --turbo-space-3: 12px;
  --turbo-space-4: 16px;
  --turbo-space-5: 20px;
  --turbo-space-6: 24px;
  --turbo-space-8: 32px;
  --turbo-space-10: 40px;
  --turbo-space-12: 48px;
  --turbo-space-16: 64px;
  --turbo-space-20: 80px;
  --turbo-space-24: 96px;
  --turbo-radius-micro: 6px;
  --turbo-radius-small: 12px;
  --turbo-radius-control: 18px;
  --turbo-radius-card: 26px;
  --turbo-radius-hero: 32px;
  --turbo-radius-pill: 999px;
  --turbo-size-target: 48px;
  --turbo-size-targetMinimum: 44px;
  --turbo-size-controlLarge: 56px;
  --turbo-size-icon: 24px;
  --turbo-size-iconSmall: 20px;
  --turbo-size-stroke: 1.75px;
  --turbo-layout-compact: 600px;
  --turbo-layout-medium: 1024px;
  --turbo-layout-wide: 1440px;
  --turbo-layout-max: 1240px;
  --turbo-layout-reading: 720px;
  --turbo-layout-gutterCompact: var(--turbo-space-5);
  --turbo-layout-gutterMedium: var(--turbo-space-8);
  --turbo-layout-gutterWide: var(--turbo-space-12);
  --turbo-font-brand: "FC Iconic", system-ui, sans-serif;
  --turbo-font-reading: "Sarabun", system-ui, sans-serif;
  --turbo-font-code: ui-monospace, SFMono-Regular, Consolas, monospace;
  --turbo-type-display: 64px;
  --turbo-type-hero: 48px;
  --turbo-type-title: 36px;
  --turbo-type-section: 28px;
  --turbo-type-card: 24px;
  --turbo-type-action: 20px;
  --turbo-type-body: 18px;
  --turbo-type-reading: 16px;
  --turbo-type-label: 16px;
  --turbo-type-caption: 14px;
  --turbo-leading-display: 1.2;
  --turbo-leading-ui: 1.5;
  --turbo-leading-reading: 1.85;
  --turbo-weight-regular: 400;
  --turbo-weight-medium: 500;
  --turbo-weight-semibold: 600;
  --turbo-weight-bold: 700;
  --turbo-motion-instant: 0ms;
  --turbo-motion-fast: 120ms;
  --turbo-motion-standard: 200ms;
  --turbo-motion-enter: 320ms;
  --turbo-motion-exit: 160ms;
  --turbo-motion-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --turbo-shadow-card: 0 1px 2px rgb(0 47 108 / .04), 0 8px 24px -8px rgb(0 47 108 / .10);
  --turbo-shadow-floating: 0 8px 16px -8px rgb(0 47 108 / .08), 0 24px 64px -16px rgb(0 47 108 / .18);
  --turbo-layer-base: 0;
  --turbo-layer-sticky: 10;
  --turbo-layer-overlay: 30;
  --turbo-layer-toast: 50;
}
@font-face{font-family:"FC Iconic";src:url("./assets/fonts/FC-Iconic-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"FC Iconic";src:url("./assets/fonts/FC-Iconic-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"FC Iconic";src:url("./assets/fonts/FC-Iconic-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"FC Iconic";src:url("./assets/fonts/FC-Iconic-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Sarabun";src:url("./assets/fonts/Sarabun-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Sarabun";src:url("./assets/fonts/Sarabun-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Sarabun";src:url("./assets/fonts/Sarabun-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
[data-size="sm"]{--t-target:44px;--t-font:1rem;--t-icon:20px;--t-insetX:16px;--t-insetY:8px;--t-gap:8px;--t-cardInset:16px;--t-cardRadius:18px;--t-choice:20px;--t-trackWidth:44px;--t-trackHeight:26px;--t-thumb:20px;--t-badgeFont:0.75rem;--t-badgeHeight:24px;--t-avatar:32px;--t-dialog:400px;--t-progress:4px;--t-row:48px;--t-section:40px;--t-tile:44px}
[data-size="md"]{--t-target:48px;--t-font:1.125rem;--t-icon:24px;--t-insetX:22px;--t-insetY:10px;--t-gap:12px;--t-cardInset:24px;--t-cardRadius:26px;--t-choice:22px;--t-trackWidth:52px;--t-trackHeight:30px;--t-thumb:24px;--t-badgeFont:0.875rem;--t-badgeHeight:28px;--t-avatar:44px;--t-dialog:560px;--t-progress:6px;--t-row:56px;--t-section:64px;--t-tile:56px}
[data-size="lg"]{--t-target:56px;--t-font:1.25rem;--t-icon:28px;--t-insetX:28px;--t-insetY:12px;--t-gap:16px;--t-cardInset:32px;--t-cardRadius:32px;--t-choice:24px;--t-trackWidth:60px;--t-trackHeight:34px;--t-thumb:28px;--t-badgeFont:1rem;--t-badgeHeight:32px;--t-avatar:64px;--t-dialog:800px;--t-progress:8px;--t-row:64px;--t-section:96px;--t-tile:72px}
/* Component contract. No global resets: safe to adopt in an existing product. */
.t-button,.t-input,.t-choice,.t-radio-group,.t-switch-row,.t-tabs,.t-segmented,.t-accordion,.t-alert,.t-dialog,.t-progress,.t-empty,.t-badge,.t-table,.t-pagination,.t-toast,.t-breadcrumbs{font-family:var(--turbo-font-brand);color:var(--turbo-text-primary);font-size:1.125rem;line-height:var(--turbo-leading-ui);box-sizing:border-box}
.t-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.t-icon{display:inline-block;flex-shrink:0;vertical-align:middle}
:where(.t-button,.t-input,.t-choice input,.t-switch-target,.t-tablist button,.t-segmented button,.t-accordion summary,.t-table-scroll,.t-tabpanel,.t-breadcrumbs a):focus-visible{outline:2px solid var(--turbo-focus-ring);outline-offset:4px;box-shadow:0 0 0 3px white}
.t-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--turbo-size-target);padding:10px 22px;border:1px solid transparent;border-radius:var(--turbo-radius-control);font-size:1.25rem;font-weight:700;line-height:1.4;text-decoration:none;text-align:center;cursor:pointer;transition:background var(--turbo-motion-fast),transform var(--turbo-motion-fast);white-space:normal;overflow-wrap:anywhere}
.t-button--primary{background:var(--turbo-action-primary);color:var(--turbo-color-white)}
.t-button--primary:hover,.t-button--primary:active{background:var(--turbo-action-hover)}
.t-button--secondary{background:var(--turbo-surface-canvas);border-color:var(--turbo-color-pink-213c-1000);color:var(--turbo-text-primary);font-size:1.125rem;font-weight:600}
.t-button--secondary:hover,.t-button--quiet:hover{background:var(--turbo-surface-soft)}
.t-button--quiet{background:transparent;color:var(--turbo-text-primary);font-size:1.125rem;font-weight:600}
.t-button--danger{background:var(--turbo-status-error);color:white}
.t-button--danger:hover{filter:brightness(.9)}
.t-button--large{min-height:var(--turbo-size-controlLarge);padding-inline:28px}
.t-button:active:not(:disabled):not([aria-disabled=true]){transform:translateY(1px)}
.t-button:disabled,.t-button[aria-disabled=true]{cursor:not-allowed;background:var(--turbo-surface-technical);border-color:var(--turbo-border-subtle);color:var(--turbo-text-secondary);transform:none}
.t-icon-button{min-width:48px;padding:10px;flex-shrink:0}
.t-spinner{height:18px;width:18px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:t-spin .8s linear infinite}
@keyframes t-spin{to{transform:rotate(360deg)}}
.t-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--turbo-radius-pill);font-size:.875rem;font-weight:600;background:var(--turbo-surface-technical);white-space:nowrap}
.t-badge--brand{background:var(--turbo-surface-selected)}
.t-badge--success{background:var(--turbo-color-success-soft);color:var(--turbo-status-success)}
.t-badge--error{background:var(--turbo-color-danger-soft);color:var(--turbo-status-error)}
.t-card{border:1px solid var(--turbo-border-subtle);border-radius:var(--turbo-radius-card);padding:24px;background:var(--turbo-surface-raised);box-shadow:var(--turbo-shadow-card)}
.t-field{display:grid;gap:6px;min-width:0;color:var(--turbo-text-primary);font-family:var(--turbo-font-brand);font-size:1.125rem}
.t-field>label,.t-radio-group legend{font-weight:600}
.t-input-wrap{position:relative;display:flex;align-items:center}
.t-input{width:100%;min-height:48px;border:1px solid var(--turbo-border-control);border-radius:var(--turbo-radius-small);background:var(--turbo-surface-canvas);padding:10px 14px;appearance:auto;outline-offset:3px}
.t-input::placeholder{color:var(--turbo-text-secondary);opacity:1}
.t-input[aria-invalid=true]{border:2px solid var(--turbo-status-error);padding:9px 13px}
.t-input:disabled{background:var(--turbo-surface-technical);color:var(--turbo-text-secondary);cursor:not-allowed}
.t-input[readonly]{background:var(--turbo-surface-technical)}
.t-input-wrap:has(.t-input-suffix) .t-input{padding-inline-end:54px}
.t-input-suffix{position:absolute;inset-inline-end:14px;font-size:1rem;color:var(--turbo-text-secondary);pointer-events:none}
textarea.t-input{resize:vertical;min-height:120px}
.t-hint{display:block;color:var(--turbo-text-secondary);font-size:.9375rem;font-weight:400;line-height:1.6}
.t-error{display:flex;gap:6px;align-items:flex-start;font-size:1rem;color:var(--turbo-status-error);line-height:1.5}
.t-error .t-icon{margin-top:3px}
.t-choice{display:flex;align-items:flex-start;gap:12px;min-height:48px;cursor:pointer;padding-block:10px}
.t-choice input{width:22px;height:22px;flex-shrink:0;margin:3px 0;accent-color:var(--turbo-text-primary)}
.t-choice:has(input:disabled){color:var(--turbo-text-secondary);cursor:not-allowed}
.t-radio-group{padding:0;border:0;margin:0;min-width:0}
.t-switch-row{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:56px}
.t-switch-target{width:52px;min-width:52px;height:48px;padding:8px 0;background:none;border:none;cursor:pointer;border-radius:12px}
.t-switch-track{display:block;background:var(--turbo-border-control);width:52px;height:30px;padding:3px;border-radius:999px;box-sizing:border-box;transition:background .12s}
.t-switch-thumb{display:flex;align-items:center;justify-content:center;background:white;width:24px;height:24px;border-radius:50%;transition:transform .12s;color:var(--turbo-text-primary)}
.t-switch-target[aria-checked=true] .t-switch-track{background:var(--turbo-action-primary)}
.t-switch-target[aria-checked=true] .t-switch-thumb{transform:translateX(22px)}
.t-switch-target:disabled{opacity:.5;cursor:not-allowed}
.t-tablist{display:flex;border-bottom:1px solid var(--turbo-border-subtle);gap:16px;overflow-x:auto;padding:4px}
.t-tablist button{font:inherit;font-weight:600;min-height:48px;padding:8px 12px;white-space:nowrap;background:none;color:var(--turbo-text-secondary);border:0;border-bottom:3px solid transparent;cursor:pointer}
.t-tablist button[aria-selected=true]{color:var(--turbo-text-primary);border-bottom-color:var(--turbo-action-primary)}
.t-tabpanel{padding-block:24px;outline-offset:2px}
.t-tabpanel[hidden]{display:none}
.t-segmented{display:inline-flex;flex-wrap:wrap;border-radius:var(--turbo-radius-small);padding:4px;gap:4px;background:var(--turbo-surface-technical);max-width:100%}
.t-segmented button{font:inherit;font-size:1rem;color:var(--turbo-text-secondary);border:1px solid transparent;border-radius:9px;min-height:44px;padding:8px 16px;cursor:pointer;background:transparent}
.t-segmented button[aria-pressed=true]{background:white;border-color:var(--turbo-border-subtle);color:var(--turbo-text-primary);font-weight:600;box-shadow:0 1px 3px rgb(0 47 108 / .08)}
.t-accordion details{border-bottom:1px solid var(--turbo-border-subtle)}
.t-accordion summary{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;list-style:none;font-weight:600;cursor:pointer}
.t-accordion summary::-webkit-details-marker{display:none}
.t-accordion details[open] summary .t-icon{transform:rotate(45deg)}
.t-accordion-content{padding:0 32px 24px 0;color:var(--turbo-text-body);line-height:1.7}
.t-alert{display:flex;gap:12px;padding:20px;border-radius:var(--turbo-radius-small);background:var(--turbo-surface-technical);align-items:flex-start}
.t-alert>.t-icon{margin-top:2px}
.t-alert--success{background:var(--turbo-color-success-soft);color:var(--turbo-status-success)}
.t-alert--error{background:var(--turbo-color-danger-soft);color:var(--turbo-status-error)}
.t-alert--warning{background:var(--turbo-surface-selected)}
.t-alert-body{font-size:1rem;margin-top:4px;line-height:1.7}
.t-dialog{border:0;border-radius:var(--turbo-radius-card);padding:28px;max-width:560px;width:calc(100% - 40px);max-height:calc(100dvh - 40px);color:var(--turbo-text-body);box-shadow:var(--turbo-shadow-floating);overflow:auto;overscroll-behavior:contain}
.t-dialog::backdrop{background:rgb(0 47 108 / .24)}
.t-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.t-dialog-head h2{font-size:1.75rem;line-height:1.5;margin:6px 0 0;color:var(--turbo-text-display)}
.t-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:28px}
.t-progress>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}
.t-progress progress{appearance:none;display:block;border:0;width:100%;height:6px;border-radius:999px;overflow:hidden;background:var(--turbo-surface-selected);accent-color:var(--turbo-action-primary)}
.t-progress progress::-webkit-progress-bar{background:var(--turbo-surface-selected)}
.t-progress progress::-webkit-progress-value{background:var(--turbo-action-primary);border-radius:999px}
.t-progress progress::-moz-progress-bar{background:var(--turbo-action-primary)}
.t-skeleton{display:grid;gap:12px;min-width:120px}
.t-skeleton>span:not(.t-sr-only){height:14px;border-radius:6px;background:var(--turbo-surface-technical)}
.t-skeleton>span:last-child{width:65%}
.t-empty{display:grid;justify-items:center;text-align:center;padding:40px 24px}
.t-empty-icon{padding:18px;background:var(--turbo-surface-soft);border-radius:var(--turbo-radius-control)}
.t-empty h3{font-size:1.5rem;margin:20px 0 8px;color:var(--turbo-text-primary)}
.t-empty p{max-width:36ch;margin:0 0 24px;color:var(--turbo-text-secondary)}
.t-avatar{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--turbo-surface-selected);color:var(--turbo-text-primary);font-weight:600;object-fit:cover}
.t-breadcrumbs ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0;gap:12px;font-size:1rem}
.t-breadcrumbs li{display:flex;gap:12px}.t-breadcrumbs a{color:var(--turbo-text-link);text-underline-offset:4px}
.t-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px}
.t-table-scroll{overflow:auto;max-width:100%;border:1px solid var(--turbo-border-subtle);border-radius:var(--turbo-radius-small)}
.t-table{width:100%;border-collapse:collapse;text-align:left;font-size:1rem}
.t-table caption{text-align:left;padding:18px 20px;font-weight:600;font-size:1.125rem}
.t-table th,.t-table td{padding:14px 20px;border-top:1px solid var(--turbo-border-subtle);vertical-align:middle}
.t-table thead{background:var(--turbo-surface-technical)}
.t-table tbody th{font-weight:500}
.t-numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.t-toast{position:fixed;inset-inline-end:24px;bottom:24px;z-index:var(--turbo-layer-toast);display:flex;align-items:center;gap:24px;background:white;border:1px solid var(--turbo-border-control);padding:8px 8px 8px 20px;max-width:calc(100vw - 32px);border-radius:18px;box-shadow:var(--turbo-shadow-floating)}
@media(max-width:599px){.t-dialog{padding:20px}.t-dialog-actions>.t-button{flex:1}.t-toast{bottom:max(16px,env(safe-area-inset-bottom));inset-inline:16px}}
@media(prefers-reduced-motion:reduce){.t-button,.t-switch-thumb,.t-switch-track{transition:none}.t-spinner{animation:none;border-style:dotted}}
@media(forced-colors:active){.t-button,.t-badge,.t-switch-track,.t-alert,.t-card,.t-dialog,.t-tablist button[aria-selected=true]{border:1px solid ButtonText}.t-switch-thumb{background:ButtonText;color:ButtonFace}.t-input:focus-visible,.t-button:focus-visible{outline:2px solid Highlight}.t-button[aria-disabled=true]{color:GrayText}}
@media(prefers-contrast:more){.t-card,.t-alert,.t-table-scroll{border:1px solid var(--turbo-border-control)}}
/* Size geometry is generated from catalog/sizes.json and inherited by anatomy. */
.t-button[data-size]{min-height:var(--t-target);padding:calc((var(--t-target) - 2px - 1.4em)/2) var(--t-insetX);gap:var(--t-gap)}
.t-button--secondary[data-size],.t-button--quiet[data-size]{font-size:var(--t-font)}
.t-button--primary[data-size],.t-button--danger[data-size]{font-size:1.25rem}
.t-icon-button[data-size]{min-width:var(--t-target);padding:8px;aspect-ratio:1}
.t-card[data-size]{padding:var(--t-cardInset);border-radius:var(--t-cardRadius);font-family:var(--turbo-font-brand);color:var(--turbo-text-body)}
.t-field[data-size],.t-choice[data-size],.t-radio-group[data-size],.t-switch-row[data-size],.t-tabs[data-size],.t-accordion[data-size],.t-alert[data-size],.t-empty[data-size],.t-progress[data-size],.t-toast[data-size]{font-size:var(--t-font)}
.t-field[data-size] .t-input{font-size:var(--t-font);min-height:var(--t-target);padding:calc((var(--t-target) - 2px - 1.5em)/2) 14px;line-height:1.5}
.t-field[data-size] .t-input[aria-invalid=true]{padding-block:calc((var(--t-target) - 4px - 1.5em)/2);padding-inline:13px}
.t-field[data-size] textarea.t-input{min-height:calc(var(--t-target)*2.5);padding:12px 14px}
.t-field[data-size] .t-input-wrap:has(.t-input-suffix) .t-input{padding-inline-end:54px}
.t-choice[data-size],.t-radio-group[data-size] .t-choice{font-size:var(--t-font);min-height:var(--t-target);gap:var(--t-gap);padding-block:var(--t-insetY)}
.t-choice[data-size] input,.t-radio-group[data-size] input{width:var(--t-choice);height:var(--t-choice)}
.t-switch-row[data-size]{min-height:var(--t-target);gap:var(--t-gap)}
.t-switch-row[data-size] .t-switch-target{min-width:var(--t-trackWidth);width:var(--t-trackWidth);height:var(--t-target);display:flex;align-items:center;justify-content:center;padding:0}
.t-switch-row[data-size] .t-switch-track{width:var(--t-trackWidth);height:var(--t-trackHeight)}
.t-switch-row[data-size] .t-switch-thumb{width:var(--t-thumb);height:var(--t-thumb)}
.t-switch-row[data-size] [aria-checked=true] .t-switch-thumb{transform:translateX(calc(var(--t-trackWidth) - var(--t-thumb) - 6px))}
.t-tabs[data-size] .t-tablist button,.t-segmented[data-size] button{font-size:var(--t-font);min-height:var(--t-target);padding:var(--t-insetY) var(--t-insetX)}
.t-accordion[data-size] summary{min-height:var(--t-target);padding-block:var(--t-insetY)}
.t-accordion[data-size] .t-accordion-content{padding-bottom:var(--t-cardInset)}
.t-badge[data-size]{font-size:var(--t-badgeFont);min-height:var(--t-badgeHeight);padding:2px 10px;white-space:normal}
.t-alert[data-size]{padding:var(--t-cardInset);gap:var(--t-gap)}
.t-dialog[data-size]{max-width:var(--t-dialog);padding:var(--t-cardInset)}
.t-progress[data-size] progress{height:var(--t-progress)}
.t-skeleton[data-size]{gap:var(--t-gap)}.t-skeleton[data-size]>span:not(.t-sr-only){height:var(--t-badgeFont)}
.t-empty[data-size]{padding:calc(var(--t-cardInset)*1.5) var(--t-cardInset)}
.t-avatar[data-size]{width:var(--t-avatar);height:var(--t-avatar);font-size:calc(var(--t-avatar)/2.4);flex-shrink:0}
.t-breadcrumbs[data-size] ol{font-size:var(--t-font);gap:var(--t-gap)}.t-breadcrumbs[data-size] a{display:inline-flex;align-items:center;min-height:var(--t-target)}.t-breadcrumbs li{align-items:center}
.t-table-scroll[data-size] .t-table{font-size:var(--t-font)}.t-table-scroll[data-size] th,.t-table-scroll[data-size] td{height:var(--t-row);padding:var(--t-insetY) var(--t-insetX);box-sizing:border-box}
.t-toast[data-size]{gap:var(--t-gap);padding-inline-start:var(--t-cardInset)}
.t-icon-tile{display:inline-flex;align-items:center;justify-content:center;width:var(--t-tile);height:var(--t-tile);border-radius:var(--turbo-radius-small);color:var(--turbo-text-primary);flex-shrink:0;box-sizing:border-box}
.t-icon-tile--soft{background:var(--turbo-surface-selected)}.t-icon-tile--white{background:white}.t-icon-tile--outline{border:1px solid var(--turbo-action-primary);background:white}
/* Website compositions. The size scale is shared with controls. */
:where(.t-container,.t-section,.t-section-head,.t-photo,.t-page-hero,.t-cta-band,.t-product-card,.t-choice-grid,.t-search-field,.t-slider,.t-file-upload,.t-metric,.t-bullet-list,.t-steps,.t-timeline,.t-testimonial,.t-trust-marks,.t-store-buttons,.t-navigation-item,.t-site-header,.t-site-footer,.t-app-navigation){box-sizing:border-box;font-family:var(--turbo-font-brand);color:var(--turbo-text-primary);font-size:var(--t-font,1.125rem);line-height:1.6;min-width:0}
:where(.t-container,.t-section,.t-product-card,.t-choice-grid,.t-site-header,.t-site-footer,.t-app-navigation) *{box-sizing:border-box}
.t-logo{display:block;object-fit:contain;height:auto;width:144px;max-width:100%;padding-block:8px}.t-logo[data-size=sm]{width:112px}.t-logo[data-size=lg]{width:192px}
.t-container{max-width:1240px;margin-inline:auto;padding-inline:clamp(20px,4vw,48px)}.t-container[data-size=sm]{max-width:760px}.t-container[data-size=lg]{max-width:1440px}
.t-section{padding-block:var(--t-section)}.t-section--white{background:white}.t-section--soft{background:var(--turbo-surface-soft)}.t-section--technical{background:var(--turbo-surface-technical)}
.t-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;flex-wrap:wrap}.t-section-head>div{max-width:65ch}.t-section-head--center{justify-content:center;text-align:center}.t-section-head h2{font-size:2rem;color:var(--turbo-text-display);line-height:1.5;margin:4px 0}.t-section-head[data-size=sm] h2{font-size:1.5rem}.t-section-head[data-size=lg] h2{font-size:2.5rem}.t-section-head p{margin:8px 0 0;color:var(--turbo-text-body)}
.t-eyebrow{font-size:.875rem;font-weight:600;color:var(--turbo-text-primary)}
.t-photo{margin:0}.t-photo img{display:block;width:100%;object-fit:cover;border-radius:var(--t-cardRadius)}.t-photo figcaption{font-size:.875rem;color:var(--turbo-text-secondary);margin-top:12px}
.t-page-hero{padding:var(--t-cardInset);border-radius:var(--t-cardRadius);background:var(--turbo-surface-soft)}.t-page-hero h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.4;color:var(--turbo-text-display);margin:12px 0}.t-page-hero p{color:var(--turbo-text-body);margin:0 0 24px;max-width:55ch}.t-page-hero--split{display:grid;grid-template-columns:1fr 1fr;gap:var(--t-cardInset);align-items:center}
.t-cta-band{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:var(--t-cardInset);border-radius:var(--t-cardRadius);background:var(--turbo-action-primary)}.t-cta-band h2{font-size:1.75rem;line-height:1.5;color:white;margin:0}.t-cta-band p{font-weight:600;margin:8px 0 0}.t-cta-band>.t-button{background:white;color:var(--turbo-text-primary)}
.t-card-rail{display:flex;gap:var(--t-cardInset);overflow:auto;scroll-snap-type:x proximity;padding:4px 4px 16px;max-width:100%}.t-card-rail>*{flex:0 0 min(320px,82%);scroll-snap-align:start}
.t-product-card{display:flex;flex-direction:column;border:1px solid var(--turbo-border-subtle);border-radius:var(--t-cardRadius);overflow:hidden;background:white;box-shadow:var(--turbo-shadow-card)}.t-product-photo{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.t-product-card-body{display:flex;flex:1;flex-direction:column;padding:var(--t-cardInset);gap:12px}.t-product-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.t-product-card h3{margin:4px 0 0;font-size:calc(var(--t-font) + .25rem);line-height:1.5}.t-product-card p{margin:0;color:var(--turbo-text-body)}.t-product-card .t-button{align-self:flex-start;padding-inline:0;margin-top:auto}
.t-choice-grid{padding:0;border:0;margin:0}.t-choice-grid legend{font-weight:600;margin-bottom:12px}.t-choice-grid>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--t-gap)}.t-product-choice{display:flex;align-items:center;position:relative;gap:var(--t-gap);min-height:var(--t-target);padding:var(--t-cardInset);border:1px solid var(--turbo-border-control);border-radius:var(--turbo-radius-control);cursor:pointer}.t-product-choice input{position:absolute;width:1px;height:1px;opacity:0}.t-product-choice>span{flex:1}.t-product-choice strong,.t-product-choice small{display:block}.t-product-choice small{font-size:.875rem}.t-product-choice>.t-icon:last-child{visibility:hidden}.t-product-choice:has(:checked){background:var(--turbo-surface-selected);border:2px solid var(--turbo-text-primary);padding:calc(var(--t-cardInset) - 1px)}.t-product-choice:has(:checked)>.t-icon:last-child{visibility:visible}.t-product-choice:has(:focus-visible){outline:2px solid var(--turbo-focus-ring);outline-offset:4px}.t-product-choice:has(:disabled){opacity:.5;cursor:not-allowed}
.t-search-field>label,.t-file-upload>label{display:block;font-weight:600;margin-bottom:6px}.t-search-field>div{display:flex;align-items:center;gap:8px;min-height:var(--t-target);border:1px solid var(--turbo-border-control);border-radius:var(--turbo-radius-small);padding-inline-start:14px;background:white}.t-search-field input{appearance:none;min-width:0;width:100%;border:0;padding-block:10px;background:transparent;font:inherit;color:inherit;min-height:var(--t-target)}.t-search-field input::-webkit-search-cancel-button{display:none}.t-search-field input:focus{outline:none}.t-search-field>div:focus-within{outline:2px solid var(--turbo-focus-ring);outline-offset:3px}.t-search-field .t-button{border-radius:10px;padding:8px}.t-slider>div{display:flex;justify-content:space-between;gap:16px}.t-slider label{font-weight:600}.t-slider output{font-variant-numeric:tabular-nums}.t-slider input{width:100%;margin:0;min-height:var(--t-target);accent-color:var(--turbo-text-primary);cursor:pointer}.t-file-upload input{font:inherit;width:100%;min-width:0;padding:var(--t-insetY);border:1px dashed var(--turbo-border-control);border-radius:12px;background:var(--turbo-surface-soft)}.t-file-upload input::file-selector-button{min-height:var(--t-target);font:inherit;color:var(--turbo-text-primary);border:1px solid var(--turbo-border-control);background:white;border-radius:12px;margin-inline-end:12px;padding:8px 16px;cursor:pointer}
.t-metric>span{font-size:1rem}.t-metric>strong{font-size:2.5rem;font-weight:600;line-height:1.4;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-variant-numeric:tabular-nums}.t-metric[data-size=sm]>strong{font-size:2rem}.t-metric[data-size=lg]>strong{font-size:3.25rem}.t-metric small{font-size:1rem;font-weight:400}.t-metric p{font-size:.875rem;color:var(--turbo-text-secondary);margin:8px 0 0}.t-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:var(--t-cardInset)}
.t-bullet-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--t-gap)}.t-bullet-list li{display:flex;align-items:flex-start;gap:var(--t-gap)}.t-bullet-list .t-icon{margin-top:3px}
.t-steps,.t-timeline{list-style:none;padding:0;margin:0;display:grid;gap:var(--t-cardInset)}.t-steps li{display:flex;gap:var(--t-gap)}.t-step-number{display:flex;align-items:center;justify-content:center;background:var(--turbo-surface-selected);width:var(--t-target);height:var(--t-target);border-radius:50%;flex-shrink:0;font-weight:600}.t-steps p,.t-timeline p{margin:4px 0;color:var(--turbo-text-body)}.t-steps [aria-current=step] .t-step-number{outline:2px solid var(--turbo-text-primary);outline-offset:3px}.t-timeline li{position:relative;display:grid;grid-template-columns:100px 1fr;gap:var(--t-gap);padding-inline-start:20px;border-inline-start:2px solid var(--turbo-border-subtle)}.t-timeline li:before{content:'';position:absolute;inset-inline-start:-6px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--turbo-action-primary)}.t-timeline time{font-size:.875rem;color:var(--turbo-text-secondary)}
.t-testimonial{margin:0;padding:var(--t-cardInset);border:1px solid var(--turbo-border-subtle);border-radius:var(--t-cardRadius);background:white}.t-testimonial>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;margin-bottom:16px}.t-testimonial blockquote{margin:16px 0;font-size:calc(var(--t-font) + .25rem)}.t-testimonial figcaption>*{display:block}.t-testimonial figcaption>span{font-size:.875rem;color:var(--turbo-text-secondary)}
.t-trust-marks{display:flex;flex-wrap:wrap;gap:var(--t-cardInset)}.t-trust-marks>div{display:flex;flex-direction:column;gap:8px;border-inline-start:2px solid var(--turbo-border-subtle);padding-inline-start:16px}.t-trust-marks img{object-fit:contain;width:auto;height:48px;max-width:160px}.t-trust-marks small{font-size:.875rem}
.t-contact-panel h3,.t-branch-card h3{margin:0 0 16px;font-size:calc(var(--t-font) + .25rem);color:var(--turbo-text-primary)}.t-contact-item{display:flex;align-items:center;gap:var(--t-gap);text-decoration:none;color:var(--turbo-text-primary);padding-block:var(--t-insetY);min-height:var(--t-target)}.t-contact-item>span{flex:1}.t-contact-item small,.t-contact-item strong{display:block}.t-contact-item small{font-size:.875rem}.t-branch-card h3{margin-top:16px}.t-branch-hours{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.t-social-links{display:flex;flex-wrap:wrap;gap:8px}.t-social-links a{display:flex;align-items:center;justify-content:center;width:var(--t-target);height:var(--t-target);border:1px solid var(--turbo-border-subtle);border-radius:12px;background:white}.t-store-buttons{display:flex;flex-wrap:wrap;gap:var(--t-gap)}.t-store-buttons a{display:flex;gap:12px;align-items:center;min-height:var(--t-target);padding:var(--t-insetY) var(--t-insetX);background:white;color:var(--turbo-text-primary);border:1px solid var(--turbo-border-control);border-radius:18px;text-decoration:none}.t-store-buttons span>*{display:block;line-height:1.4}.t-store-buttons small{font-size:.75rem}.t-store-buttons strong{font-size:var(--t-font)}
.t-navigation-item{display:flex;align-items:center;gap:var(--t-gap);padding:var(--t-insetY);text-decoration:none;border:1px solid var(--turbo-border-subtle);border-radius:18px;min-height:var(--t-target);background:white}.t-navigation-item>span:not(.t-icon-tile){flex:1}.t-navigation-item strong,.t-navigation-item small{display:block}.t-navigation-item small{font-size:.875rem;color:var(--turbo-text-secondary)}.t-navigation-item[aria-current]{border-color:var(--turbo-text-primary);background:var(--turbo-surface-soft)}
.t-site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:var(--t-insetY) var(--t-cardInset);border-bottom:1px solid var(--turbo-border-subtle);background:white;container-type:inline-size}.t-header-links{display:flex;gap:var(--t-gap);align-items:center}.t-header-links a,.t-header-menu a{display:flex;align-items:center;min-height:var(--t-target);text-decoration:none;color:inherit;font-weight:600}.t-header-menu{position:relative;display:none}.t-header-menu summary{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;list-style:none}.t-header-menu summary::-webkit-details-marker{display:none}.t-header-menu nav{position:absolute;z-index:50;right:0;min-width:220px;max-width:calc(100vw - 40px);padding:16px;background:white;border:1px solid var(--turbo-border-control);border-radius:18px;box-shadow:var(--turbo-shadow-floating)}
.t-site-footer{padding:var(--t-cardInset);background:var(--turbo-surface-soft);border-radius:var(--t-cardRadius)}.t-site-footer>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:var(--t-cardInset);margin-top:24px}.t-site-footer nav{display:flex;flex-direction:column;gap:4px}.t-site-footer a{min-height:44px;display:flex;align-items:center;text-decoration:none;color:var(--turbo-text-body)}.t-site-footer>p{font-size:.875rem;margin-top:24px;color:var(--turbo-text-secondary)}
.t-app-navigation{display:flex;border-top:1px solid var(--turbo-border-subtle);padding:8px 4px max(8px,env(safe-area-inset-bottom));background:white}.t-app-navigation a{display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;gap:4px;min-width:44px;min-height:var(--t-target);padding:4px;text-decoration:none;color:var(--turbo-text-secondary);text-align:center}.t-app-navigation span{font-size:.875rem}.t-app-navigation a[aria-current]{color:var(--turbo-text-primary);font-weight:600;background:var(--turbo-surface-selected);border-radius:12px}
:where(.t-card-rail,.t-file-upload input,.t-slider input,.t-product-card a,.t-social-links a,.t-navigation-item,.t-store-buttons a,.t-site-header a,.t-site-header summary,.t-site-footer a,.t-app-navigation a,.t-contact-item):focus-visible{outline:2px solid var(--turbo-focus-ring);outline-offset:4px}
@container(max-width:700px){.t-header-links{display:none}.t-header-menu{display:block}}
@media(max-width:700px){.t-header-links{display:none}.t-header-menu{display:block}.t-page-hero--split{grid-template-columns:1fr}.t-timeline li{grid-template-columns:1fr}.t-site-header>.t-button{display:none}}
/* Keep offscreen accessibility text within its scrollable component. */
.t-button,.t-card-rail{position:relative}

/* Help and errors describe the checkbox without becoming its accessible name. */
.t-choice-field{min-width:0;font-family:var(--turbo-font-brand)}
.t-choice-field>.t-hint,.t-choice-field>.t-error{margin:0 0 8px;padding-inline-start:calc(var(--t-choice,22px) + var(--t-gap,12px))}
.t-choice-field .t-choice:has(input[aria-invalid=true]){color:var(--turbo-status-error)}
.t-choice-field input[aria-invalid=true]{outline:1px solid var(--turbo-status-error);outline-offset:2px}
