/* /Components/Layout/AdminLayout.razor.rz.scp.css */
.admin-header[b-eeioqbosop] {
    background-color: var(--surface-2);
    border-bottom: 1px solid var(--border-subtle);
    padding-block: var(--space-3);
}

.admin-bar[b-eeioqbosop] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3) var(--space-5);
}

.admin-brand[b-eeioqbosop] {
    font-family: var(--font-heading);
    font-weight: 800;
    font-size: var(--fs-600);
    letter-spacing: -0.02em;
    color: var(--text-primary);
    text-decoration: none;
}

.admin-nav[b-eeioqbosop] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-4);
}

.admin-actions[b-eeioqbosop] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-3);
    margin-left: auto;
}

.admin-user[b-eeioqbosop] {
    font-size: var(--fs-300);
    color: var(--text-secondary);
}

.admin-signout[b-eeioqbosop] {
    margin: 0;
}

/* NavLink alt bileşen olduğu için scope attribute'unu almaz. */
.admin-nav[b-eeioqbosop]  .admin-link,
.admin-actions a.admin-link[b-eeioqbosop] {
    font-size: var(--fs-300);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-secondary);
    text-decoration: none;
    transition: color var(--motion-fast) var(--ease);
}

.admin-nav[b-eeioqbosop]  .admin-link:hover,
.admin-actions a.admin-link:hover[b-eeioqbosop] {
    color: var(--text-primary);
}

.admin-nav[b-eeioqbosop]  .admin-link.active {
    color: var(--accent-text);
}

.admin-main[b-eeioqbosop] {
    padding-block: var(--space-6) var(--space-8);
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-c07z82iwih] {
    color-scheme: light only;
    background: lightyellow;
    color: #141414;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-c07z82iwih] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
    background: none;
    border: 0;
    padding: 0;
    color: inherit;
    line-height: 1;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.site-header[b-xogkemoawl] {
    background-color: var(--surface-0);
    border-bottom: 1px solid var(--border-subtle);
}

.site-header .navbar[b-xogkemoawl] {
    --bs-navbar-padding-y: var(--space-3);
}

/* Logodaki en küçük satır ("x = independently organized TED event") kaynakta yalnızca
   ~20px yüksekliğinde; okunabilmesi için logo 1:1 ölçeğe kadar büyür. Üst sınır kaynak
   görselin doğal yüksekliği olan 119px'tir (üstüne çıkmak keskinliği bozar). */
.site-logo[b-xogkemoawl] {
    height: clamp(3.5rem, 1rem + 8.5vw, 7.4375rem);
    width: auto;
    max-width: 100%;
}

/* NavLink bir alt bileşen olduğu için ürettiği <a> bu dosyanın scope'unu almaz. */
.navbar-collapse[b-xogkemoawl]  .nav-link {
    position: relative;
    color: var(--text-secondary);
    font-weight: 600;
    letter-spacing: 0.04em;
    padding-inline: var(--space-3);
    transition: color var(--motion-fast) var(--ease);
}

.navbar-collapse[b-xogkemoawl]  .nav-link:hover,
.navbar-collapse[b-xogkemoawl]  .nav-link:focus-visible {
    color: var(--text-primary);
}

.navbar-collapse[b-xogkemoawl]  .nav-link.active {
    color: var(--text-primary);
}

.navbar-collapse[b-xogkemoawl]  .nav-link.active::after {
    content: "";
    position: absolute;
    left: var(--space-3);
    right: var(--space-3);
    bottom: 0.15rem;
    height: 2px;
    border-radius: var(--radius-pill);
    background-color: var(--tedx-red);
}

.theme-form[b-xogkemoawl] {
    margin: 0;
    display: inline-flex;
}

.theme-toggle[b-xogkemoawl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    font-size: 1.15rem;
    border: 1px solid var(--border-strong);
    border-radius: var(--radius-pill);
    background-color: transparent;
    color: var(--text-primary);
    cursor: pointer;
    transition: background-color var(--motion-fast) var(--ease), border-color var(--motion-fast) var(--ease), color var(--motion-fast) var(--ease);
}

.theme-toggle:hover[b-xogkemoawl] {
    background-color: var(--tedx-red);
    border-color: var(--tedx-red);
    color: var(--on-accent);
}

.theme-toggle:focus-visible[b-xogkemoawl] {
    outline: 2px solid var(--focus-ring);
    outline-offset: 2px;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-l6nc830yzn],
.components-reconnect-repeated-attempt-visible[b-l6nc830yzn],
.components-reconnect-failed-visible[b-l6nc830yzn],
.components-pause-visible[b-l6nc830yzn],
.components-resume-failed-visible[b-l6nc830yzn],
.components-rejoining-animation[b-l6nc830yzn] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-retrying[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-failed[b-l6nc830yzn],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-l6nc830yzn] {
    display: block;
}


#components-reconnect-modal[b-l6nc830yzn] {
    background-color: var(--surface-2);
    color: var(--text-primary);
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 1px solid var(--border-subtle);
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-l6nc830yzn 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-l6nc830yzn 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-l6nc830yzn 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-l6nc830yzn]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-l6nc830yzn 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-l6nc830yzn {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-l6nc830yzn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-l6nc830yzn {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-l6nc830yzn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-l6nc830yzn] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-l6nc830yzn] {
    border: 0;
    background-color: var(--tedx-red);
    color: #FFFFFF;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-l6nc830yzn] {
        background-color: var(--tedx-red-deep);
    }

    #components-reconnect-modal button:active[b-l6nc830yzn] {
        background-color: var(--tedx-red-deep);
    }

