/* TikTok for advertisers (ads teams). Arranges the shared landing system; the concept is the ad storyboard
   (three phone frames, one per angle), drawn as the hero illustration, not as page chrome. */
.bespoke-for-tiktok-ads-teams .ad-hero-copy{display:flex;flex-direction:column;gap:18px}
.bespoke-for-tiktok-ads-teams .ad-hero-copy .ls-eyebrow{align-self:flex-start;margin-bottom:4px}
.bespoke-for-tiktok-ads-teams .ad-meta{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:10px}
.bespoke-for-tiktok-ads-teams .ad-meta li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:15px;line-height:1.4;color:var(--ls-text)}

/* hero illustration: three phone storyboards */
.bespoke-for-tiktok-ads-teams .ad-hero-illo{margin:0}
.bespoke-for-tiktok-ads-teams .ad-o *{stroke:var(--ls-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}
.bespoke-for-tiktok-ads-teams .ad-o .f-paper{fill:var(--ls-paper)}
.bespoke-for-tiktok-ads-teams .ad-o .f-blue{fill:var(--ls-blue)}
.bespoke-for-tiktok-ads-teams .ad-o .f-peach{fill:var(--ls-peach)}
.bespoke-for-tiktok-ads-teams .ad-o .f-mint{fill:var(--ls-mint)}
.bespoke-for-tiktok-ads-teams .ad-o .f-yellow{fill:var(--ls-yellow)}
.bespoke-for-tiktok-ads-teams .ad-o .f-ink{fill:var(--ls-ink)}
.bespoke-for-tiktok-ads-teams .ad-t text{font-family:var(--ls-font);font-size:20px;font-weight:800;fill:var(--ls-ink)}

/* section numbers and prompts */
.bespoke-for-tiktok-ads-teams .ad-no{display:inline-block;margin-bottom:10px;font:800 14px/1 var(--ls-mono);letter-spacing:.08em;color:var(--ls-muted)}
.bespoke-for-tiktok-ads-teams .ls-prompt p{margin:0 0 14px}
.bespoke-for-tiktok-ads-teams .ad-prompt{margin-top:28px}

/* 01: angle cards, each with its own bars */
.bespoke-for-tiktok-ads-teams .ad-angles{margin:26px 0 6px}
.bespoke-for-tiktok-ads-teams .ad-angle{display:flex;flex-direction:column;gap:16px}
.bespoke-for-tiktok-ads-teams .ad-angle .ls-tag{align-self:flex-start}
.bespoke-for-tiktok-ads-teams .ad-angle .ls-small{margin:auto 0 0}
.bespoke-for-tiktok-ads-teams .ad-bars{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.bespoke-for-tiktok-ads-teams .ad-bar{display:grid;grid-template-columns:minmax(0,10.5em) minmax(0,1fr) auto;align-items:center;gap:12px;font-size:14px}
.bespoke-for-tiktok-ads-teams .ad-bar-label{color:var(--ls-text);line-height:1.3}
.bespoke-for-tiktok-ads-teams .ad-bar-track{height:18px;border-radius:6px;background:var(--ls-blue-tint)}
.bespoke-for-tiktok-ads-teams .ad-bar-fill{display:block;height:100%;border-radius:6px;background:var(--ls-blue-deep)}
.bespoke-for-tiktok-ads-teams .ad-bar--gap .ad-bar-fill{background:var(--ls-peach-deep)}
.bespoke-for-tiktok-ads-teams .ad-bar-val{font-weight:800;text-align:right;font-variant-numeric:tabular-nums;line-height:1.2}
.bespoke-for-tiktok-ads-teams .ad-bar-val small{display:block;font-weight:500;font-size:12px;color:var(--ls-muted)}
.bespoke-for-tiktok-ads-teams .ad-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 0;font-size:13px;color:var(--ls-muted)}
.bespoke-for-tiktok-ads-teams .ad-key{display:inline-block;width:14px;height:14px;border-radius:4px;margin-left:8px}
.bespoke-for-tiktok-ads-teams .ad-key:first-child{margin-left:0}
.bespoke-for-tiktok-ads-teams .ad-key--deep{background:var(--ls-blue-deep)}
.bespoke-for-tiktok-ads-teams .ad-key--gap{background:var(--ls-peach-deep)}

/* 02: copy beside stacked gender bars, chart on the right */
.bespoke-for-tiktok-ads-teams .ad-who{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start}
.bespoke-for-tiktok-ads-teams .ad-chart{margin:0;background:var(--ls-paper);border:2px solid var(--ls-ink);border-radius:var(--ls-radius);padding:24px 24px 16px}
.bespoke-for-tiktok-ads-teams .ad-chart h3{margin:0 0 16px}
.bespoke-for-tiktok-ads-teams .ad-stack-list{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.bespoke-for-tiktok-ads-teams .ad-stack-list li{display:grid;gap:6px}
.bespoke-for-tiktok-ads-teams .ad-stack-label{font-weight:800;font-size:15px;color:var(--ls-ink)}
.bespoke-for-tiktok-ads-teams .ad-stack{display:flex;height:22px;border-radius:6px;overflow:hidden;border:1.5px solid var(--ls-ink)}
.bespoke-for-tiktok-ads-teams .ad-seg{display:block;height:100%}
.bespoke-for-tiktok-ads-teams .ad-seg--w,.bespoke-for-tiktok-ads-teams .ad-key--w{background:var(--ls-peach)}
.bespoke-for-tiktok-ads-teams .ad-seg--m,.bespoke-for-tiktok-ads-teams .ad-key--m{background:var(--ls-blue-deep)}
.bespoke-for-tiktok-ads-teams .ad-seg--u,.bespoke-for-tiktok-ads-teams .ad-key--u{background:var(--ls-line)}
.bespoke-for-tiktok-ads-teams .ad-stack-note{font-size:13px;color:var(--ls-muted);line-height:1.45}
.bespoke-for-tiktok-ads-teams .ad-stack-note b{color:var(--ls-ink)}

/* 03: Creative Center ads as phone-shaped tiles */
.bespoke-for-tiktok-ads-teams .ad-reels{margin:26px 0 4px}
.bespoke-for-tiktok-ads-teams .ad-reel{display:flex;flex-direction:column;gap:4px;background:var(--ls-paper);border:2px solid var(--ls-ink);border-radius:28px;padding:22px 20px 20px;min-height:250px;position:relative}
.bespoke-for-tiktok-ads-teams .ad-reel::before{content:'';position:absolute;top:10px;left:50%;width:36px;height:4px;margin-left:-18px;border-radius:4px;background:var(--ls-ink)}
.bespoke-for-tiktok-ads-teams .ad-reel .ls-tag{align-self:flex-start;margin:8px 0 12px}
.bespoke-for-tiktok-ads-teams .ad-reel b{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.1;color:var(--ls-ink);font-variant-numeric:tabular-nums}
.bespoke-for-tiktok-ads-teams .ad-reel > span:not(.ls-tag){font-size:14px;color:var(--ls-muted)}
.bespoke-for-tiktok-ads-teams .ad-reel dl{margin:auto 0 0;padding-top:14px;display:grid;gap:8px}
.bespoke-for-tiktok-ads-teams .ad-reel dl div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--ls-line);padding-top:8px;font-size:14px}
.bespoke-for-tiktok-ads-teams .ad-reel dt{color:var(--ls-muted)}
.bespoke-for-tiktok-ads-teams .ad-reel dd{margin:0;font-weight:800;text-align:right}
.bespoke-for-tiktok-ads-teams .ad-reel--empty{border-style:dashed;background:transparent}
.bespoke-for-tiktok-ads-teams .ad-reel--empty p{margin:auto 0 0;font-size:14px;color:var(--ls-muted)}
.bespoke-for-tiktok-ads-teams .ad-cc-notes{margin:22px 0 0}
.bespoke-for-tiktok-ads-teams .ad-cc-notes p{margin:0}

