/* Tekoa Trading — built on the Civic token layer (styles.css). This file re-points the semantic
   tokens for a sleek, quiet look: deep navy-black with teal (dark, default) and clean white (light).
   Components below read tokens only. */
:root, [data-theme="dark"]{
  --df-bg-page:#070C16;
  --df-bg-header:rgba(7,12,22,.78);
  --df-surface-card:#0E1626;
  --df-surface-sunken:#0B1220;
  --df-surface-raised:#131D31;
  --df-text-heading:#F2F6FB;
  --df-text-body:#D5DEEA;
  --df-text-muted:#9AA9BE;
  --df-text-link:var(--df-teal-300);
  --df-text-link-hover:#FFFFFF;
  --df-border-subtle:rgba(255,255,255,.08);
  --df-border-strong:rgba(255,255,255,.16);
  --df-action-ghost-hover:rgba(255,255,255,.06);
  --df-focus-ring:var(--df-teal-300);
  --tk-nav-text:#E6EDF6;
  --tk-hero-scrim:linear-gradient(180deg, rgba(7,12,22,.55) 0%, rgba(7,12,22,.80) 55%, rgba(7,12,22,1) 100%);
  --tk-glow:radial-gradient(60% 50% at 50% 0%, rgba(0,194,168,.14) 0%, rgba(0,194,168,0) 70%);
  --tk-badge-live-bg:rgba(0,194,168,.14); --tk-badge-live-fg:#8FF0E2;
  --tk-badge-warn-bg:rgba(255,176,32,.14); --tk-badge-warn-fg:#FFD27A;
  --tk-badge-alert-bg:rgba(255,77,46,.15); --tk-badge-alert-fg:#FFB4A3;
  --tk-badge-neutral-bg:rgba(143,167,205,.14); --tk-badge-neutral-fg:#C3D2EA;
  --tk-chart-bar:var(--df-teal-500);
  --tk-accent-text:var(--df-teal-300);
  --tk-ghs-red:#E5484D;
  --tk-ghs-bg:#FFFFFF;
  --tk-ghs-ink:#0B0F19;
  --tk-shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 12px 32px rgba(0,0,0,.28);
  color-scheme:dark;
}
[data-theme="light"]{
  --df-bg-page:var(--df-white);
  --df-bg-header:rgba(255,255,255,.82);
  --df-surface-card:var(--df-white);
  --df-surface-sunken:#F5F7FA;
  --df-surface-raised:#FFFFFF;
  --df-text-heading:#0B1B33;
  --df-text-body:#1C2433;
  --df-text-muted:#556071;
  --df-text-link:var(--df-navy-700);
  --df-text-link-hover:var(--df-ink);
  --df-border-subtle:#E7EBF1;
  --df-border-strong:#D3DAE4;
  --df-action-ghost-hover:#EEF2F7;
  --df-focus-ring:var(--df-navy-500);
  --tk-nav-text:#1C2433;
  --tk-hero-scrim:linear-gradient(180deg, rgba(7,12,22,.50) 0%, rgba(7,12,22,.72) 60%, rgba(7,12,22,.88) 100%);
  --tk-glow:radial-gradient(60% 50% at 50% 0%, rgba(0,158,137,.10) 0%, rgba(0,158,137,0) 70%);
  --tk-badge-live-bg:var(--df-teal-100); --tk-badge-live-fg:#05584D;
  --tk-badge-warn-bg:var(--df-amber-100); --tk-badge-warn-fg:#6B4600;
  --tk-badge-alert-bg:var(--df-orange-100); --tk-badge-alert-fg:#8F1F0B;
  --tk-badge-neutral-bg:var(--df-navy-100); --tk-badge-neutral-fg:var(--df-navy-700);
  --tk-chart-bar:var(--df-teal-600);
  --tk-accent-text:#05665A;
  --tk-shadow:0 1px 2px rgba(11,27,51,.04), 0 8px 24px rgba(11,27,51,.06);
  color-scheme:light;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{min-height:100vh;overflow-x:hidden;background:var(--df-bg-page);color:var(--df-text-body);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
h1,h2,h3,h4{color:var(--df-text-heading);letter-spacing:-0.02em}
.icon{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.skip{position:absolute;left:-999px;top:var(--df-space-2);background:var(--df-action-primary);color:var(--df-on-action-primary);padding:var(--df-space-2) var(--df-space-4);border-radius:var(--df-radius-pill);z-index:100}
.skip:focus{left:var(--df-space-2)}
:focus-visible{outline:var(--df-focus-width) solid var(--df-focus-ring);outline-offset:var(--df-focus-offset)}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--df-gutter-mobile)}
@media (min-width:768px){.wrap{padding:0 var(--df-gutter-wide)}}
.muted{color:var(--df-text-muted)}
.price,.money{white-space:nowrap;font-variant-numeric:tabular-nums}
.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.eyebrow{display:inline-flex;align-items:center;gap:var(--df-space-2);font:var(--df-type-label);color:var(--tk-accent-text)}
.lede{font:var(--df-type-body-lg);color:var(--df-text-muted);max-width:60ch}

/* header */
.topbar{position:sticky;top:0;z-index:40;background:var(--df-bg-header);backdrop-filter:var(--df-blur-sheet);-webkit-backdrop-filter:var(--df-blur-sheet);border-bottom:1px solid var(--df-border-subtle)}
.topbar .wrap{display:flex;align-items:center;gap:var(--df-space-4);min-height:68px}
.brand{display:flex;align-items:center;gap:var(--df-space-2);color:var(--df-text-heading);text-decoration:none;font-weight:var(--df-weight-extrabold);letter-spacing:var(--df-tracking-wordmark);font-size:var(--df-size-headline)}
.brand:hover{color:var(--df-text-heading)}
.brand img{height:32px;width:auto}
.nav{display:flex;gap:var(--df-space-1);margin-left:auto;align-items:center}
.nav a,.nav button.link{color:var(--tk-nav-text);text-decoration:none;padding:var(--df-space-2) var(--df-space-3);border-radius:var(--df-radius-pill);min-height:var(--df-hit-min);display:inline-flex;align-items:center;gap:var(--df-space-2);font:var(--df-type-label);font-size:var(--df-size-body);background:none;border:0;cursor:pointer}
.nav a:hover,.nav button.link:hover,.nav a[aria-current="page"]{background:var(--df-action-ghost-hover);color:var(--df-text-heading)}
.nav .nav-cta{background:var(--df-action-primary);color:var(--df-on-action-primary);padding:var(--df-space-2) var(--df-space-5)}
.nav .nav-cta:hover{background:var(--df-teal-300);color:var(--df-on-action-primary)}
.nav .count{background:var(--df-action-primary);color:var(--df-on-action-primary);border-radius:var(--df-radius-pill);padding:0 var(--df-space-2);font:var(--df-type-caption);min-width:22px;text-align:center}
.iconbtn{display:inline-flex;align-items:center;justify-content:center;min-width:var(--df-hit-min);min-height:var(--df-hit-min);border-radius:var(--df-radius-pill);background:none;border:1px solid var(--df-border-subtle);color:var(--df-text-body);cursor:pointer}
.iconbtn:hover{background:var(--df-action-ghost-hover);color:var(--df-text-heading)}
.menu-toggle{display:none}
@media (max-width:900px){
  .menu-toggle{display:inline-flex;margin-left:auto}
  .nav{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--df-bg-page);padding:var(--df-space-3) var(--df-gutter-mobile) var(--df-space-5);border-bottom:1px solid var(--df-border-subtle)}
  .nav.open{display:flex}
}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--df-space-2);min-height:var(--df-hit-min);padding:var(--df-space-2) var(--df-space-6);border-radius:var(--df-radius-pill);border:1px solid transparent;font:var(--df-type-label);font-size:var(--df-size-body);cursor:pointer;text-decoration:none;transition:var(--df-transition-control);white-space:nowrap}
.btn:active{transform:scale(var(--df-press-scale))}
.btn-primary{background:var(--df-action-primary);color:var(--df-on-action-primary)}
.btn-primary:hover{background:var(--df-teal-300);color:var(--df-on-action-primary)}
.btn-ghost{background:transparent;color:var(--df-text-heading);border-color:var(--df-border-strong)}
.btn-ghost:hover{background:var(--df-action-ghost-hover);color:var(--df-text-heading)}
.btn-onhero{background:rgba(255,255,255,.08);color:var(--df-white);border-color:rgba(255,255,255,.36)}
.btn-onhero:hover{background:rgba(255,255,255,.16);color:var(--df-white)}
.btn-danger{background:transparent;color:var(--tk-badge-alert-fg);border-color:var(--tk-badge-alert-fg)}
.btn-danger:hover{background:var(--tk-badge-alert-bg)}
.btn-sm{min-height:36px;padding:var(--df-space-1) var(--df-space-4);font-size:var(--df-size-label)}
.btn-lg{min-height:52px;padding:var(--df-space-3) var(--df-space-8);font-size:var(--df-size-body-lg)}
.btn[disabled],.btn[aria-busy="true"]{opacity:.6;cursor:not-allowed}
.link-btn{background:none;border:0;color:var(--df-text-link);font:inherit;cursor:pointer;padding:0;text-decoration:underline}