.components-rejoining-animation[b-l6nc830yzn] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-l6nc830yzn] {
        position: absolute;
        border: 3px solid var(--tedx-red-bright);
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-l6nc830yzn 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-l6nc830yzn] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-l6nc830yzn {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/SiteFooter.razor.rz.scp.css */
.site-footer[b-o12gihp2xt] {
    background-color: var(--surface-0);
    border-top: 1px solid var(--border-subtle);
    padding-block: var(--space-6);
}

.footer-heading[b-o12gihp2xt] {
    font-size: var(--fs-300);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary);
    margin-bottom: var(--space-3);
}

.footer-list[b-o12gihp2xt] {
    list-style: none;
    margin: 0 0 var(--space-5);
    padding: 0;
}

.footer-list li + li[b-o12gihp2xt] {
    margin-top: var(--space-2);
}

.footer-list a[b-o12gihp2xt] {
    color: var(--text-primary);
    text-decoration: none;
    transition: color var(--motion-fast) var(--ease);
}

.footer-list a:hover[b-o12gihp2xt] {
    color: var(--tedx-red-bright);
    text-decoration: underline;
}

.footer-bottom[b-o12gihp2xt] {
    border-top: 1px solid var(--border-subtle);
    padding-top: var(--space-4);
}

.footer-text[b-o12gihp2xt] {
    font-size: var(--fs-300);
    color: var(--text-secondary);
    margin-bottom: 0;
}

.social-links[b-o12gihp2xt] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    list-style: none;
    margin: var(--space-3) 0 0;
    padding: 0;
}

.social-link[b-o12gihp2xt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: var(--radius-pill);
    border: 1px solid var(--border-strong);
    color: var(--text-primary);
    font-size: 1.25rem;
    transition: background-color var(--motion-fast) var(--ease), color var(--motion-fast) var(--ease), border-color var(--motion-fast) var(--ease);
}

.social-link:hover[b-o12gihp2xt],
.social-link:focus-visible[b-o12gihp2xt] {
    background-color: var(--tedx-red);
    border-color: var(--tedx-red);
    color: #FFFFFF;
}

@media (min-width: 992px) {
    .social-links[b-o12gihp2xt] {
        margin-top: 0;
        justify-content: flex-end;
    }
}
/* /Components/Pages/Contact/ContactUs.razor.rz.scp.css */
/* Sabit 450px telefonda ekranın yarısını kaplıyordu. */
.map-frame[b-apm6eus760] {
    display: block;
    width: 100%;
    height: clamp(220px, 38vh, 420px);
    border: 0;
}

/* InputTextArea bir alt bileşen olduğu için ürettiği <textarea> bu dosyanın scope'unu
   almaz; ::deep olmadan kural hiç uygulanmıyordu (alan tek satır yüksekliğinde kalıyordu). */
.form-floating[b-apm6eus760]  .message-area {
    min-height: 13.5rem;
}
/* /Components/Pages/Events/EventYear.razor.rz.scp.css */
.event-intro[b-dtvgy4uzpy] {
    margin-block: var(--space-4);
}

.hero-banner[b-dtvgy4uzpy] {
    border-radius: var(--radius-md);
}

.section-heading[b-dtvgy4uzpy] {
    margin-bottom: var(--space-4);
}
/* /Components/Pages/Events/SpeakerDetail.razor.rz.scp.css */
.video-frame[b-a2kb8s084d] {
    aspect-ratio: 16 / 9;
    border-radius: var(--radius-md);
    overflow: hidden;
    background-color: #000;
}