/* 04: keyword chips beside the table */
.bespoke-for-tiktok-ads-teams .ad-kw{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.bespoke-for-tiktok-ads-teams .ad-kw h3{margin-top:26px}
.bespoke-for-tiktok-ads-teams .ad-chips{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bespoke-for-tiktok-ads-teams .ad-chips li{font-size:15px;line-height:1.3;padding:7px 14px;border-radius:999px;background:var(--ls-yellow-tint);border:1.5px solid var(--ls-ink);color:var(--ls-ink)}
.bespoke-for-tiktok-ads-teams .ad-kw caption{caption-side:top;text-align:left;font-weight:800;padding:14px 16px 10px;color:var(--ls-ink)}
.bespoke-for-tiktok-ads-teams .ad-kw .ls-source + p{margin-top:16px}

/* 05: objection stats over the table */
.bespoke-for-tiktok-ads-teams .ad-obj-head{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:18px 0 26px;padding:24px 0;border-top:2px solid var(--ls-ink);border-bottom:2px solid var(--ls-ink)}

.bespoke-for-tiktok-ads-teams .ad-obj td:first-child{width:22%}
.bespoke-for-tiktok-ads-teams .ad-obj td:last-child{width:28%}

/* 06: Spark Ads, cards stacked in a 2x2 beside the copy */
.bespoke-for-tiktok-ads-teams .ad-spark{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
.bespoke-for-tiktok-ads-teams .ad-spark-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bespoke-for-tiktok-ads-teams .ad-spark-cards .ls-card{padding:22px}
.bespoke-for-tiktok-ads-teams .ad-spark-cards .ls-stat b{font-size:clamp(28px,2.8vw,38px)}

@media(max-width:900px){
 .bespoke-for-tiktok-ads-teams .ad-who,.bespoke-for-tiktok-ads-teams .ad-kw,.bespoke-for-tiktok-ads-teams .ad-spark{grid-template-columns:minmax(0,1fr);gap:28px}
}
@media(max-width:600px){
 .bespoke-for-tiktok-ads-teams .ad-hero-illo{padding:12px}
 .bespoke-for-tiktok-ads-teams .ad-bar{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}
 .bespoke-for-tiktok-ads-teams .ad-bar-track{grid-column:1/-1;grid-row:2}
 .bespoke-for-tiktok-ads-teams .ad-chart{padding:18px 14px 12px}
 .bespoke-for-tiktok-ads-teams .ad-reel{min-height:0}
 .bespoke-for-tiktok-ads-teams .ad-obj-head{grid-template-columns:minmax(0,1fr);gap:18px}
 .bespoke-for-tiktok-ads-teams .ad-spark-cards{grid-template-columns:minmax(0,1fr)}
 .bespoke-for-tiktok-ads-teams .ad-chips li{font-size:14px}
}
