/*
Theme Name: BCM2 — Biuro Cyfryzacji Miasta Świdnica
Theme URI: https://bcm.swidnica.pl/
Author: Grzegorz Nowak
Description: Natywny motyw WordPress odtwarzający projekt BCM2. Treści strony głównej są pobierane z WordPress Pages.
Version: 2.0.7
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: bcm2
*/

/* Dodatki WordPress / interakcje bez React */
html{scroll-padding-top:76px}.bcm2-mobile-panel{position:fixed;inset:0 0 0 auto;width:min(360px,88vw);background:#fff;z-index:80;padding:90px 28px 28px;transform:translateX(105%);transition:.25s;box-shadow:-20px 0 70px #26104433}.bcm2-mobile-panel.open{transform:none}.bcm2-mobile-panel .mobile-nav{display:grid}.bcm2-mobile-panel .mobile-nav a{color:#17132b}.bcm2-mobile-close{position:absolute;right:22px;top:22px;border:0;background:#f5efff;width:42px;height:42px;border-radius:12px;font-size:25px;cursor:pointer}.bcm2-overlay{position:fixed;inset:0;background:#14082688;z-index:70;opacity:0;visibility:hidden;transition:.2s}.bcm2-overlay.open{opacity:1;visibility:visible}.bcm2-modal{position:fixed;inset:0;z-index:100;display:none;place-items:center;padding:20px}.bcm2-modal.open{display:grid}.bcm2-modal:before{content:"";position:absolute;inset:0;background:#160a2bb3;backdrop-filter:blur(8px)}.bcm2-modal-card{position:relative;width:min(650px,100%);max-height:min(82vh,760px);overflow:auto;background:#fff;border-radius:28px;padding:34px;box-shadow:0 30px 100px #0006}.bcm2-modal-close{position:absolute;right:17px;top:15px;border:0;background:#f4effb;width:38px;height:38px;border-radius:50%;font-size:23px;cursor:pointer}.bcm2-modal-card h2{font-size:30px;margin:8px 40px 8px 0}.bcm2-modal-card .modal-avatar{width:72px;height:72px;border-radius:21px;display:grid;place-items:center;background:linear-gradient(135deg,#8b5cf6,#5b21b6);color:#fff;font-weight:900;font-size:20px}.bcm2-modal-role{color:#6b657a;margin-bottom:16px}.bcm2-modal-bio{line-height:1.7;color:#514b65}.bcm2-toast{position:fixed;top:95px;left:50%;transform:translate(-50%,-15px);z-index:200;background:#17132b;color:#fff;padding:13px 18px;border-radius:13px;box-shadow:0 12px 35px #0003;opacity:0;pointer-events:none;transition:.25s;font-weight:700;font-size:14px}.bcm2-toast.show{opacity:1;transform:translate(-50%,0)}.bcm2-toast.error{background:#991b1b}.bcm2-speaker-hidden{display:none!important}.bcm2-form-step{display:none}.bcm2-form-step.active{display:grid}.registration-shell form{display:block}.registration-shell .form-nav{margin-top:26px}.registration-shell .ajax-message{margin-top:14px;font-size:13px;color:#6b657a}.registration-success[hidden]{display:none}.bcm2-generic-page{padding-top:110px;min-height:70vh}.bcm2-generic-page>.container{max-width:1000px}.bcm2-generic-page h1{font-size:clamp(38px,5vw,64px);letter-spacing:-.04em}.bcm2-generic-page .entry-content{line-height:1.75}.bcm2-generic-page .entry-content p{color:#5e576b}.wp-admin-bar .topbar{top:32px}@media(max-width:782px){.wp-admin-bar .topbar{top:46px}}@media(max-width:700px){html{scroll-padding-top:68px}.bcm2-modal-card{padding:27px 22px}.bcm2-mobile-panel{padding-top:80px}}

.bcm2-registration-page{padding-top:82px;min-height:70vh}.bcm2-registration-page .conf-form-wrapper{margin-top:48px}


/* BCM2 2.0.3 — rozbudowane menu sekcji
   Pełne menu pozostaje w nagłówku na szerokich ekranach. Na laptopach i
   tabletach przechodzimy wcześniej na istniejący panel mobilny, aby 12
   pozycji nie ściskało logo ani przycisku Rejestracja. */
@media (min-width:1381px){
  .topbar .desktop-nav{gap:clamp(10px,1.05vw,18px)}
  .topbar .desktop-nav a{font-size:clamp(11px,.78vw,13px);white-space:nowrap}
}
@media (min-width:1001px) and (max-width:1380px){
  .topbar .desktop-nav{display:none}
  .topbar .nav-cta{margin-left:auto}
  .topbar .mobile-trigger{display:block}
}

/* Każda sekcja będąca celem menu zatrzymuje się pod przyklejonym nagłówkiem. */
#start,#seminarium,#harmonogram,#prelegenci,#o-wydarzeniu,#wartosc-uczestnictwa,
#dzialania,#archiwum,#o-nas,#projekty,#newsroom,#kontakt{scroll-margin-top:86px}
@media (max-width:700px){
  #start,#seminarium,#harmonogram,#prelegenci,#o-wydarzeniu,#wartosc-uczestnictwa,
  #dzialania,#archiwum,#o-nas,#projekty,#newsroom,#kontakt{scroll-margin-top:74px}
}

/* ==========================================================
   BCM2 2.0.5 — spójny promień + Liquid Glass
   Warstwa nad skompilowanym site.css; animacje pozostają bez zmian.
   ========================================================== */
:root{
  --bcm2-radius:24px;
  --bcm2-glass-bg:rgba(255,255,255,.72);
  --bcm2-glass-bg-soft:rgba(255,255,255,.56);
  --bcm2-glass-border:rgba(124,58,237,.16);
  --bcm2-glass-shadow:0 18px 55px rgba(91,33,182,.10);
  --bcm2-glass-highlight:inset 0 1px 0 rgba(255,255,255,.78);
  --bcm2-glass-blur:18px;
}

/* Jednolity promień wyłącznie dla boxów/kart/tabel — bez ikon, pigułek i przycisków. */
.event-date,.feature-card,.project-card,.speaker-card,.news-card,.benefit-card,
.collab-card,.agenda-days article,.registration-shell,.day-extras,.registration-summary>div,
.quote-slider,.statement,.strategy,.contact-info,.contact-form,.admin-login form,.admin-table,
.bcm2-modal-card,.bcm2-schedule-day,.bcm2-workshop-card,.bcm2-schedule-tabs{
  border-radius:var(--bcm2-radius)!important;
}

/* Liquid Glass zachowujący istniejącą fioletową paletę BCM2. */
.feature-card,.project-card,.speaker-card,.news-card,.benefit-card,.collab-card,
.event-date,.statement,.strategy,.contact-info,.contact-form,.quote-slider,
.bcm2-schedule-day,.bcm2-workshop-card,.bcm2-schedule-tabs{
  background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(248,244,255,.60));
  border:1px solid var(--bcm2-glass-border);
  -webkit-backdrop-filter:blur(var(--bcm2-glass-blur)) saturate(135%);
  backdrop-filter:blur(var(--bcm2-glass-blur)) saturate(135%);
  box-shadow:var(--bcm2-glass-highlight),var(--bcm2-glass-shadow);
}

