/* TikTok job-video carousel: 3D "cylinder" with the active video in front */
.ttc{--ttc-w:300px;--ttc-h:533px;--ttc-step:220px;--ttc-depth:140px;--ttc-turn:26deg;position:relative;margin:0 auto;max-width:1200px;user-select:none}
.ttc-stage{position:relative;height:calc(var(--ttc-h) + 72px);perspective:1400px;perspective-origin:50% 40%;overflow:hidden;touch-action:pan-y}
.ttc-track{list-style:none;margin:0;padding:0;position:absolute;inset:0;transform-style:preserve-3d}
.ttc-card{position:absolute;top:0;left:50%;width:var(--ttc-w);margin-left:calc(var(--ttc-w) / -2);transition:transform .55s cubic-bezier(.22,.8,.3,1),opacity .45s,filter .45s;will-change:transform;cursor:pointer}
.ttc-card[aria-hidden="true"]{pointer-events:none}
.ttc-frame{position:relative;width:100%;height:var(--ttc-h);border-radius:16px;overflow:hidden;background:#111;box-shadow:0 18px 50px rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.08)}
.ttc-frame img,.ttc-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover;display:block}
.ttc-card:not(.is-active) .ttc-frame{filter:brightness(.55) saturate(.8)}
.ttc-play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;color:#fff;pointer-events:none;transition:opacity .3s}
.ttc-play svg{width:26px;height:26px;margin-left:4px}
.ttc-card.has-player .ttc-play{opacity:0}
.ttc-cap{margin:14px 6px 0;text-align:center;font-weight:600;color:#fff;line-height:1.35;font-size:.95rem;opacity:0;transition:opacity .3s}
.ttc-card.is-active .ttc-cap{opacity:1}
.ttc-cap a{color:#7bb8e0;font-weight:500;font-size:.82rem;display:block;margin-top:4px}
.ttc-arrow{position:absolute;top:calc(var(--ttc-h) / 2);transform:translateY(-50%);z-index:50;width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(18,102,158,.92);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s}
.ttc-arrow:hover{background:#12669e;transform:translateY(-50%) scale(1.06)}
.ttc-arrow:focus-visible{outline:3px solid #7bb8e0;outline-offset:3px}
.ttc-arrow svg{width:22px;height:22px}
.ttc-prev{left:calc(50% - var(--ttc-w) / 2 - 76px)}
.ttc-next{right:calc(50% - var(--ttc-w) / 2 - 76px)}
.ttc-count{text-align:center;color:rgba(218,216,214,.6);font-size:.85rem;margin-top:4px;font-variant-numeric:tabular-nums}
.ttc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:760px){
  .ttc{--ttc-w:230px;--ttc-h:409px;--ttc-step:150px;--ttc-depth:110px;--ttc-turn:30deg}
  .ttc-prev{left:6px}.ttc-next{right:6px}
  .ttc-arrow{width:44px;height:44px}
}
@media (prefers-reduced-motion:reduce){.ttc-card{transition:none}}
/* Without JavaScript: a plain scrolling row of video links */
.ttc:not(.is-ready) .ttc-stage{height:auto;overflow-x:auto;perspective:none}
.ttc:not(.is-ready) .ttc-track{position:static;display:flex;gap:16px;padding-bottom:12px}
.ttc:not(.is-ready) .ttc-card{position:static;margin:0;flex:0 0 var(--ttc-w)}
.ttc:not(.is-ready) .ttc-cap{opacity:1}
.ttc:not(.is-ready) .ttc-arrow,.ttc:not(.is-ready) .ttc-count{display:none}