/* hero */
.hero{position:relative;color:var(--df-white);background-image:var(--tk-hero-scrim),url('/assets/stock-2.jpg');background-size:cover;background-position:center;padding:var(--df-space-20) 0 var(--df-space-16);text-align:center;overflow:hidden}
.hero .wrap{position:relative;display:flex;flex-direction:column;align-items:center}
.hero .pill{display:inline-flex;align-items:center;gap:var(--df-space-2);padding:var(--df-space-1) var(--df-space-3);border:1px solid rgba(255,255,255,.28);border-radius:var(--df-radius-pill);font:var(--df-type-label);color:#E6EDF6;background:rgba(255,255,255,.06)}
.hero h1{color:var(--df-white);font-weight:var(--df-weight-extrabold);font-size:clamp(3rem,7vw,5rem);line-height:var(--df-leading-tight);letter-spacing:-0.035em;max-width:15ch;margin:var(--df-space-5) 0 var(--df-space-5)}
.hero p.lead{font:var(--df-type-body-lg);font-size:clamp(1.05rem,1.6vw,1.25rem);color:#DCE5F0;max-width:58ch}
.hero .ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--df-space-3);margin-top:var(--df-space-8)}
.hero .trust-row{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--df-space-2) var(--df-space-6);margin-top:var(--df-space-10);color:#C9D5E4;font:var(--df-type-label)}
.hero .trust-row span{display:inline-flex;align-items:center;gap:var(--df-space-2)}

