:root{--tso-yellow:var(--ts-yellow,#f3c600);--tso-black:var(--ts-black,#080808);--tso-white:var(--ts-white,#f7f7f4);--tso-charcoal:var(--ts-charcoal,#151515);--tso-slate:var(--ts-slate,#282828);--tso-border:var(--ts-border,1px solid rgba(255,255,255,.13));--tso-radius:var(--ts-radius,8px);--tso-shadow:var(--ts-shadow,0 18px 45px rgba(0,0,0,.28))}.tso-event-obstacles,.tso-obstacle-profile,.tso-carousel{display:grid;gap:1.25rem;margin-block:1.5rem;color:var(--tso-white)}.tso-event-summary,.tso-profile-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.tso-event-summary>div,.tso-profile-summary>div{display:flex;flex-direction:column;justify-content:center;min-height:96px;padding:1rem;border:1px solid rgba(255,255,255,.16);border-top:3px solid var(--tso-yellow);border-radius:var(--tso-radius);background:var(--tso-charcoal)}.tso-event-summary span,.tso-profile-summary span{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ccc}.tso-event-summary strong,.tso-profile-summary strong{margin-top:.28rem;color:var(--tso-yellow);font:900 clamp(1.3rem,3vw,2rem)/1 "Arial Narrow","Roboto Condensed",Impact,Arial,sans-serif}.tso-profile-summary small{margin-top:.35rem;color:#bbb}.tso-obstacle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tso-obstacle-card{display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;border:var(--tso-border);border-top:3px solid var(--tso-yellow);border-radius:var(--tso-radius);background:linear-gradient(160deg,#1d1d1d,#111);box-shadow:var(--tso-shadow)}.tso-obstacle-card--no-media{grid-template-columns:minmax(0,1fr)}.tso-obstacle-card__media{display:block;background:#090909}.tso-obstacle-card__image{display:block;width:100%;height:180px;min-height:0;object-fit:cover}.tso-obstacle-card__body{min-width:0;padding:1rem 1.1rem}.tso-obstacle-card__topline{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.tso-course-number{color:var(--tso-yellow);font:900 1.45rem/1 "Arial Narrow","Roboto Condensed",Impact,Arial,sans-serif}.tso-obstacle-card__badges{display:flex;justify-content:flex-end;gap:.35rem;flex-wrap:wrap}.tso-badge{display:inline-flex;padding:.28rem .48rem;border:1px solid rgba(243,198,0,.55);border-radius:999px;font:800 .68rem/1 "Arial Narrow","Roboto Condensed",Impact,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}.tso-badge--first{background:var(--tso-yellow);border-color:var(--tso-yellow);color:var(--tso-black)}.tso-obstacle-card__title{margin:.65rem 0 .2rem;font-size:clamp(1.35rem,2.5vw,1.8rem)}.tso-obstacle-card__title a{color:var(--tso-white);text-decoration:none}.tso-obstacle-card__title a:hover{color:var(--tso-yellow)}.tso-obstacle-card__type{margin:.15rem 0 .7rem;color:#bbb;font-size:.82rem}.tso-obstacle-card__meta{display:flex;align-items:center;gap:.4rem .65rem;flex-wrap:wrap}.tso-rating{display:inline-flex;align-items:center;gap:.3rem;color:var(--tso-yellow);font-weight:900}.tso-rating--none{color:#aaa;font-weight:600}.tso-outcome,.tso-quantity{display:inline-flex;padding:.22rem .42rem;border:1px solid #484848;border-radius:999px;background:#202020;color:#ddd;font-size:.72rem;font-weight:700}.tso-outcome--failed{border-color:#9d4949}.tso-outcome--assisted{border-color:#a4882d}.tso-obstacle-card__review{margin-top:.8rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.12);color:#ddd}.tso-obstacle-card__review p:first-child,.tso-feature-review p:first-child{margin-top:0}.tso-obstacle-card__review p:last-child,.tso-feature-review p:last-child{margin-bottom:0}.tso-event-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.tso-event-table{width:100%;min-width:860px;border-collapse:collapse;background:#111;color:var(--tso-white)}.tso-event-table th,.tso-event-table td{padding:.8rem;border:1px solid #3d3d3d;text-align:left;vertical-align:top}.tso-event-table th{background:#202020;color:var(--tso-yellow);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}.tso-event-table tbody tr:nth-child(even){background:#191919}.tso-event-table a{color:var(--tso-white);text-decoration:none}.tso-event-table a:hover{color:var(--tso-yellow)}.tso-event-mobile-cards{display:none}.tso-obstacle-feature{max-width:760px;margin:0 auto}.tso-obstacle-feature__media{display:block}.tso-obstacle-feature__image{display:block;width:100%;max-height:360px;object-fit:cover}.tso-feature-rating{margin:.55rem 0}.tso-feature-small{margin:.55rem 0 0;color:#ccc}.tso-feature-small strong{color:var(--tso-white)}.tso-feature-review{margin-top:.8rem;padding:.8rem 0 0;border-top:1px solid rgba(255,255,255,.12);color:#ddd}.tso-profile-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.tso-profile-meta{display:flex;gap:.6rem 1rem;align-items:center;flex-wrap:wrap;color:#ccc}.tso-similar,.tso-history{margin-top:1rem}.tso-similar__links{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.7rem}.tso-similar__links a{display:flex;flex-direction:column;padding:.9rem;border:1px solid rgba(243,198,0,.35);border-left:4px solid var(--tso-yellow);background:#151515;color:var(--tso-white);font-weight:800;text-decoration:none}.tso-similar__links a:hover{border-color:var(--tso-yellow);color:var(--tso-yellow)}.tso-similar__links small{margin-top:.25rem;color:#aaa;font-weight:500}.tso-history__list{display:grid;gap:.85rem}.tso-history__item{padding:1rem 1.1rem;border:var(--tso-border);border-left:4px solid var(--tso-yellow);background:#151515}.tso-history__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.tso-history__heading h3{margin:0 0 .2rem}.tso-history__heading h3 a{color:var(--tso-white);text-decoration:none}.tso-history__heading time{color:#aaa;font-size:.8rem}.tso-history__outcome{margin:.5rem 0;color:#ccc;font-size:.82rem;font-weight:700}.tso-carousel__viewport{min-width:0}.tso-carousel__slide[hidden]{display:none!important}.tso-carousel__controls{display:flex;align-items:center;justify-content:center;gap:.8rem}.tso-carousel__button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--tso-yellow);border-radius:4px;background:var(--tso-yellow);color:var(--tso-black);font-size:1.35rem;font-weight:900;cursor:pointer}.tso-carousel__button:hover,.tso-carousel__button:focus-visible{background:var(--tso-white);border-color:var(--tso-white)}.tso-carousel__position{min-width:62px;text-align:center;color:#ccc;font-weight:800}@media(max-width:980px){.tso-obstacle-grid{grid-template-columns:1fr}.tso-event-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.tso-event-summary{grid-template-columns:1fr}.tso-obstacle-card{grid-template-columns:1fr}.tso-obstacle-card__image{height:auto;min-height:0;max-height:320px}.tso-event-obstacles--table .tso-event-table-wrap{display:none}.tso-event-obstacles--table .tso-event-mobile-cards{display:grid;gap:1rem}.tso-obstacle-card--compact{display:block}.tso-history__heading{align-items:flex-start;flex-direction:column}.tso-profile-summary{grid-template-columns:1fr 1fr}}@media(max-width:460px){.tso-profile-summary{grid-template-columns:1fr}.tso-obstacle-card__topline{align-items:flex-start;flex-direction:column}.tso-obstacle-card__badges{justify-content:flex-start}}

/* Multi-run event presentation (1.1.0). */
.tso-event-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.tso-run-tabs{display:grid;gap:1rem}
.tso-run-tabs__nav{display:flex;gap:.45rem;max-width:100%;padding:.35rem;overflow-x:auto;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:#111;scrollbar-width:thin}
.tso-run-tab{flex:0 0 auto;padding:.62rem .9rem;border:1px solid transparent;border-radius:999px;background:transparent;color:#ddd;font:800 .76rem/1 "Arial Narrow","Roboto Condensed",Impact,Arial,sans-serif;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}
.tso-run-tab:hover,.tso-run-tab:focus-visible{border-color:rgba(243,198,0,.65);color:var(--tso-yellow);outline:none}
.tso-run-tab.is-active{border-color:var(--tso-yellow);background:var(--tso-yellow);color:var(--tso-black)}
.tso-run-tabpanel[hidden]{display:none!important}
.tso-all-runs-intro{display:grid;gap:.25rem;margin-bottom:1rem;padding:.85rem 1rem;border-left:4px solid var(--tso-yellow);background:#151515;color:#ccc}
.tso-all-runs-intro strong{color:var(--tso-yellow);font-size:.78rem;letter-spacing:.07em;text-transform:uppercase}
.tso-run-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.2rem 0 1rem;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.15);border-left:4px solid var(--tso-yellow);border-radius:var(--tso-radius);background:#151515}
.tso-run-header__kicker{display:block;margin-bottom:.15rem;color:var(--tso-yellow);font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.tso-run-header h3{margin:0;color:var(--tso-white);font-size:clamp(1.25rem,2.4vw,1.7rem)}
.tso-run-header p{margin:.25rem 0 0;color:#aaa;font-size:.82rem}
.tso-result-link{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:.55rem .75rem;border:1px solid var(--tso-yellow);border-radius:999px;color:var(--tso-yellow);font-size:.72rem;font-weight:900;letter-spacing:.05em;text-decoration:none;text-transform:uppercase}
.tso-result-link:hover,.tso-result-link:focus-visible{background:var(--tso-yellow);color:var(--tso-black)}
.tso-run-badges,.tso-history__runline{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}
.tso-run-badges{margin:.15rem 0 .75rem}
.tso-run-badge{display:inline-flex;padding:.27rem .48rem;border:1px solid rgba(243,198,0,.55);border-radius:999px;background:#202020;color:#eee;font-size:.69rem;font-weight:800;line-height:1.1}
.tso-obstacle-card--overview .tso-obstacle-card__topline{justify-content:flex-end}
.tso-history__runline{margin-top:.35rem;color:#aaa;font-size:.78rem}
.tso-history__runline a{color:var(--tso-yellow);font-weight:800;text-decoration:none}
@media(max-width:980px){.tso-event-summary{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}
@media(max-width:720px){.tso-event-summary{grid-template-columns:1fr 1fr}.tso-run-tabs__nav{border-radius:8px}.tso-run-header{align-items:flex-start;flex-direction:column}.tso-result-link{align-self:flex-start}}
@media(max-width:460px){.tso-event-summary{grid-template-columns:1fr}}
