/* Original Kart Directory competition/calendar styles. */
.competition-logo-dark { --competition-logo-background: #171c21; }

.competition-index .championship-logo{width:88px;height:88px;flex:0 0 88px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--tblr-border-color);border-radius:8px;overflow:hidden}.competition-index .championship-logo-dark{background:#11161b}.competition-index .championship-logo img{width:100%;height:100%;object-fit:contain;padding:6px}.competition-index .championship-logo-placeholder{background:#20262d;color:#aeb8c4;font-size:1.5rem;font-weight:700}.competition-index .championship-card-title{overflow-wrap:anywhere}@media(max-width:575px){.competition-index .championship-logo{width:64px;height:64px;flex-basis:64px}}


        .championship-hero { position:relative; padding:2rem; padding-right:5rem; background:linear-gradient(120deg,#1e252b,#101419); min-height:190px; }
        .championship-hero-actions { position:absolute; top:1rem; right:1rem; }
        .championship-hero h1 { font-size:clamp(1.5rem,3vw,2.25rem); }
        .championship-logo { flex-shrink:0; background:var(--competition-logo-background, #fff); }
        .championship-logo img { width:100%; height:100%; object-fit:contain; }
        .championship-calendar { padding:1rem; }
        .championship-month { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:1px; background:#2a3138; min-width:620px; }
        .championship-day { background:#11161b; padding:.5rem; min-height:90px; min-width:0; }
        .championship-day a { display:block; margin-top:.4rem; padding:.3rem .45rem; border-radius:6px; background:var(--kd-blue, #1b75bc); color:#fff; font-size:.8rem; font-weight:500; line-height:1.35; text-decoration:none; overflow-wrap:anywhere; }
.championship-day a:visited { color:#fff; }
.championship-day a:hover { background:color-mix(in srgb, var(--kd-blue, #1b75bc) 85%, black); color:#fff; text-decoration:none; }
.championship-day a:focus-visible { outline:2px solid #fff; outline-offset:2px; }
        .championship-calendar .fc-toolbar-title { font-size:1.25rem; }
        .championship-calendar .fc-button { color:var(--tblr-body-color); background:#11161b; border-color:var(--tblr-border-color); }
        .championship-calendar .fc-button-primary:not(:disabled).fc-button-active { color:var(--tblr-primary); background:var(--tblr-primary-lt); border-color:var(--tblr-primary); }
        .championship-calendar .fc-event { cursor:pointer; border-color:var(--tblr-primary); background:var(--tblr-primary); }
        .championship-calendar .event-cancelled { text-decoration:line-through; border-color:var(--tblr-danger); background:var(--tblr-danger); }
        @media (max-width:767.98px) { .championship-calendar { padding:.75rem; } .championship-calendar .fc-toolbar { align-items:stretch; flex-direction:column; gap:.5rem; } }
    

.event-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#2a3138}.event-day{background:#11161b;min-height:120px;padding:.65rem;min-width:0}.event-day a { display:block; margin-top:.4rem; padding:.3rem .45rem; border-radius:6px; background:var(--kd-blue, #1b75bc); color:#fff; font-size:.8rem; font-weight:500; line-height:1.35; text-decoration:none; overflow-wrap:anywhere; }
.event-day a:visited { color:#fff; }
.event-day a:hover { background:color-mix(in srgb, var(--kd-blue, #1b75bc) 85%, black); color:#fff; text-decoration:none; }
.event-day a:focus-visible { outline:2px solid #fff; outline-offset:2px; }.event-weekday{background:#11161b;padding:.5rem;text-align:center}.event-month-scroll{overflow-x:auto}@media(max-width:767px){.event-month{min-width:700px}}.event-preview-note{background:#352f13;color:#fff0a6;border:1px solid #796723}
.event-result{display:grid;grid-template-columns:180px minmax(0,1fr);overflow:hidden}.event-result-media{position:relative;min-height:190px;background:var(--kd-surface-2,#20262d)}.event-result-photo{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.event-result-date{position:absolute;top:.75rem;left:.75rem;background:#11161bed;color:#fff;border:1px solid #ffffff35;border-radius:8px;padding:.5rem .75rem;text-align:center;min-width:64px}.event-result-heading{display:flex;gap:.75rem;align-items:center;margin-bottom:.75rem}.event-result-logo{width:48px;height:48px;object-fit:contain;padding:4px;background:#fff;border-radius:6px;flex-shrink:0}.event-result-logo-dark{background:#171c21}.event-result .card-body{min-width:0}.event-result h4{overflow-wrap:anywhere}.event-result-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.event-result-footer .btn{flex-shrink:0}@media(max-width:575px){.event-result{grid-template-columns:1fr}.event-result-media{min-height:160px}.event-result-footer{align-items:flex-start;flex-direction:column}}

.event-preview-note{background:#352f13;color:#fff0a6;border:1px solid #796723}.event-cancelled-note{background:#421c22;color:#ffd5dc;border:1px solid #9a4857}.event-detail-hero{position:relative;padding:2rem 5rem 2rem 2rem;background:linear-gradient(120deg,#1e252b,#101419);align-items:center;gap:1.25rem}.event-detail-hero > a{flex-shrink:0}.event-detail-logo{width:80px;height:80px;object-fit:contain;border-radius:8px;background:var(--competition-logo-background, #fff);flex-shrink:0}.event-detail-hero h1{font-size:clamp(1.5rem,2.5vw,2.25rem);line-height:1.25}.event-detail-share{position:absolute;top:1rem;right:1rem}@media(max-width:575px){.event-detail-hero{flex-direction:column;align-items:flex-start;padding:1.25rem 4.5rem 1.25rem 1.25rem}}.event-venue-section{padding:clamp(1.25rem,3vw,2rem)}.event-venue-media{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0}.event-venue-details{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1.5rem}.event-venue-details address{margin-bottom:0}.event-venue-details .btn{white-space:nowrap}.event-venue-map{height:280px;min-height:280px;z-index:0;border-radius:8px}@media(max-width:767px){.event-venue-media{grid-template-columns:1fr;gap:1rem}.event-venue-details{align-items:flex-start;flex-direction:column}}