/* sections */
.section{padding:var(--df-space-20) 0;position:relative}
.section.alt{background:var(--df-surface-sunken)}
.section.glow{background-image:var(--tk-glow)}
.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--df-space-4);margin-bottom:var(--df-space-10)}
.section-head.center{flex-direction:column;align-items:center;text-align:center}
.section-head h2{font-size:clamp(1.9rem,3.6vw,2.75rem);line-height:var(--df-leading-snug);margin-top:var(--df-space-2);max-width:22ch}
.grid{display:grid;gap:var(--df-space-5)}
.grid.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.grid.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.grid.three{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--df-surface-card);border:1px solid var(--df-border-subtle);border-radius:var(--df-radius-xl);padding:var(--df-space-6);box-shadow:var(--tk-shadow)}
.card.flat{box-shadow:none}
.card h3{font-size:var(--df-size-headline)}
.feature .ico,.tile .ico{width:44px;height:44px;border-radius:var(--df-radius-md);display:grid;place-items:center;background:var(--tk-badge-live-bg);color:var(--tk-badge-live-fg);margin-bottom:var(--df-space-4)}
.feature h3{margin-bottom:var(--df-space-2)}
.tile{display:flex;flex-direction:column;gap:var(--df-space-2);text-decoration:none;color:var(--df-text-body);transition:var(--df-transition-control);height:100%}
.tile:hover{border-color:var(--df-teal-500);color:var(--df-text-body);transform:translateY(-2px)}
.tile .count-line{margin-top:auto;font:var(--df-type-label);color:var(--tk-accent-text)}
.product-card{display:grid;grid-template-rows:auto 1fr auto;gap:var(--df-space-3);height:100%;transition:var(--df-transition-control)}
.product-card:hover{border-color:var(--df-border-strong)}
.product-card h3 a{color:inherit;text-decoration:none}
.product-card h3 a:hover{color:var(--tk-accent-text)}
.product-card .meta{display:flex;flex-wrap:wrap;gap:var(--df-space-2)}
.product-card .foot{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--df-space-3);padding-top:var(--df-space-4);border-top:1px solid var(--df-border-subtle)}
.product-card .from{display:block;font:var(--df-type-caption);color:var(--df-text-muted)}
.product-card .price{font-size:var(--df-size-headline);font-weight:var(--df-weight-bold);color:var(--df-text-heading);display:block}
.split{display:grid;gap:var(--df-space-10);grid-template-columns:1fr}
@media (min-width:960px){.split{grid-template-columns:1.05fr .95fr;align-items:center}}
.photo{border-radius:var(--df-radius-sheet);overflow:hidden;aspect-ratio:4/3;background:var(--df-surface-sunken) center/cover no-repeat;border:1px solid var(--df-border-subtle)}
.steps{counter-reset:s;display:grid;gap:var(--df-space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding:0;margin:0}
.steps li{list-style:none;counter-increment:s}
.steps li::before{content:counter(s,decimal-leading-zero);display:block;font:var(--df-type-mono);color:var(--tk-accent-text);margin-bottom:var(--df-space-3)}
.checks{list-style:none;padding:0;margin:var(--df-space-5) 0 0;display:grid;gap:var(--df-space-3)}
.checks li{display:flex;gap:var(--df-space-3);align-items:flex-start}
.checks .icon{color:var(--tk-accent-text);margin-top:2px}
.cta-band{border-radius:var(--df-radius-sheet);padding:var(--df-space-12) var(--df-space-6);text-align:center;background:var(--df-surface-card);border:1px solid var(--df-border-subtle);background-image:var(--tk-glow)}
.cta-band h2{font-size:clamp(1.8rem,3.4vw,2.6rem);max-width:20ch;margin:0 auto var(--df-space-3)}
.cta-band .ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--df-space-3);margin-top:var(--df-space-6)}

