/* TikTok gift calculator and gift pages: /gifts/ and /gifts/<gift>/. Built on landing-system.css (cream, ink, TikTok Sans) and tool-kit.css.
   Mobile first: one column under 900px, 44px controls, 12px text floor. */
main.gx{background:var(--ls-cream);color:var(--ls-text);overflow-x:clip}
main.gx a{text-underline-offset:3px}
main.gx .breadcrumbs{max-width:var(--ls-wrap);margin:0 auto;padding:18px var(--ls-gutter) 0}
main.gx .ls-section{padding:72px 0}
main.gx h1{font-size:clamp(34px,4.4vw,54px);line-height:1.04;letter-spacing:-.03em;margin:14px 0 18px;color:var(--ls-ink)}
main.gx h2{font-size:clamp(26px,3vw,40px);line-height:1.1;letter-spacing:-.02em;margin:8px 0 14px;color:var(--ls-ink)}
main.gx .ls-measure{max-width:68ch;font-size:18px;line-height:1.55}

/* hero */
main.gx .gx-hero{padding:34px 0 64px}
main.gx .gx-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);grid-template-areas:"top panel" "bottom panel";grid-template-rows:auto 1fr;column-gap:48px;row-gap:0;align-items:start}
main.gx .gx-copy-top{grid-area:top}main.gx .gx-copy-bottom{grid-area:bottom}main.gx .gx-panel{grid-area:panel}
main.gx .gx-copy .ls-lead{font-size:clamp(18px,1.7vw,21px);line-height:1.55;max-width:56ch}
main.gx .gx-facts{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 14px;padding:0;list-style:none}
main.gx .gx-facts li{background:var(--ls-paper);border:1.5px solid var(--ls-line);border-radius:999px;padding:9px 16px;font-size:15px;color:var(--ls-muted)}
main.gx .gx-facts b{color:var(--ls-ink);font-size:17px}
main.gx .gx-answer-line{font-size:clamp(20px,2vw,25px);line-height:1.45;color:var(--ls-ink);margin:0 0 22px;max-width:36em}
main.gx .gx-answer-line strong{color:var(--ls-blue-deep)}
main.gx .gx-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:0;list-style:none}
main.gx .gx-stat{background:var(--ls-paper);border:1.5px solid var(--ls-line);border-radius:var(--ls-radius-sm);padding:14px 16px;min-width:0}
main.gx .gx-stat span{display:block;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ls-muted)}
main.gx .gx-stat strong{display:block;font-size:clamp(22px,2.3vw,30px);line-height:1.15;letter-spacing:-.02em;color:var(--ls-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:4px}
main.gx .gx-stat em{display:block;font-style:normal;font-size:13px;color:var(--ls-muted);margin-top:4px;line-height:1.35}

/* calculator panel */
main.gx .gx-panel{background:var(--ls-paper);border:2px solid var(--ls-ink);border-radius:var(--ls-radius);box-shadow:0 8px 0 var(--ls-lavender);padding:26px;min-width:0}
main.gx .gx-ssr-q{margin:0;font-size:14px;color:var(--ls-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
main.gx .gx-ssr-a{margin:6px 0 0;font-size:20px;line-height:1.4}
main.gx .gx-calc-kicker{margin:0 0 12px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ls-lavender-deep)}
main.gx .gx-calc-body .tk-segmented{border:0;padding:0;margin:0 0 16px;min-width:0}
main.gx .gx-calc-body .tk-segmented-row{flex-wrap:wrap}
main.gx .gx-inputs{display:grid;gap:14px}
main.gx .gx-find{width:100%;min-height:48px}
main.gx .gx-inputs .tk-field,main.gx .gx-inputs .tk-segmented{margin:0}
main.gx .gx-inputs [hidden]{display:none!important}
main.gx .gx-chips{display:flex;flex-wrap:wrap;gap:8px}
main.gx .gx-chips .tk-btn{min-height:44px;padding:0 14px}
main.gx .gx-chips .tk-btn[aria-pressed=true]{background:var(--ls-ink);color:#fff;border-color:var(--ls-ink)}
main.gx .gx-adv{margin:16px 0 0;border:1.5px solid var(--ls-line);border-radius:14px;padding:0 14px;background:var(--ls-cream)}
main.gx .gx-adv summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:700;font-size:15px;color:var(--ls-ink)}
main.gx .gx-adv-body{display:grid;gap:12px;padding:4px 0 16px}
main.gx .gx-out{margin-top:20px;padding-top:20px;border-top:1.5px solid var(--ls-line)}
main.gx .gx-out-big{margin:0;font-size:clamp(38px,4.6vw,58px);line-height:1;letter-spacing:-.035em;font-weight:800;color:var(--ls-blue-deep);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
main.gx .gx-out-line{margin:10px 0 16px;font-size:17px;line-height:1.5;color:var(--ls-ink)}
main.gx .gx-out-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
main.gx .gx-out-stat{background:var(--ls-lavender-tint);border-radius:14px;padding:12px 14px;min-width:0}
main.gx .gx-out-stat dt{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ls-lavender-deep)}
main.gx .gx-out-stat dd{margin:3px 0 0;font-size:clamp(22px,2.2vw,28px);font-weight:800;letter-spacing:-.02em;color:var(--ls-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
main.gx .gx-out-stat .gx-out-sub{font-size:13px;font-weight:400;letter-spacing:0;color:var(--ls-muted)}
main.gx .gx-out-eq{margin:12px 0 0;font-size:15px;color:var(--ls-muted);line-height:1.5}
main.gx .gx-out-link{margin:8px 0 0;font-size:15px}
main.gx .gx-calc-body .tk-actions{margin-top:18px}

/* quick answers */
main.gx .gx-grid5{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:22px 0 10px;padding:0;list-style:none}
main.gx .gx-answer{padding:0}
main.gx .gx-answer a{display:block;padding:22px;text-decoration:none;color:inherit;height:100%;border-radius:inherit}
main.gx .gx-answer a:hover{background:var(--ls-yellow-tint)}
main.gx .gx-gname{display:block;font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ls-lavender-deep)}
main.gx .gx-answer b{display:block;font-size:clamp(26px,2.5vw,34px);letter-spacing:-.025em;color:var(--ls-ink);margin:6px 0 8px;font-variant-numeric:tabular-nums}
main.gx .gx-gprice,main.gx .gx-gcr{display:block;font-size:15px;line-height:1.45;color:var(--ls-text)}
main.gx .gx-gcr{color:var(--ls-muted);margin-top:2px}

/* list and charts */
main.gx .gx-table-mount{margin-top:18px}
main.gx .gx-table-mount .tk-actions{margin-bottom:14px}
main.gx .gx-pick{color:var(--ls-ink);font-weight:700}
main.gx .gx-pick:hover{color:var(--ls-blue-deep)}
main.gx .gx-ssr .num,main.gx .ls-table .num{text-align:right;font-variant-numeric:tabular-nums}
main.gx .gx-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:18px}
main.gx .gx-chart-grid:empty{display:none}

/* dark band */
main.gx .gx-band{background:var(--ls-ink);color:#f4efe9;padding:84px 0}
main.gx .gx-band h2{color:#fff;max-width:20ch}
main.gx .gx-band .ls-eyebrow{background:transparent;color:var(--ls-yellow);border-color:rgba(248,223,132,.5)}
main.gx .gx-band .ls-lead{color:#e6e0d6;max-width:56ch}
main.gx .gx-band .ls-small{color:#bdb6aa}
main.gx .gx-band a.gx-btn-light{background:#fffdf9;border-color:#fffdf9;color:var(--ls-ink)}
main.gx .gx-band a.gx-btn-light:hover{background:var(--ls-yellow);border-color:var(--ls-yellow)}
main.gx .gx-band a.gx-btn-ghost{background:transparent;border-color:rgba(255,255,255,.6);color:#fff}
main.gx .gx-band a.gx-btn-ghost:hover{background:rgba(255,255,255,.12)}
main.gx .gx-cta-card{background:#2a2825;border:1.5px solid #46423b;border-radius:var(--ls-radius);padding:28px;align-self:center}
main.gx .gx-cta-card blockquote{margin:10px 0 0;font-size:clamp(18px,1.8vw,22px);line-height:1.5;color:#fff}

/* gift page bits */
main.gx .gx-others-list{display:flex;flex-wrap:wrap;gap:8px 18px;margin:6px 0 18px;padding:0;list-style:none}
main.gx .gx-others-list a{font-weight:700;color:var(--ls-blue-deep)}
main.gx .gx-faq h2{margin-bottom:18px}
main.gx .gx-note h3{margin:0 0 8px}

@media (max-width:900px){
  main.gx .ls-section{padding:52px 0}
  main.gx .gx-hero{padding:22px 0 44px}
  main.gx .gx-hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"top" "panel" "bottom";grid-template-rows:auto;row-gap:24px}
  main.gx .gx-facts{gap:8px}main.gx .gx-facts li{padding:7px 12px;font-size:14px}main.gx .gx-facts b{font-size:15px}
  main.gx .gx-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  main.gx .gx-chart-grid{grid-template-columns:minmax(0,1fr)}
  main.gx .gx-panel{padding:20px;box-shadow:0 6px 0 var(--ls-lavender)}
  main.gx .gx-band{padding:56px 0}
}
@media (max-width:420px){main.gx .gx-out-stats{grid-template-columns:minmax(0,1fr)}}

/* link cards in lists (similar gifts, keep going) */
main.gx ul.ls-grid{list-style:none;margin:20px 0 14px;padding:0;gap:14px}
main.gx ul.ls-grid>li{min-width:0;margin:0}
main.gx a.ls-card{display:block;height:100%;padding:18px 20px;text-decoration:none;color:var(--ls-ink)}
main.gx a.ls-card:hover{background:var(--ls-yellow-tint);border-color:var(--ls-ink)}
main.gx a.ls-card b{display:block;font-size:18px;line-height:1.3;margin-bottom:4px}
main.gx a.ls-card .ls-small{display:block;color:var(--ls-muted);line-height:1.45}
main.gx .gx-answer b{line-height:1.1;font-size:clamp(24px,2.1vw,30px)}
main.gx .gx-answer b span{font-size:.55em;font-weight:700;color:var(--ls-muted);letter-spacing:0}
main.gx .gx-band .ls-small{margin-top:14px}
