/* 7TuT Tournament Frontend UI v3.6.2
 * Public presentation only. No business logic.
 */

/* ===== Tournament catalog ===== */
.cloud-events-page{
    background:#1d1d1d;
    color:#fff;
}
.cloud-events-page .vlp-event-catalog-tools{
    max-width:100%;
}
.cloud-events-page .vlp-event-catalog-summary{
    margin:18px 0;
}
.vlp-event-catalog-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:22px!important;
}
.vlp-event-catalog-grid .vlp-event-cloud-card{
    display:flex!important;
    flex-direction:column;
    min-width:0;
    min-height:100%;
    overflow:hidden;
    border:1px solid rgba(255,122,69,.24);
    border-radius:16px;
    background:#242424;
    box-shadow:0 14px 34px rgba(0,0,0,.14);
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.vlp-event-catalog-grid .vlp-event-cloud-card:hover{
    transform:translateY(-3px);
    border-color:rgba(118,118,118,.48);
    box-shadow:0 18px 42px rgba(0,0,0,.22);
}
.vlp-event-catalog-grid .vlp-event-cloud-photo{
    display:block;
    width:100%;
    aspect-ratio:1/1;
    min-height:0!important;
    overflow:hidden;
    background:#2a2a2a;
}
.vlp-event-catalog-grid .vlp-event-cloud-photo img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform .28s ease;
}
.vlp-event-catalog-grid .vlp-event-cloud-card:hover .vlp-event-cloud-photo img{
    transform:scale(1.025);
}
.vlp-event-catalog-grid .vlp-event-cloud-placeholder{
    display:grid;
    place-items:center;
    width:100%;
    height:100%;
    min-height:0;
    font-size:2rem;
    font-weight:900;
    letter-spacing:.08em;
    color:#ff4f3a;
    background:
        radial-gradient(circle at 70% 20%,rgba(255,79,58,.14),transparent 35%),
        linear-gradient(145deg,#2a2a2a,#1d1d1d);
}
.vlp-event-catalog-grid .vlp-event-cloud-copy{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:18px 18px 17px;
}
.vlp-event-catalog-grid .vlp-event-cloud-topline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    color:#e1e1e1;
    font-size:.78rem;
}
.vlp-event-catalog-grid .vlp-event-cloud-copy h2{
    margin:13px 0 10px;
    font-size:1.18rem;
    line-height:1.3;
}
.vlp-event-catalog-grid .vlp-event-cloud-copy h2 a{
    color:#fff;
    text-decoration:none;
}
.vlp-event-card-details{
    display:grid;
    gap:7px;
    margin:0 0 14px;
    color:#e4e4e4;
    font-size:.85rem;
}
.vlp-event-catalog-grid .vlp-event-cloud-actions{
    display:flex;
    gap:12px;
    align-items:center;
    flex-wrap:wrap;
    margin-top:auto;
    padding-top:12px;
    border-top:1px solid rgba(220,220,220,.13);
}
.vlp-event-catalog-grid .vlp-event-detail-link,
.vlp-event-catalog-grid .vlp-event-register-link{
    font-size:.78rem;
    font-weight:900;
    text-decoration:none;
}
.vlp-event-catalog-grid .vlp-event-detail-link{color:#777777}
.vlp-event-catalog-grid .vlp-event-register-link{color:#ff4f3a}

/* ===== Tournament detail ===== */
.vlp-ypp-tour-hero{
    position:relative;
    padding:104px 0 34px!important;
    overflow:hidden;
    background:
        radial-gradient(circle at 82% 18%,rgba(255,122,69,.22),transparent 36%),
        linear-gradient(180deg,#1d1d1d 0%,#222222 100%);
}
.vlp-ypp-tour-hero:after{
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:1px;
    background:rgba(255,122,69,.24);
}
.vlp-ypp-tour-head{
    position:relative;
    z-index:1;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(320px,460px)!important;
    gap:42px!important;
    align-items:center!important;
}
.vlp-ypp-tour-intro{
    min-width:0;
    max-width:760px;
}
.vlp-ypp-tour-intro .eyebrow{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:6px 10px;
    border:1px solid rgba(255,79,58,.25);
    border-radius:999px;
    color:#ff4f3a!important;
    background:rgba(255,79,58,.06);
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.09em;
}
.vlp-ypp-tour-intro h1{
    margin:14px 0 18px!important;
    max-width:760px;
    color:#fff;
    font-size:clamp(2.3rem,4vw,4.7rem)!important;
    line-height:.98!important;
    letter-spacing:-.035em;
    overflow-wrap:anywhere;
}
.vlp-event-meta-row{
    display:flex!important;
    flex-wrap:wrap;
    gap:9px!important;
    color:#eaeaea;
}
.vlp-event-meta-row>span{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:7px 11px;
    border:1px solid rgba(255,122,69,.21);
    border-radius:999px;
    background:rgba(36,36,36,.55);
}
.vlp-ypp-tour-poster{
    width:100%;
    max-width:460px;
    justify-self:end;
    overflow:hidden;
    border:1px solid rgba(255,122,69,.32);
    border-radius:16px;
    background:#252525;
    box-shadow:0 20px 48px rgba(0,0,0,.24);
}
.vlp-ypp-tour-poster img{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    height:auto!important;
    object-fit:cover;
    object-position:center;
}
.vlp-cloud-register-cta{
    margin-top:18px!important;
}
.vlp-ypp-tour-body{
    background:#1d1d1d;
}
.vlp-ypp-tour-body>.shell{
    padding-top:0;
}
.vlp-ypp-tabs{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding:0 0 16px;
    border-bottom:1px solid rgba(255,122,69,.24);
    scrollbar-width:thin;
}
.vlp-ypp-tabs a{
    flex:0 0 auto;
}
.vlp-event-tab-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin:26px 0 22px;
}
.vlp-event-kicker{
    color:#dcdcdc!important;
    font-size:.72rem!important;
    font-weight:900;
    letter-spacing:.12em;
}
.vlp-event-tab-head h2{
    margin:8px 0 0;
}
.vlp-event-overview-facts{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-bottom:28px;
}
.vlp-event-overview-facts article{
    min-width:0;
    padding:18px;
    border:1px solid rgba(255,122,69,.23);
    border-radius:14px;
    background:#252525;
}
.vlp-event-overview-facts span{
    display:block;
    margin-bottom:7px;
    color:#dcdcdc;
    font-size:.75rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.vlp-event-overview-facts strong{
    display:block;
    color:#fff;
    line-height:1.35;
    overflow-wrap:anywhere;
}
.vlp-event-prose:empty{display:none}

/* Remove visual dependency on legacy Cloud credit. */
.vlp-ypp-credit{display:none!important}

@media(max-width:1280px){
    .vlp-event-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:980px){
    .vlp-event-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .vlp-ypp-tour-hero{padding-top:122px!important}
    .vlp-ypp-tour-head{grid-template-columns:1fr!important;gap:26px!important}
    .vlp-ypp-tour-poster{justify-self:start;max-width:640px}
    .vlp-event-overview-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
    .vlp-event-catalog-grid{grid-template-columns:1fr!important}
    .vlp-event-catalog-grid .vlp-event-cloud-card{max-width:520px;margin-inline:auto}
    .vlp-ypp-tour-hero{padding:100px 0 26px!important}
    .vlp-ypp-tour-intro h1{font-size:clamp(2rem,12vw,3.1rem)!important}
    .vlp-event-meta-row>span{width:100%;border-radius:9px}
    .vlp-ypp-tour-poster{max-width:none}
    .vlp-event-tab-head{align-items:flex-start;flex-direction:column}
    .vlp-event-overview-facts{grid-template-columns:1fr}
}