/* badges */
.badge{display:inline-flex;align-items:center;gap:var(--df-space-1);padding:2px var(--df-space-3);border-radius:var(--df-radius-pill);font:var(--df-type-caption);font-weight:var(--df-weight-semibold);white-space:nowrap;background:var(--tk-badge-neutral-bg);color:var(--tk-badge-neutral-fg);text-decoration:none}
.badge.live{background:var(--tk-badge-live-bg);color:var(--tk-badge-live-fg)}
.badge.warn{background:var(--tk-badge-warn-bg);color:var(--tk-badge-warn-fg)}
.badge.alert{background:var(--tk-badge-alert-bg);color:var(--tk-badge-alert-fg)}
.badge .icon{width:14px;height:14px}

/* GHS pictograms */
.ghs{display:flex;flex-wrap:wrap;gap:var(--df-space-3)}
.ghs figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--df-space-1);width:76px;text-align:center}
.ghs svg{width:56px;height:56px}
.ghs .frame{fill:var(--tk-ghs-bg);stroke:var(--tk-ghs-red);stroke-width:5}
.ghs .sym{fill:none;stroke:var(--tk-ghs-ink);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.ghs .code{font:var(--df-type-caption);font-weight:var(--df-weight-bold);fill:var(--tk-ghs-ink)}
.ghs figcaption{font:var(--df-type-caption);color:var(--df-text-muted)}
.facts-table{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--df-space-3);margin:0}
.facts-table div{background:var(--df-surface-sunken);border-radius:var(--df-radius-md);padding:var(--df-space-3)}
.facts-table dt{font:var(--df-type-caption);color:var(--df-text-muted)}
.facts-table dd{margin:var(--df-space-1) 0 0;font-weight:var(--df-weight-semibold);color:var(--df-text-heading)}