/* ==========================================================
   Harmonogram — dwa dni przełączane tabami
   ========================================================== */
.bcm2-schedule{position:relative;overflow:hidden}
.bcm2-schedule .section-title{margin-bottom:34px}
.bcm2-schedule .section-title h2 span{color:var(--v)}
.bcm2-schedule-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}
.bcm2-schedule-meta span{
  display:inline-flex;align-items:center;padding:9px 14px;border:1px solid var(--line);
  border-radius:99px;background:rgba(255,255,255,.66);-webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);font-size:.9rem;font-weight:700
}

.bcm2-schedule-tabs{
  width:min(760px,100%);margin:0 auto 26px;padding:7px;display:grid;grid-template-columns:1fr 1fr;
  gap:7px;position:relative
}
.bcm2-schedule-tab{
  appearance:none;border:1px solid transparent;border-radius:calc(var(--bcm2-radius) - 7px);
  min-height:66px;padding:11px 18px;color:var(--muted);background:transparent;cursor:pointer;
  text-align:left;display:flex;flex-direction:column;justify-content:center;gap:2px
}
.bcm2-schedule-tab span{text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:850}
.bcm2-schedule-tab strong{font-size:.98rem;color:inherit}
.bcm2-schedule-tab.active{
  color:#fff;border-color:rgba(255,255,255,.32);
  background:linear-gradient(135deg,var(--v),var(--vd));
  box-shadow:0 10px 28px rgba(124,58,237,.25),inset 0 1px 0 rgba(255,255,255,.28)
}
.bcm2-schedule-tab:focus-visible{outline:3px solid rgba(124,58,237,.25);outline-offset:3px}
.bcm2-schedule-panel[hidden]{display:none!important}