.video-frame iframe[b-a2kb8s084d],
.video-frame video[b-a2kb8s084d] {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.speaker-photo[b-a2kb8s084d] {
    width: 100%;
    margin-top: var(--space-4);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
}

.speaker-role[b-a2kb8s084d] {
    color: var(--text-secondary);
    font-weight: 600;
    margin-bottom: var(--space-3);
}

.speaker-bio[b-a2kb8s084d] {
    padding-block: var(--space-4);
}

/* Eskiden beyaz metin #ff2b06 üzerinde 3.9:1 ile AA'yı geçmiyordu.
   Şimdi yükseltilmiş yüzey (16.5:1), hover'da marka kırmızısı (4.6:1). */
.back-pill[b-a2kb8s084d] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-5);
    border: 1px solid var(--border-strong);
    border-radius: var(--radius-pill);
    background-color: var(--surface-2);
    color: var(--text-primary);
    text-decoration: none;
    font-weight: 600;
    transition: background-color var(--motion-fast) var(--ease), border-color var(--motion-fast) var(--ease), color var(--motion-fast) var(--ease);
}

.back-pill:hover[b-a2kb8s084d] {
    background-color: var(--tedx-red);
    border-color: var(--tedx-red);
    color: #FFFFFF;
    text-decoration: none;
}

.back-pill:focus-visible[b-a2kb8s084d] {
    outline: 2px solid var(--focus-ring);
    outline-offset: 2px;
}
/* /Components/Shared/CommitteeGrid.razor.rz.scp.css */
.committee-card[b-pvalorj7wg] {
    padding: var(--space-2);
}

.committee-card .card[b-pvalorj7wg] {
    height: 100%;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    overflow: hidden;
}

/* Komite fotoğrafları her yıl için kare (148, 500 veya 800 px) ve düz portre değil, üzerinde
   TEDx logosu, tema başlığı ve isim kutusu olan afiş tasarımları. Küçük bir kutuya sığdırıldığında
   ne yüz ne yazı seçiliyordu; bu yüzden görsel kartın tam genişliğinde gösteriliyor. aspect-ratio
   kare kaynakla birebir örtüştüğü için kırpma olmaz ve CLS yine sıfır kalır. */
.committee-photo[b-pvalorj7wg] {
    display: block;
    width: 100%;
    /* height:auto, <img height> ipucunu ezer; onsuz oran yerine kaynak yüksekliği uygulanıyordu. */
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.committee-text[b-pvalorj7wg] {
    /* Aynı satırdaki kartlar Bootstrap sayesinde eşit yükseklikte; metin alanı kalan boşluğu
       doldurunca uzun unvanlar da kartı bozmadan yerleşiyor. */
    flex: 1 1 auto;
    padding: var(--space-3);
}

.committee-text p[b-pvalorj7wg] {
    text-align: left;
    text-wrap: balance;
    margin: 0;
    font-size: var(--fs-300);
    line-height: 1.45;
}

/* CommitteeStyle'daki Light/Dark ayrımı artık mutlak renk değil, yüzey seviyesi:
   her ikisi de aktif temanın token'larını kullanır, aralarındaki fark korunur. */
.card-light[b-pvalorj7wg] {
    background-color: var(--surface-1);
    color: var(--text-primary);
}

.card-dark[b-pvalorj7wg] {
    background-color: var(--surface-2);
    color: var(--text-primary);
}

/* Dar ekranda iki sütuna sığan kartlarda metin boşluğu daralıyor. */
@media (max-width: 575.98px) {
    .committee-text[b-pvalorj7wg] {
        padding: var(--space-2);
    }
}
/* /Components/Shared/PhotoGallery.razor.rz.scp.css */
.gallery-heading[b-a6k04zji9x] {
    margin-bottom: var(--space-4);
}

/* Mobile-first merdiven, Bootstrap kırılımlarıyla hizalı (576/768/992/1200).
   Eskiden 400/800/1000/1200 desktop-first idi ve grid sistemiyle çakışıyordu. */
.gallery[b-a6k04zji9x] {
    line-height: 0;
    column-count: 1;
    column-gap: var(--space-1);
    margin-top: var(--space-5);
}

@media (min-width: 576px) {
    .gallery[b-a6k04zji9x] { column-count: 2; }
}

@media (min-width: 768px) {
    .gallery[b-a6k04zji9x] { column-count: 3; }
}

@media (min-width: 992px) {
    .gallery[b-a6k04zji9x] { column-count: 4; }
}

@media (min-width: 1200px) {
    .gallery[b-a6k04zji9x] { column-count: 5; }
}

.gallery-thumb[b-a6k04zji9x] {
    display: block;
    width: 100%;
    margin: 0 0 var(--space-1) 0;
    padding: 0;
    border: 0;
    background: none;
    cursor: zoom-in;
    break-inside: avoid;
}

.gallery-thumb:focus-visible[b-a6k04zji9x] {
    outline: 2px solid var(--focus-ring);
    outline-offset: 2px;
}

.gallery-thumb img[b-a6k04zji9x] {
    display: block;
    width: 100%;
    height: auto;
    transition: filter var(--motion-fast) var(--ease);
}

.gallery-thumb:hover img[b-a6k04zji9x],
.gallery-thumb:focus-visible img[b-a6k04zji9x] {
    filter: brightness(1.15);
}

.lightbox[b-a6k04zji9x] {
    border: 0;
    padding: 0;
    background: transparent;
    max-width: 95vw;
    max-height: 95vh;
    overflow: visible;
    opacity: 0;
    transition: opacity var(--motion-base) var(--ease),
                overlay var(--motion-base) var(--ease) allow-discrete,
                display var(--motion-base) var(--ease) allow-discrete;
}

.lightbox:popover-open[b-a6k04zji9x] {
    opacity: 1;
}

/* Açılış geçişinin başlangıç durumu; kapanış yukarıdaki allow-discrete ile yürür. */
@starting-style {
    .lightbox:popover-open[b-a6k04zji9x] {
        opacity: 0;
    }
}

.lightbox[b-a6k04zji9x]::backdrop {
    background: rgb(0 0 0 / 0.88);
}

.lightbox img[b-a6k04zji9x] {
    display: block;
    margin: 0 auto;
    max-width: 92vw;
    max-height: 84vh;
    width: auto;
    height: auto;
    border-radius: var(--radius-sm);
    box-shadow: 0 0 24px rgb(0 0 0 / 0.6);
}

.lightbox-controls[b-a6k04zji9x] {
    display: flex;
    justify-content: center;
    gap: var(--space-4);
    margin-top: var(--space-3);
}

.lightbox-controls button[b-a6k04zji9x] {
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid rgb(255 255 255 / 0.3);
    border-radius: var(--radius-pill);
    background: rgb(255 255 255 / 0.12);
    color: #FFFFFF;
    font-size: 1.6rem;
    line-height: 1;
    cursor: pointer;
    transition: background-color var(--motion-fast) var(--ease), border-color var(--motion-fast) var(--ease);
}

.lightbox-controls button:hover[b-a6k04zji9x],
.lightbox-controls button:focus-visible[b-a6k04zji9x] {
    background: var(--tedx-red);
    border-color: var(--tedx-red);
    color: var(--on-accent);
}

.lightbox-controls button:focus-visible[b-a6k04zji9x] {
    outline: 2px solid var(--focus-ring);
    outline-offset: 2px;
}
/* /Components/Shared/RegistrationNav.razor.rz.scp.css */
.btn-reg[b-xxtw93ki2p] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 4.5rem;
    padding: var(--space-4);
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: var(--fs-300);
    letter-spacing: 0.05em;
    line-height: 1.35;
    text-align: center;
    white-space: normal;
    border-radius: var(--radius-md);
    transition: background-color var(--motion-fast) var(--ease), border-color var(--motion-fast) var(--ease), color var(--motion-fast) var(--ease);
}