/* forms */
.field{display:flex;flex-direction:column;gap:var(--df-space-1);margin-bottom:var(--df-space-4)}
.field label,.label{font:var(--df-type-label);color:var(--df-text-heading)}
.field .hint{font:var(--df-type-caption);color:var(--df-text-muted)}
.field .err{font:var(--df-type-caption);color:var(--tk-badge-alert-fg);min-height:0}
input,select,textarea{font:var(--df-type-body);color:var(--df-text-body);background:var(--df-surface-sunken);border:1px solid var(--df-border-strong);border-radius:var(--df-radius-md);padding:var(--df-space-2) var(--df-space-3);min-height:var(--df-hit-min);width:100%}
textarea{min-height:110px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--df-focus-ring);outline:none;box-shadow:0 0 0 3px var(--tk-badge-live-bg)}
input[aria-invalid="true"],select[aria-invalid="true"],textarea[aria-invalid="true"]{border-color:var(--tk-badge-alert-fg)}
input[type="checkbox"],input[type="radio"]{width:auto;min-height:auto;accent-color:var(--df-teal-500)}
.row{display:grid;gap:var(--df-space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.choice{display:flex;gap:var(--df-space-3);flex-wrap:wrap}
.choice label{display:flex;align-items:center;gap:var(--df-space-2);border:1px solid var(--df-border-strong);border-radius:var(--df-radius-pill);padding:var(--df-space-2) var(--df-space-4);min-height:var(--df-hit-min);cursor:pointer;font:var(--df-type-label);color:var(--df-text-body)}
.choice label:has(input:checked){border-color:var(--df-teal-500);background:var(--tk-badge-live-bg);color:var(--tk-badge-live-fg)}
.error-summary{border:1px solid var(--tk-badge-alert-fg);background:var(--tk-badge-alert-bg);color:var(--tk-badge-alert-fg);border-radius:var(--df-radius-md);padding:var(--df-space-3) var(--df-space-4);margin-bottom:var(--df-space-4)}
.error-summary ul{margin:var(--df-space-1) 0 0;padding-left:var(--df-space-5)}
.notice{border:1px solid var(--df-border-subtle);background:var(--df-surface-sunken);border-radius:var(--df-radius-md);padding:var(--df-space-3) var(--df-space-4);color:var(--df-text-body)}
.notice.warn{border-color:var(--tk-badge-warn-fg);background:var(--tk-badge-warn-bg);color:var(--tk-badge-warn-fg)}
.suggest{list-style:none;margin:var(--df-space-1) 0 0;padding:0;border:1px solid var(--df-border-strong);border-radius:var(--df-radius-md);overflow:hidden}
.suggest button{display:block;width:100%;text-align:left;padding:var(--df-space-3);background:var(--df-surface-card);color:var(--df-text-body);border:0;border-bottom:1px solid var(--df-border-subtle);cursor:pointer;min-height:var(--df-hit-min);font:var(--df-type-body)}
.suggest button:hover{background:var(--df-action-ghost-hover)}

/* tables */
.table-wrap{overflow-x:auto;border:1px solid var(--df-border-subtle);border-radius:var(--df-radius-lg);background:var(--df-surface-card);max-height:70vh}
table.data{width:100%;border-collapse:collapse;font:var(--df-type-body)}
table.data th{position:sticky;top:0;background:var(--df-surface-sunken);color:var(--df-text-muted);text-align:left;font:var(--df-type-label);padding:var(--df-space-3);border-bottom:1px solid var(--df-border-subtle);white-space:nowrap;z-index:1}
table.data th button{background:none;border:0;color:inherit;font:inherit;cursor:pointer;display:inline-flex;gap:var(--df-space-1);align-items:center;min-height:32px}
table.data td{padding:var(--df-space-3);border-bottom:1px solid var(--df-border-subtle);vertical-align:top}
table.data tr:hover td{background:var(--df-action-ghost-hover)}
table.data td.n,table.data th.n{text-align:right}
.table-tools{display:flex;flex-wrap:wrap;gap:var(--df-space-3);align-items:center;justify-content:space-between;margin-bottom:var(--df-space-3)}
.table-tools input{max-width:320px}
.pager{display:flex;gap:var(--df-space-2);align-items:center;justify-content:flex-end;margin-top:var(--df-space-3)}

/* states */
.skeleton{display:grid;gap:var(--df-space-3)}
.skeleton div{height:56px;border-radius:var(--df-radius-md);background:linear-gradient(90deg,var(--df-surface-sunken),var(--df-border-subtle),var(--df-surface-sunken));background-size:200% 100%;animation:sk 1.2s linear infinite}
@keyframes sk{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.skeleton div{animation:none}.tile:hover{transform:none}}
.empty,.error-state{text-align:center;padding:var(--df-space-10) var(--df-space-4);border:1px dashed var(--df-border-strong);border-radius:var(--df-radius-lg)}
.empty p,.error-state p{margin-bottom:var(--df-space-4)}

/* toast + dialog */
.toasts{position:fixed;bottom:var(--df-space-4);left:50%;transform:translateX(-50%);display:grid;gap:var(--df-space-2);z-index:200;width:min(440px,calc(100% - 32px))}
.toast{background:var(--df-surface-raised);color:var(--df-text-body);border:1px solid var(--df-border-strong);border-left:4px solid var(--df-teal-500);border-radius:var(--df-radius-md);padding:var(--df-space-3) var(--df-space-4);box-shadow:var(--df-shadow-3)}
.toast.error{border-left-color:var(--df-orange-500)}
dialog{border:1px solid var(--df-border-strong);border-radius:var(--df-radius-xl);background:var(--df-surface-card);color:var(--df-text-body);padding:var(--df-space-6);width:min(600px,calc(100% - 24px));max-height:90vh}
dialog::backdrop{background:var(--df-scrim);backdrop-filter:blur(4px)}

/* footer */
.footer{border-top:1px solid var(--df-border-subtle);padding:var(--df-space-16) 0 var(--df-space-8);margin-top:var(--df-space-16);color:var(--df-text-muted)}
.footer h4{font-size:var(--df-size-body);margin-bottom:var(--df-space-3)}
.footer a{color:var(--df-text-muted);text-decoration:none}
.footer a:hover{color:var(--df-text-heading)}
.footer .cols{display:grid;gap:var(--df-space-8);grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:var(--df-space-2)}
.footer .trust{display:flex;flex-wrap:wrap;gap:var(--df-space-3) var(--df-space-6);margin-top:var(--df-space-10);padding-top:var(--df-space-6);border-top:1px solid var(--df-border-subtle)}
.footer .trust span{display:inline-flex;align-items:center;gap:var(--df-space-2);font:var(--df-type-caption)}
.footer small{display:block;margin-top:var(--df-space-6);font:var(--df-type-caption)}

/* page */
main{min-height:60vh}
.page{padding:var(--df-space-12) 0}
.page-head{margin-bottom:var(--df-space-8)}
.page-head h1{font-size:clamp(2rem,4.4vw,3rem);line-height:var(--df-leading-snug);margin-top:var(--df-space-2)}
.chips{display:flex;gap:var(--df-space-2);overflow-x:auto;padding-bottom:var(--df-space-2);margin-bottom:var(--df-space-5)}
.chip{white-space:nowrap;border:1px solid var(--df-border-strong);border-radius:var(--df-radius-pill);padding:var(--df-space-2) var(--df-space-4);min-height:var(--df-hit-min);display:inline-flex;align-items:center;color:var(--df-text-body);text-decoration:none;background:transparent;font:var(--df-type-label)}
.chip[aria-current="true"]{background:var(--df-text-heading);color:var(--df-bg-page);border-color:var(--df-text-heading)}
.chip:hover{border-color:var(--df-teal-500)}
.search-bar{display:flex;gap:var(--df-space-2);max-width:560px}
.search-bar input{border-radius:var(--df-radius-pill);padding-left:var(--df-space-5)}
.packs{display:grid;gap:var(--df-space-2)}
.pack{display:grid;grid-template-columns:auto 1fr auto;gap:var(--df-space-3);align-items:center;border:1px solid var(--df-border-strong);border-radius:var(--df-radius-lg);padding:var(--df-space-3) var(--df-space-4);cursor:pointer;min-height:var(--df-hit-min)}
.pack:has(input:checked){border-color:var(--df-teal-500);background:var(--tk-badge-live-bg)}
.pack:has(input:checked) .pk-label,.pack:has(input:checked) .price,.pack:has(input:checked) .muted{color:var(--tk-badge-live-fg)}
.summary-line{display:flex;justify-content:space-between;gap:var(--df-space-4);padding:var(--df-space-2) 0}
.summary-line.total{border-top:1px solid var(--df-border-strong);margin-top:var(--df-space-2);padding-top:var(--df-space-3);font-weight:var(--df-weight-bold);color:var(--df-text-heading);font-size:var(--df-size-body-lg)}
.qty{display:inline-flex;align-items:center;border:1px solid var(--df-border-strong);border-radius:var(--df-radius-pill)}
.qty button{min-width:var(--df-hit-min);min-height:var(--df-hit-min);background:none;border:0;color:var(--df-text-body);cursor:pointer;font-size:var(--df-size-headline)}
.qty input{width:64px;text-align:center;border:0;background:transparent;box-shadow:none}
.list{display:grid;gap:var(--df-space-3)}
.line-item{display:grid;grid-template-columns:1fr auto;gap:var(--df-space-3);align-items:start}
.trail{display:grid;gap:var(--df-space-3);margin:var(--df-space-4) 0}
.trail .msg{border:1px solid var(--df-border-subtle);border-radius:var(--df-radius-md);padding:var(--df-space-3);background:var(--df-surface-sunken)}
.trail .msg.internal{border-style:dashed}
.auth-card{max-width:460px;margin:0 auto}
.tabs{display:flex;gap:var(--df-space-1);border-bottom:1px solid var(--df-border-subtle);margin-bottom:var(--df-space-5);overflow-x:auto}
.tabs button,.tabs a{background:none;border:0;border-bottom:2px solid transparent;color:var(--df-text-muted);padding:var(--df-space-3) var(--df-space-4);min-height:var(--df-hit-min);cursor:pointer;font:var(--df-type-label);font-size:var(--df-size-body);white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;gap:var(--df-space-2)}
.tabs [aria-selected="true"],.tabs [aria-current="page"]{color:var(--df-text-heading);border-bottom-color:var(--df-teal-500)}
.seg{display:inline-flex;padding:4px;border-radius:var(--df-radius-pill);background:var(--df-surface-sunken);border:1px solid var(--df-border-subtle);margin-bottom:var(--df-space-5);width:100%}
.seg button{flex:1;border:0;background:none;color:var(--df-text-muted);border-radius:var(--df-radius-pill);min-height:40px;font:var(--df-type-label);font-size:var(--df-size-body);cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--df-surface-raised);color:var(--df-text-heading);box-shadow:var(--df-shadow-1)}
.actions{display:flex;gap:var(--df-space-2);flex-wrap:wrap;align-items:center}
.stack{display:grid;gap:var(--df-space-4)}