.bcm2-schedule-day{margin:0 0 26px;overflow:hidden}
.bcm2-schedule-day-head{
  display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:26px 28px;
  border-bottom:1px solid var(--bcm2-glass-border);
  background:linear-gradient(135deg,rgba(124,58,237,.10),rgba(255,255,255,.16))
}
.bcm2-schedule-day-head>div{max-width:760px}
.bcm2-schedule-day-head h3{margin:6px 0 0;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.2}
.bcm2-schedule-day-head p{margin:0;max-width:360px;text-align:right;color:var(--muted);font-size:.9rem}
.bcm2-schedule-day-no{
  display:inline-block;color:var(--v);font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase
}

.bcm2-schedule-table-wrap{width:100%;overflow-x:auto}
.bcm2-schedule-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}
.bcm2-schedule-table th{
  padding:14px 18px;text-align:left;background:rgba(124,58,237,.075);
  color:#554568;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase
}
.bcm2-schedule-table th:first-child{width:130px}
.bcm2-schedule-table th:nth-child(2){width:32%}
.bcm2-schedule-table td{
  padding:19px 18px;border-top:1px solid var(--bcm2-glass-border);
  vertical-align:top;line-height:1.55
}
.bcm2-schedule-table tbody tr:first-child td{border-top:0}
.bcm2-schedule-table tbody tr:hover{background:rgba(124,58,237,.035)}
.bcm2-time{white-space:nowrap;color:var(--v);font-weight:850;font-variant-numeric:tabular-nums}
.bcm2-topic{display:inline-block;margin-top:7px;color:var(--muted)}
.bcm2-break td{background:rgba(124,58,237,.055)}

.bcm2-workshop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:24px}
.bcm2-workshop-card{padding:24px}
.bcm2-workshop-card span{color:var(--v);font-size:.75rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.bcm2-workshop-card h4{margin:8px 0 10px;font-size:1.25rem}
.bcm2-workshop-card p{margin:0;line-height:1.55;color:var(--muted)}

@media(max-width:760px){
  .bcm2-schedule-tabs{grid-template-columns:1fr;padding:6px}
  .bcm2-schedule-tab{min-height:58px}
  .bcm2-schedule-day-head{display:block;padding:21px 20px}
  .bcm2-schedule-day-head p{margin-top:12px;text-align:left}
  .bcm2-schedule-table,.bcm2-schedule-table tbody,.bcm2-schedule-table tr,.bcm2-schedule-table td{display:block;width:100%}
  .bcm2-schedule-table thead{display:none}
  .bcm2-schedule-table tr{padding:16px 18px;border-top:1px solid var(--bcm2-glass-border)}
  .bcm2-schedule-table tbody tr:first-child{border-top:0}
  .bcm2-schedule-table td{padding:5px 0;border:0}
  .bcm2-schedule-table .bcm2-time{margin-bottom:5px;font-size:.88rem}
  .bcm2-break{background:rgba(124,58,237,.055)}
  .bcm2-workshop-grid{grid-template-columns:1fr;padding:18px}
}

@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
  .feature-card,.project-card,.speaker-card,.news-card,.benefit-card,.collab-card,
  .event-date,.statement,.strategy,.contact-info,.contact-form,.quote-slider,
  .bcm2-schedule-day,.bcm2-workshop-card,.bcm2-schedule-tabs{background:#fff}
}