/* Beyaz metin / --tedx-red: 4.6:1 · hover --tedx-red-deep: 6.2:1 → ikisi de AA */
.btn-reg-primary[b-xxtw93ki2p] {
    background-color: var(--tedx-red);
    border: 1px solid var(--tedx-red);
    color: #FFFFFF;
}

.btn-reg-primary:hover[b-xxtw93ki2p] {
    background-color: var(--tedx-red-deep);
    border-color: var(--tedx-red-deep);
    color: #FFFFFF;
}

.btn-reg-outline[b-xxtw93ki2p] {
    background-color: var(--surface-2);
    border: 1px solid var(--border-strong);
    color: var(--text-primary);
}

.btn-reg-outline:hover[b-xxtw93ki2p] {
    background-color: var(--surface-1);
    border-color: var(--tedx-red);
    color: var(--text-primary);
}

.btn-reg:focus-visible[b-xxtw93ki2p] {
    outline: 2px solid var(--focus-ring);
    outline-offset: 2px;
    box-shadow: none;
}

/* Flex kabında iki ayrı metin düğümü arasındaki boşluk yutuluyordu; etiket tek düğüm. */
.btn-reg-label[b-xxtw93ki2p] {
    display: block;
}
/* /Components/Shared/ScheduleTable.razor.rz.scp.css */
.schedule-head[b-zazhhemuii] {
    font-family: var(--font-heading);
    font-size: var(--fs-300);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary);
}

/* Saat, satırın başlık hücresi. Renk --accent-text üzerinden bölümün tonuna uyar:
   koyu zeminde 5.7:1 (eskiden #ff0000 beyaz üzerinde 4.0:1 ile AA'yı geçmiyordu). */
.schedule-time[b-zazhhemuii] {
    width: 1%;
    text-align: center;
    white-space: nowrap;
    vertical-align: top;
    font-family: var(--font-heading);
    font-weight: 700;
    color: var(--accent-text);
}

.schedule-entries[b-zazhhemuii] {
    text-align: left;
}

.schedule-entries p[b-zazhhemuii] {
    text-align: left;
    margin-bottom: var(--space-2);
}

.schedule-entries p:last-child[b-zazhhemuii] {
    margin-bottom: 0;
}
