
.htp_track { 
	padding: .5rem 1rem;   
	flex-shrink: 0;
  	white-space: nowrap; 
}
h2 .htp_track { padding: 0 .5rem; }

#filters .btn { backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); }


.htp_kunst-hacken {
	background-color: rgba(var(--htp-artwork), 0);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-artwork), 0.23),
	  rgba(var(--htp-artwork), 0.00)
	);
}
.htp_party-hacken {
	background-color: rgba(var(--htp-party), 0);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-party), 0.23),
	  rgba(var(--htp-party), 0.00)
	);
}

.htp_gesellschaft-hacken {
	background-color: rgba(var(--htp-gesellschaft), 0);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-gesellschaft), 0.23),
	  rgba(var(--htp-gesellschaft), 0.00)
	);
}

.htp_technologie-hacken {
	background-color: rgba(var(--htp-technologie), 0);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-technologie), 0.23),
	  rgba(var(--htp-technologie), 0.00)
	);
}

.htp_metaebene-hacken {
	background-color: rgba(var(--htp-meta), 0);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-meta), 0.23),
	  rgba(var(--htp-meta), 0.00)
	);
}


.htp_workshop {
	background-color: rgba(var(--htp-workshop), 0.42);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-workshop), 0.23),
	  rgba(var(--htp-workshop), 0.00)
	);
}
.htp_talk {
	background-color: rgba(var(--htp-talk), 0.42);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-talk), 0.23),
	  rgba(var(--htp-talk), 0.00)
	);
}
.htp_performance {
	background-color: rgba(var(--htp-performance), 0.42);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-performance), 0.23),
	  rgba(var(--htp-performance), 0.00)
	);
}

.htp_community {
	background-color: rgba(var(--htp-community), 0.42);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-community), 0.23),
	  rgba(var(--htp-community), 0.00)
	);
}

.htp_podiumsdiskussion {
	background-color: rgba(var(--htp-podiumsdiskussion), 0.42);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-podiumsdiskussion), 0.23),
	  rgba(var(--htp-podiumsdiskussion), 0.00)
	);
}

.htp_installation {
	background-color: rgba(var(--htp-installation), 0.42);
	background-image: linear-gradient(
	  to bottom right,
	  rgba(var(--htp-installation), 0.23),
	  rgba(var(--htp-installation), 0.00)
	);
}



.preview-period #day-content a {
    pointer-events: none;
    cursor: not-allowed;
    opacity: 0.8;
}
#program {opacity: 0;}




#filters { line-height: 3.5rem; margin: 2rem 1rem 1rem; padding-top: 1rem; border-width: 1px 0 0 0; border-style: solid;
    border-image: linear-gradient(to right, transparent, rgb(var(--c-dblue)), rgb(var(--ca-pink)), rgb(var(--c-dblue)), transparent) 1; }
.page-template-page-ptx-speakers #filters { border: 0; padding-top: 0; margin-top: 0; }
#filters .btn.artwork, .entry-meta.artwork, li.artwork, .alert.artwork, .bg-soft-artwork,
.entry-meta.htpx_acts, li.htpx_acts, .alert.htpx_acts, .bg-soft-htpx_acts, li.htp_ethges.artwork {
	background-color: rgba(var(--htp-artwork),.42);
    border-color: rgba(var(--htp-artwork),.84);}

#filters .btn { color: rgb(var(--c-white)); z-index: 10; position: relative; margin-right: 1rem; transition: background-color 0.3s, background-image 0.3s; font-size: 1.1rem; font-family: var(--title-font); }
#filters .btn:focus { outline: none; box-shadow: none; }
#filters .btn i.icon { }
#filters .btn:hover { background-size: 150%; background-position-x: right; background-image: radial-gradient(circle, rgba(var(--c-white), 0.9) 0%, rgba(var(--c-white), 0) 80%); }
#filters .btn:active, #filters .btn:focus { box-shadow: 1px 1px 3px rgb(var(--ca-pink)); }


#filters .btn.htp_kultur, .entry-meta.htp_kultur, li.htp_kultur, .alert.htp_kultur, .bg-soft-htp_kultur, .htp_kultur .htp_badges .badge,
.htp_ethges.htp_kultur.slot { /* "Kultur" */
	background-color: rgba(var(--htp-ethges),.42);
    border-color: rgba(var(--htp-ethges),.84);}
#filters .btn.htp_digisev, .entry-meta.htp_digisev, li.htp_digisev, .alert.htp_digisev, .bg-soft-htp_digisev, .htp_digisev .htp_badges .badge { /* "Digitale Selbstverteidigung" */
	background-color: rgba(var(--htp-digisev),.42);
    border-color: rgba(var(--htp-digisev),.84);}
#filters .btn.htp_andere, .entry-meta.htp_andere, li.htp_andere, .alert.htp_andere, .bg-soft-htp_andere, .htp_andere .htp_badges .badge {
	background-color: rgba(var(--htp-andere),.42);
    border-color: rgba(var(--htp-andere),.84);}
#filters .btn.htp_error, .entry-meta.htp_error, li.htp_error, .alert.htp_error, .bg-soft-htp_error {
	background-color: rgba(var(--htp-error),.42);
    border-color: rgba(var(--htp-error),.84);}
#filters .btn.htp_ethges, .entry-meta.htp_ethges, li.htp_ethges, .alert.htp_ethges, .htp_ethges .htp_badges .badge {
		background-color: rgba(var(--htp-kultur),.42);
    border-color: rgba(var(--htp-kultur),.84);}

#filters .htp_socials, li.htp_digisev.socialize {
	background-color: rgba(var(--htp-socials),.42);
    border-color: rgba(var(--htp-socials),.84);}
#filters .specials {
	background-color: rgba(var(--htp-specials),.42);
    border-color: rgba(var(--htp-specials),.84);}

.talk-box.htp_ethges li { /* "Ethik & Gesellschaft" */
    border-color: rgba(var(--htp-ethges),.84) !important; }
.talk-box.htp_kultur li { /* "Kultur" */
    border-color: rgba(var(--htp-kultur),.84) !important; }
.talk-box.htp_digisev li { /* "Digitale Selbstverteidigung" */
    border-color: rgba(var(--htp-digisev),.84) !important; }
.talk-box.htp_andere li {
    border-color: rgba(var(--htp-andere),.84) !important; }
.talk-box.htp_error li {
    border-color: rgba(var(--htp-error),.84) !important; }

.schedule-item.htp_onschedule { position: relative; z-index: 9; margin: 0 0 3rem !important; }
.schedule-item.htp_onschedule.htp_kultur { background-color: rgba(var(--htp-ethges),1); border-color: rgba(var(--c-red),.84);}
.schedule-item.htp_onschedule.htp_digisev { background-color: rgba(var(--htp-digisev),1); border-color: rgba(var(--c-red),.84);}
.schedule-item.htp_onschedule.htp_andere { background-color: rgba(var(--htp-andere),1); border-color: rgba(var(--c-red),.84);}
.schedule-item.htp_onschedule.htp_error { background-color: rgba(var(--htp-error),1); border-color: rgba(var(--c-red),.84);}
.schedule-item.htp_onschedule.htp_ethges{	background-color: rgba(var(--htp-kultur),1); border-color: rgba(var(--c-red),.84);}
.schedule-item.htp_onschedule.htp_socials { background-color: rgba(var(--htp-socials),1); border-color: rgba(var(--c-red),.84);}
.schedule-item.htp_onschedule.specials { background-color: rgba(var(--htp-specials),1); border-color: rgba(var(--c-red),.84);}

.onsites .room-title { margin-bottom: 2rem; }

.htpx_actors { position: relative; }
.htpx_actors .wp-image-htp {  }
.htpx_actors > a.glitch.pic { margin-left: -200px; }

.htpx_actors .entry-meta-list.htp_slot { 
	display: inline-block;
    position: relative;
    right: 0; 
    left: auto;
}
.htpx_actors .htp-session-meta { margin-top: -1.8rem; margin-left: 0; }
.htpx_actors .htp_ptx_qrcode { margin-top: 45px;  }
.qrbadge .wp-post-image { margin: 0 10px 0; }
.qrbadge a { display: inline-block; }
.qrbadge .htp_ptx_qrcode { margin-top: 0;  }



.page-template .entry-meta, .page-template-default .entry-meta {
    background-repeat: no-repeat;
    background-size: auto;
    background-attachment: fixed;
    background-position: center top;
    background-color: transparent;
}
.page-template .entry-content {
	padding-top: 0;
}
.page-template .entry-meta.headimg, .page-template-default .entry-meta.headimg { height: 45vh; margin: 0 auto; max-width: 84vmax; }



.type-htpp .entry-meta, .page-template-default .entry-meta {
	background-position: center 2vmax;
    background-size: contain;
    background-attachment: fixed;
    background-repeat: no-repeat;
    height: 50vh;
}

.type-htpp .entry-content { margin-top: 2rem; min-height: 400px; }
.entry-meta-list.htp_slot {
	padding: 0;
    border-image: linear-gradient(var(--angle), rgb(var(--ca-pink)), transparent) 1;
    --angle2: 360deg;
    animation-name: angleRotate;
    animation-duration: 23s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    border-width: 0;
    border-style: solid; 
    margin: 0 0 2rem;
    min-height: 180px;
    /*float:right;
    width: 30vw;*/
    transition: all .23s ease;
}

.entry-content .htpx_abstract .entry-meta-list.htp_slot { 
	margin-top: -22rem;
    padding-right: 320px;
    vertical-align: top;
    display: inline-block; }

.entry-content .htpx_abstract .entry-meta-list.htp_slot p { margin-left: 7rem; }

.eeeeeeeeentry-meta-list.htp_slot:hover { 
	background-color: rgb(var(--c-dblue));
    box-shadow: rgb(var(--ca-pink)) 10px 0 2rem;
    border-width: 0;
    border-image: none;
    border-color: transparent; }

.entry-meta-list.htp_slot p { margin: .5rem 0 0 12rem; padding: 0 1rem; font-family: var(--title-font); display: inline-block; }
.page-template-page-ptx-speakers .entry-meta-list.htp_slot p { padding: 0 1rem !important; }
.page-template-page-ptx-speakers .entry-meta-list.htp_slot { font-size: 1rem; }
.page-template-page-ptx-speakers .speaker-info,.page-template-page-ptx-speakers  .slot_contain { text-align: left; }



/* Tunables */
.speaker-info {
  --collapse-h: 7.5rem;           /* collapsed height */
  --overlay-max: min(70vh, 560px); /* max expanded overlay height */
  position: relative;
}

/* Collapsed preview */
.speaker-info .speaker-bio {
  max-height: var(--collapse-h);
  overflow: hidden;
  padding-right: .25rem; /* room for fade + scrollbar reserve */
  /* nice fade at bottom to hint more content */
  -webkit-mask-image: linear-gradient(#000 70%, transparent);
          mask-image: linear-gradient(#000 70%, transparent);
  transition: box-shadow .2s ease;
}

/* Overlay on hover/focus/JS class */
.speaker-info:hover .speaker-bio,
.speaker-info:focus-within .speaker-bio,
.speaker-info.is-open .speaker-bio {
  position: relative;   /* take out of flow -> no layout shift */
  inset: 0;             /* cover the collapsed area */
  max-height: var(--overlay-max);
  overflow: none;       /* scroll inside overlay if long */
  z-index: 10;
  box-shadow: 0 12px 32px rgba(0,0,0,.2);
  -webkit-mask-image: none;
          mask-image: none;
  padding-right: .5rem; /* space for scrollbar */
}



h2.slot_contain {
	width: 100%;
  	display: flex;
  	justify-content: space-between;
  	align-items: baseline; /* Align text on the same baseline */
  	flex-wrap: wrap; /* Allow wrapping on small screens */
  	padding: 0 0 0 1rem !important;
}





.htpx_listing {
    list-style-type: none; 
    padding: 0; 
    margin: 0; 
}

.htpx_listing > li {
		list-style-type: none !important;
    background-color: rgba(var(--c-green),0.2); /* Light grey background */
    border: 1px solid #ffffff; /* Light grey border */
    padding: 0 15px; 
    margin: 1rem 1rem 1.5rem !important;
    border-radius: 5px; 
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); 
    transition: background 0.7s ease;
}


.htpx_listing > li:hover {
    background: radial-gradient(circle, 
                rgba(var(--ca-pink), 0.5) 0%, 
                rgba(var(--c-dblue), 0.2) 100%);
    /* box-shadow: 0 4px 10px rgba(var(--c-black), 0.15);  Deeper shadow on hover */
    box-shadow: rgb(var(--ca-pink)) 0 0 2rem;
}

.htpx_listing > li > a { padding: 10px 1rem; margin-bottom: 0; margin-left: -19px;
		display: inline-block;
		mask-image: url(img/htpx/2024/HTP_logo.svg);
    mask-size: cover;
    mask-repeat: no-repeat;
    mask-position: center 79%;
    -webkit-mask-image: url(img/htpx/2024/HTP_logo.svg);
    -webkit-mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center 79%;
    letter-spacing: 1px;
}
.entry-meta h3 { padding: 5px 1rem 5px 15px; margin-left: -1rem; }

p.description.htpx_talks { padding: 0; }

.htpx_listing > li > a, .entry-meta h3 { background: #000000; color: #ffffff !important; font-weight: 900; box-decoration-break: clone; }
.htpx_listing > li > a { border-bottom-right-radius: .5rem; }
.entry-meta h3 { border-top-left-radius: .5rem; }
.htpx_listing li p { margin: 1rem 0; padding: 0 !important;}
.htpx_listing li > a.glitch { position: relative; z-index: 1; margin: 0px; }
li.htpx_workshops { padding-top: 0; margin-top: 2rem; }



.language-toggle.btn.glitch { background: transparent !important; border-color: transparent !important; mask-image: none !important; -webkit-mask-image: none !important; }
.language-toggle.btn.glitch:focus { box-shadow: none; }
.type-htpp h1.entry-title { 
	margin: -20vh auto 1rem !important; 
	width: 100%; 
	padding: 30vh 20vw 10vh 10vw; 
	height: auto; font-size: 2rem; 
	/* filter: brightness(1.2) contrast(1.5) saturate(2) hue-rotate(180deg); */ 

	background-image: url('2025/objects2025-flyer.svg');
    background-repeat: no-repeat;
    background-size: 200%;
    background-position: center 69%;
    filter: opacity(1);
    z-index: -1;

}
.type-htpp .entry-title a { text-shadow: 2px 2px 0px rgb(var(--c-lblue)), 0px 0px 4px rgb(var(--c-red)) !important; }
.type-htpp .entry-meta { padding: 1rem 1rem 0; margin: 0 0 1rem; }
.type-htpp .entry-meta h3 { display: inline-block; vertical-align: top; }
.type-htpp .entry-meta li, .type-htpp .entry-meta ul { display: inline-block; line-height: 1.6rem !important; padding: .2rem .5rem; width: 88%; }

/* H2 link: clamp + graceful word breaks + hyphenation */
h2 .mbl_title {
  	display: -webkit-box;             /* enables -webkit-line-clamp */
  	-webkit-box-orient: vertical;
  	-webkit-line-clamp: 1;            /* desktop: 1 line */
  	line-clamp: 1;                    /* future syntax */
  	overflow: hidden;
  	text-overflow: ellipsis;
  	overflow-wrap: anywhere;          /* break long words/URLs */
  	hyphens: auto;                    /* needs <html lang="…"> */
  	-webkit-hyphens: auto;
  	-ms-hyphens: auto;

  	flex-shrink: 1;
  	min-width: 0; /* Important for text truncation/overflow */
  	margin-right: 12px;
  	width: 70%;
}
.single-htpp h2 .mbl_title { width: auto; }
.type-htpp a.mbl_title { color: rgb(var(--c-black)); } 

#slot_box .htp_ptx_qrcode, .htpx_abstract .htp_ptx_qrcode, .htp_slot .htp_ptx_qrcode { float: left; margin-top: -2rem; }
.htp_ptx_qrcode { width:120px; height: auto; }
.htp_ptx_qrcode g g path { fill: rgb(var(--c-lblue)); }
.htp_ptx_qrcode:hover g g path, .entry-meta-list.htp_slot:hover g g path { fill: rgb(var(--c-white)); }
.qrbadge { width: 130px; float: right; margin: 0; text-align: right; }

ul.speakers.htpx_talks { padding: 1rem 1rem 0; }

.entry-meta-list p.lang-label {  }
.entry-meta-list.htp_slot h2 { margin-bottom: 0 !important; }



.htp-presenter-avatar.alignright { width: 10vw; min-width: 180px; margin: -7vw -3vw -2rem .5rem; }
.category-kunstinstallationen .htp-presenter-avatar.alignright { width: 12vw; min-width: 200px; margin: -6rem -3vw -2rem .5rem; /* margin: 0 -3vw -10px .5rem; */ }


.type-htpp span.htpx_program { display: inline-block; margin: .5rem 0; width:100% }

.talk-box, .htpx_abstract { padding: .5rem 0; line-height: 1.5rem; }
.htpx_abstract p { text-shadow: 0 1px 1px rgb(var(--ca-pink)); }
.htpx_abstract br {
    display: block;
    content: "";
    margin-bottom: 1rem;
}

/* Alternative approach */
.htpx_abstract br::before {
    content: "\A"; /* Line break */
    white-space: pre;
}

.htpx_abstract br {
    display: block;
    margin-bottom: 1rem;
}

.htp_conf_box h5, .talk-box h3 { margin-top: 0 !important; font-size: 1rem; }
.htp_program_link { background: rgb(var(--c-white)); padding: 0 1rem; }

#day-content .font-weight-light a, .talk-box .font-weight-light a.text-reset { border-bottom: none !important; text-decoration: none; text-shadow: none; }
#day-content { border: 1px solid rgb(var(--ca-pink)); border-bottom-width: 0; border-left-width: 0; border-right-width: 0; position: relative; z-index: 42; border-radius: 1rem;  }

.wp-image-ptx-ava { max-width: 100%; width: 180px !important; }

#htp_ptx #wrapper ul li { line-height: 2rem; }
article .entry-content > ul { margin: 1rem auto; list-style: inside; }
article .entry-content ul li { line-height: 2rem !important; font-size: 1.1rem;}
#htp_ptx .talk-box li { padding: 1rem 0 0; margin: 0.5rem 0; border-bottom: 1px solid; list-style: none; }
#htp_ptx .talk-box li:hover { background-color: rgb(var(--c-white))33; }
#htp_ptx .speakergroup h3 { margin-left: -35px; }
#htp_ptx .speakergroup h3::before { content: ">>>"; color: rgb(var(--c-red)); margin-left: 0; margin-right: 7px; }
#htp_ptx .speakergroup h3::after { content: ">>>"; color: rgb(var(--c-red)); margin-left: 7px; margin-right: 0px; }
#htp_ptx .list-unstyled .border-soft-info { background: rgb(var(--c-white))cc; }
#htp_ptx .list-unstyled .border-soft-info .mb-0:nth-child(1)::before { content: ">>>"; color: rgb(var(--c-red)); margin-left: 0; margin-right: 7px; }
#htp_ptx .list-unstyled .border-soft-info .mb-0:nth-child(1)::after { content: ">>>"; color: rgb(var(--c-red)); margin-left: 7px; margin-right: 0px; }
#htp_ptx .list-unstyled .border-soft-info .mb-0:nth-child(2) a { font-weight: 300 !important; }
#htp_ptx .list-unstyled .border-soft-info .mb-0:nth-child(3) { text-align: right; }

.font-weight-light, .font-weight-light a { font-size: 1rem; }
div.mb-1 { position: absolute; bottom: 0; width: 100%; text-align: right; right: .5rem;}


#htp_ptx img.htp_ptx_logo { margin: 1rem 0 0.5rem; }
#htp_ptx tbody th.col-title {background-color: rgb(var(--c-white)); }
#htp_ptx .nav a { border-color-bottom: none; }
#htp_ptx .btn.active { background-color: rgba(var(--c-blue),.42); color: rgb(var(--c-white)); text-shadow: none !important; font-weight: 600;}

#htp_ptx #header .main-navigation a, #htp_ptx .sponsoren a { border-bottom: none; }

#htp_ptx .sticky-toptop {
        position: sticky;
        top: 0;
        z-index: 1020;
    }
}
#htp_ptx #day-list.nav {  }
#htp_ptx .table th.col-title { width: 60px; }
#htp_ptx .table, #htp_ptx .table { width: 100%; color: #212529; }
#htp_ptx #sat .table th.col-title, #htp_ptx #sun .table th.col-title { width: 60px !important; }
#htp_ptx .sticky-top.syncscroll.overflow-hidden th.col-title { width: 20px !important; }

#htp_ptx .table td.alert { height: 140px; }
#htp_ptx .table thead { background-color: #fff; }
#htp_ptx .table th { position: sticky; background-color: #fff; }
#htp_ptx .table tbody tr { border: 0; border-bottom: #f1f1f1 1px solid; background-color: #fff2f366; }
#htp_ptx .table p { padding: 0 !important; }


#htp_ptx.page-template-page-ptx-program #day-list .btn { border-color: rgb(var(--c-black)); border-top-right-radius: .5rem; padding-left: 70px; margin-top: -30px; }
#htp_ptx.page-template-page-ptx-program .btn.active {
    background-color: rgb(var(--c-white));
    text-shadow: none !important;
    font-weight: 600;
    border-color: rgb(var(--ca-pink)) !important;
    border-bottom: 1px solid rgb(var(--c-white)) !important;
    margin-bottom: -20px;
    margin-top: 5px;
    position: relative;
    height: 42px;
    z-index: 1021;
    color: rgb(var(--c-black)) !important;
}

#htp_ptx.page-template-page-ptx-program .htpx_speakers {
		white-space: nowrap;
    padding: .5rem 1rem;
    background: rgb(var(--c-black));
    color: rgb(var(--c-white)) !important;
    font-weight: 900;
    border-top-left-radius: .5rem;
    margin-left: -.5rem;
}

#htp_ptx .mb-3, #htp_ptx .my-3 {
    margin-bottom: 1rem !important;
}
#htp_ptx .justify-content-center {
    justify-content: center !important;
}

#htp_ptx #day-list.nav {
	margin-bottom: -200px !important;
    margin-top: 190px;
    top: -200px;
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    list-style: none;
    background: transparent;
    overflow: hidden;
}
h2.htp_ugc_title {
    background: rgb(var(--ca-pink)) !important;
    color: rgb(var(--c-white));
}


.htpx-meta { padding: 0; margin: 0 1rem 1rem; }

   .htpx-speakers-container {
        display: grid;
        gap: 20px;
        margin: 20px 0;
    }
    
    .htpx-speakers-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }
    
    .htpx-speakers-list {
        grid-template-columns: 1fr;
        max-width: 600px;
    }
    
    .htpx-speaker-card {
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        overflow: hidden;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    
    .htpx-speaker-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 8px 24px rgba(0,0,0,0.15);
    }
    
    .htpx-speaker-link {
        text-decoration: none;
        color: inherit;
        display: block;
    }
    
    .htpx-speaker-avatar {
        position: relative;
        width: 100%;
        height: 200px;
        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    .htpx-speaker-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .htpx-speaker-avatar-fallback {
        font-size: 48px;
        font-weight: bold;
        color: white;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
    }
    
    .htpx-speaker-info {
        padding: 20px;
    }
    
    .htpx-speaker-name {
        margin: 0 0 12px 0;
        font-size: 1.25rem;
        color: #2d3748;
        font-weight: 600;
    }
    
    .htpx-speaker-bio {
        margin-bottom: 12px;
        color: #4a5568;
        line-height: 1.5;
        font-size: 0.9rem;
    }
    
    .htpx-speaker-email,
    .htpx-speaker-code {
        font-size: 0.85rem;
        color: #718096;
        margin-bottom: 6px;
    }
.page-template-page-ptx-speakers .htpx_actors { min-height: 340px; height: auto; }
.page-template-page-ptx-speakers .htpx_actors.multislot.padelhalle.community,
.page-template-page-ptx-speakers .htpx_actors.multislot.podiumsdiskussion,
.page-template-page-ptx-speakers .htpx_actors.multislot.hauptbuehne.talk,
.page-template-page-ptx-speakers .htpx_actors.multislot.atelier-viertel-ab.talk { text-align: right; } 

.page-template-page-ptx-speakers .htpx_actors.multislot.padelhalle.community p,
.page-template-page-ptx-speakers .htpx_actors.multislot.podiumsdiskussion p,
.page-template-page-ptx-speakers .htpx_actors.multislot.hauptbuehne.talk p,
.page-template-page-ptx-speakers .htpx_actors.multislot.atelier-viertel-ab.talk p { text-align: left; margin: .5rem 200px 0 0; }

.page-template-page-ptx-speakers .htpx_actors.multislot.padelhalle.workshop .entry-meta-list.htp_slot.htp_talks.multislot { position: absolute; }

.page-template-page-ptx-speakers .entry-meta-list.htp_slot { border: none; width: 75%; margin: 0; position: absolute; }
.page-template-page-ptx-speakers .multislot .entry-meta-list.htp_slot { position: relative; left: auto; right: 0;}
.htpx_actors .description { line-height: 1.4; color: rgb(var(--c-white)); text-align: left; }
.page-template-page-ptx-speakers .htpx_actors img.wp-image-htp { float: left; margin-top: 2rem; }
.page-template-page-ptx-speakers .htpx_actors .htp_ptx_qrcode { margin-top: 0rem; }

.page-template-page-ptx-speakers .htpx_actors .htp-session-meta { margin: 2rem auto 0 2rem; }
.page-template-page-ptx-speakers .htpx_actors .htp-session-meta.noroom { margin-top: 0; }

.page-template-page-ptx-speakers .htpx_actors > a.glitch.pic { margin-top: -1rem; }
.page-template-page-ptx-speakers .entry-meta-list.htp_slot h2 { margin-top: 0; }

.page-template-page-ptx-speakers .fslightbox-slide-btn-container-previous,
.page-template-page-ptx-speakers .fslightbox-slide-btn-container-next { display: none; }

.page-template-page-ptx-talks .htp_slot,
.page-template-page-ptx-kunst .htp_slot,
.page-template-page-ptx-specials .htp_slot { padding: 1rem; background: rgb(var(--c-white)); }
.page-template-page-ptx-talks .htp-session-meta,
.page-template-page-ptx-kunst .htp-session-meta,
.page-template-page-ptx-specials .htp-session-meta { margin-bottom: 1rem; }

.artworks a.htp_speaker { position: absolute !important; left: 0; margin-left: 0 !important; }

.speaker-name a {
    color: rgb(var(--c-dblau));
    text-decoration: none;
    transition: color 0.2s ease;
    display: block;
}

.speaker-name a:hover {
    color: rgb(var(--c-dblue));
}

.htp_backlinks { margin: 20rem 0 0; }

.htpx_speakers {
    grid-column: 1 / -1;
    margin-bottom: 1rem;
    border-bottom: 2px solid #e74c3c;
    padding-bottom: 10px;
}

.speaker-badge {
    background-image: url(2025/objects2025-flyer.svg);
    background-repeat: no-repeat;
    background-size: 200%;
    background-position: center center;
    background-position: var(--random-x, 50%) var(--random-y, 50%);
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.speaker-badge:nth-child(4n+1) { background-position: 10% 25%; }
.speaker-badge:nth-child(4n+2) { background-position: 75% 40%; }
.speaker-badge:nth-child(4n+3) { background-position: 30% 80%; }
.speaker-badge:nth-child(4n+4) { background-position: 90% 15%; }

.speaker-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}
.htp-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px;
    padding: 20px;
    position: relative;
}

.htp-gallery-item {
    position: relative;
    width: 315px; /* Square size */
    height: 315px; /* Square size */
    overflow: hidden;
    cursor: pointer;
    /* transition: all 0.4s ease-in-out; */
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); /* Smoother easing */
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 1;
    margin: 0 auto;

    /* Prevent layout shifts */
    will-change: transform, width, height, z-index;
    transform: translateZ(0); /* Hardware acceleration */
    backface-visibility: hidden;
}
.page-template-page-ptx-kunst .htp-gallery-item:hover,
.page-template-page-ptx-talks .htp-gallery-item:hover,
.page-template-page-ptx-specials .htp-gallery-item:hover { width: 100%; height: auto; }
.page-template-page-ptx-kunst .htp-gallery-item:hover .htp-gallery-share-buttons,
.page-template-page-ptx-talks .htp-gallery-item:hover .htp-gallery-share-buttons,
.page-template-page-ptx-specials .htp-gallery-item:hover .htp-gallery-share-buttons { display: none; }


.entry-meta-list .htp-gallery-item, .artworks .htp-gallery-item { width: 160px; height: 160px; display: inline-block;}

.single-htpp .entry-meta-list .htp-gallery-item { margin-top: -2rem; }

.page-template-page-ptx-speakers .htpx_listing > li { border: none; }
.page-template-page-ptx-speakers .entry-meta-list .htp-gallery-item { margin: -3rem 0 0 3rem; }
.page-template-page-ptx-speakers .htp-gallery-share-buttons { display: none; }
.page-template-page-ptx-speakers .entry-meta-list .htp-gallery-item { width: 200px; height: 200px; margin: -6rem 0 0 0; }
.page-template-page-ptx-speakers .artworks .htp-gallery-item { width: 200px; height: 200px; margin: -3rem 0 0 0; }
.page-template-page-ptx-speakers .artworks.multislot .htp-gallery-item { margin: 0 0 0 2rem; }

.page-template-page-ptx-speakers .entry-meta-list.htp_slot.multislot { position: relative; } 

.htp-gallery-image-container {
    width: 100%;
    height: 100%;
    overflow: hidden;
    transform: translateZ(0); /* Hardware acceleration */
}

.htp-gallery-image-container a {
    display: block;
    width: 100%;
    height: 100%;
}

.htp-gallery-image-container img {
    width: 100%;
    max-width: 1200px;
    height: 100%;
    max-height: 630px;
    object-fit: cover; /* Crops from center to maintain square */
    object-position: center;
    /* transition: transform 0.4s ease-in-out; */
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform: translateZ(0); /* Hardware acceleration */
}



.htp-gallery-item::before {
    content: '';
    position: absolute;
    top: -50vh;
    left: -50vw;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    pointer-events: none;
    opacity: 0;
    /* transition: all 0.4s ease-in-out; */
    transition: opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Add a invisible placeholder that maintains the grid space */
.htp-gallery-item::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
    z-index: -2;
}

/* Ensure lightbox appears above everything */
.fslightbox-container {
    z-index: 10000 !important;
}

/* Lightbox close button styling */
.fslightbox-toolbar-button.fslightbox-close {
    z-index: 10001 !important;
    background: rgba(0, 0, 0, 0.8) !important;
    border-radius: 50% !important;
    width: 40px !important;
    height: 40px !important;
}

.fslightbox-toolbar-button.fslightbox-close:hover {
    background: rgba(0, 0, 0, 1) !important;
}

/* Add a placeholder to prevent layout shift */
.htp-gallery-item::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
}

.htp-gallery-item .htp-gallery-share-buttons {
	margin-top: -2rem;
	position: relative;
	z-index: 999999;
}

.htp-gallery-item .htp-gallery-item .htp-gallery-share-buttons { display: none; }


.htp-gallery-share-buttons { background: #ffffff; /* border-top: 1px inset #00ffff; background: rgba(var(--ca-green),0.23); background: linear-gradient(0deg, rgba(var(--ca-cyan),0.42) 0%, rgba(var(--ca-green),0.42) 100%); */ }
.channels { text-align: center; padding: .5em 0; display: flex; justify-content: space-evenly; width:100%; }
.channels svg { height: 16px; width: 16px; fill: rgba(var(--c-dblue)); stroke: rgb(var(--c-red)); stroke-width: .2;}
.channels svg:hover { fill: rgb(var(--ca-pink)) !important; stroke: rgb(var(--c-white)); stroke-width: .1;}
.channels li { display: flex; text-align: center; }
.channels a { color: rgba(var(--ca-pink),0.5); text-decoration: none; display: block; }
.channels a:hover, .channels a:focus { color: rgb(var(--ca-pink)); }

.lightbox-share-buttons svg { height: 42px; width: 42px; fill: rgba(var(--c-white)); stroke: rgb(var(--c-red)); }
.htp-gallery-item:hover .htp-gallery-share-buttons .channels { padding: 1em 0; }
.htp-gallery-item:hover .htp-gallery-share-buttons { margin: -5rem .5vmax; }

/* Lightbox share buttons */
.lightbox-share-buttons {
    position: absolute;
    bottom: 19vh;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10002;
    display: flex;
    gap: 10px;
    padding: 15px;
    backdrop-filter: blur(10px);
    width: 100%;
}

.lightbox-share-buttons a {
    display: inline-block;
    transition: all 0.3s ease;
    text-decoration: none;
    font-weight: bold;
}

.lightbox-share-buttons a:hover {
    transform: scale(1.1);
}


.fslightbox-fade-in-strong {
	border: solid 1px rgba(var(--ca-pink), 0.8);
    box-shadow: 0 0 11rem rgba(var(--ca-pink), 0.8);
}

.fslightbox-open #header { background: transparent; z-index: 99999; }
.fslightbox-open #menu, .fslightbox-open #search-icon { display: none; }
.fslightbox-nav { top: 190px !important; right: 60px !important; left: auto !important; }

.lightbox-share-buttons svg {}

.fslightbox-container::before {
	content: "";
    position: fixed;
    width: 250%;
    height: 200%;
    top: -50%;
    left: -65%;
    background-image: url(2025/objects2025-flyer.svg);
    background-repeat: no-repeat;
    background-size: 200%;
    background-position: center center;
    background-position: var(--random-x, 50%) var(--random-y, 50%);
    filter: opacity(0.6);
    z-index: -1;
}

.blur-gradient {
    --blur-strength: 2vw;
    --gradient-direction: to top;
    --gradient-start: transparent;
    --gradient-end: black;
    --gradient-midpoint: 80%;
    
    position: relative;
}

.blur-gradient::before {
    content: '';
    position: absolute;
    inset: 0;
    backdrop-filter: blur(var(--blur-strength));
    -webkit-backdrop-filter: blur(var(--blur-strength));
    mask: linear-gradient(var(--gradient-direction), 
        var(--gradient-start) 0%, 
        var(--gradient-end) var(--gradient-midpoint), 
        var(--gradient-end) 100%);
    -webkit-mask: linear-gradient(var(--gradient-direction), 
        var(--gradient-start) 0%, 
        var(--gradient-end) var(--gradient-midpoint), 
        var(--gradient-end) 100%);
    pointer-events: none;
    z-index: 1;
}








.htpx_speakers_box {
    display: grid;
    gap: 2rem;
    margin: 2rem 0;
}

/* Default: auto-fit for any number of speakers */
.htpx_speakers_box {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

/* Specific adjustments based on approximate count */
.htpx_speakers_box .speaker-badge:only-child {
    /* Single speaker: take full width */
    grid-column: 1 / -1;
    max-width: 100%;
}

/* For exactly 2 speakers */
.htpx_speakers_box .speaker-badge:nth-child(2):last-child {
    grid-template-columns: repeat(2, 1fr);
}

/* For exactly 3 speakers */
.htpx_speakers_box .speaker-badge:nth-child(3):last-child {
    grid-template-columns: repeat(3, 1fr);
}

/* For exactly 4 speakers - create 2x2 grid */
.htpx_speakers_box .speaker-badge:nth-child(4):last-child {
    grid-template-columns: repeat(2, 1fr);
}

.htpx_speakers {
    grid-column: 1 / -1;
    margin-bottom: 1rem;
    border-bottom: 2px solid #e74c3c;
    padding-bottom: 10px;
}


.single-htpp .floatthumb .htp-gallery-item { }


/* Mobile responsiveness */
@media (max-width: 767px) {
    .htpx_speakers_box {
        grid-template-columns: 1fr !important;
        gap: 15px;
    }
    .speaker-badge { padding: 0; }
    .description.htpx_acts { padding: 0 .5rem .5rem; }
  	.h2-container {
    	flex-direction: column; /* Stack on very small screens if needed */
  	}
  
  	.htp_track {
    	margin-top: 4px; /* Add space when stacked */
    	align-self: flex-end; /* Keep right-aligned when stacked */
  	}
  	.single-htpp .htp-gallery-item { position: relative !important; right: auto; }



}

.speaker-info, .slot_contain {
    text-align: center;
}






.type-htpp .glitch:hover::before {
    content: attr(data-text);
    position: absolute;
    left: 2px;
    text-shadow: -1px 0 red;
    top: 0;
    color: inherit;
    background: inherit;
    overflow: hidden;
    clip: rect(0, 900px, 0, 0);
    animation: noise-anim 2s infinite linear alternate-reverse;
}

@keyframes noise-anim {
    0% { clip: rect(0, 9999px, 0, 0); }
    5% { clip: rect(0, 9999px, 16px, 0); }
    10% { clip: rect(0, 9999px, 13px, 0); }
}

 

.schedule-captions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 1rem 0;
    padding: 0.5rem;
    background: rgb(var(--c-white));
}

.schedule-captions h5 {
    margin: 0;
    padding: 0;
    margin-right: 1rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: rgb(var(--c-dblue));;
    white-space: nowrap;
}

.schedule-captions > div {
    display: inline-flex;
    align-items: center;
    min-width: 0; /* Crucial for text truncation */
    max-width: 200px;
    padding: 0.4rem 0.8rem;
    border-radius: .5rem 0 0 .5rem;
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: all 0.2s ease;
    border: 1px solid rgba(var(--c-lblue), .5);
    box-shadow: 0 1px 3px rgba(var(--c-black),0.05);
}

.schedule-captions .schedule-htp_kultur.htp_kultur { display: none; }

/* Hover effects */
.schedule-captions > div:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(var(--c-black),0.1);
}

/* Specific border colors based on classes */



.htp_ethges-body #htpsignbg, .page-template-page-ptx-kunst #htpsignbg { fill: rgba(var(--htp-kultur),.99); stroke: rgba(0,0,0,1);stroke-width: 0.1; fill-opacity: 0.99; }
.htp_kultur-body #htpsignbg { fill: rgba(var(--htp-ethges),.99); stroke: rgba(0,0,0,1);stroke-width: 0.1; fill-opacity: 0.99; }
.htp_digisev-body #htpsignbg { fill: rgba(var(--htp-digisev),.99); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.99; } /* yellow */ 
.htp_andere-body #htpsignbg { fill: rgba(var(--htp-andere),.99); stroke: rgba(0,0,0,1);stroke-width: 0.1; fill-opacity: 0.99; }
.htp_error-body #htpsignbg { fill: rgba(var(--htp-error),.99); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.99; }
.page-template-page-ptx-program #htpsignbg { fill: rgba(255,255,255,1); stroke: rgba(var(--c-red),1); stroke-width: 0.23; fill-opacity: 0.99; } 

.btn.htp_ethges i.icon { background: rgb(var(--htp-kultur)); fill: rgba(var(--htp-kultur),.84); stroke: rgba(0,0,0,1);stroke-width: 0.1; fill-opacity: 0.84; }
.btn.htp_kultur i.icon { background: rgb(var(--htp-ethges)); fill: rgba(var(--htp-ethges),.84); stroke: rgba(0,0,0,1);stroke-width: 0.1; fill-opacity: 0.84; }
.btn.htp_digisev i.icon { background: rgb(var(--htp-digisev)); fill: rgba(var(--htp-digisev),.84); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.84; } /* yellow */ 
.btn.htp_andere i.icon { background: rgb(var(--htp-andere)); fill: rgba(var(--htp-andere),.84); stroke: rgba(0,0,0,1);stroke-width: 0.1; fill-opacity: 0.84; }
.btn.htp_error i.icon { background: rgb(var(--htp-error)); fill: rgba(var(--htp-error),.84); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.84; }
.btn.htp_socials i.icon { background: rgb(var(--htp-socials)); fill: rgba(var(--htp-socials),.84); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.84; }
.btn.specials i.icon { background: rgb(var(--htp-specials)); fill: rgba(var(--htp-specials),.84); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.84; }
.btn.htp_none i.icon { background: rgb(var(--htp-unknown)); fill: rgba(var(--htp-unknown),.84); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.84; }
.btn.artwork i.icon { background: rgb(var(--htp-artwork)); fill: rgba(var(--htp-artwork),.84); stroke: rgba(0,0,0,1); stroke-width: 0.1;fill-opacity: 0.84; }

.btn.htp_none { margin-left: -45px; font-size: 1.2rem !important; line-height: 2 !important; height: inherit; min-height: inherit !important; padding-left: 5% !important; }



/* pretalx integration */
.htp_schedule_table .badge { font-size: 0.9rem; }

.htp-session-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    /*justify-content: flex-end;*/
    gap: 12px;
    margin: 0 0 0 120px;
    width: fit-content;
    background: rgb(var(--c-white));
    padding: .5rem;
}

.htp-time-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: rgb(var(--c-dblue));
    text-decoration: none;
    font-size: 0.9em;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.htpx_actorrrrrrs::before {
    content: "";
    position: fixed;
    width: 250%;
    height: 200%;
    top: -50%;
    left: -65%;
    background-image: url(2025/objects2025-flyer.svg);
    background-repeat: no-repeat;
    background-size: 200%;
    background-position: center center;
    background-position: var(--random-x, 50%) var(--random-y, 50%);
    filter: opacity(0.6);
    z-index: -1; 
}

.htp-time-badge i {
    font-size: 0.95em;
    color: rgb(var(--c-dblue));
}

.htp-day {
    font-weight: 500;
}

.htp-time { color: rgb(var(--c-lblue)); }

/* For H2 context */
h2 .htp-session-meta {
    margin: 0 25vw 0 auto;
    float: right;
}



span.htp_kunst-hacken { color: rgba(var(--htp-artwork), 84); }
span.htp_party-hacken { color: rgba(var(--htp-party), 84); }
span.htp_gesellschaft-hacken { color: rgba(var(--htp-gesellschaft), 84); }
span.htp_technologie-hacken { color: rgba(var(--htp-technologie), 84); }
span.htp_metaebene-hacken { color: rgba(var(--htp-meta), 84); }

li.htpx_actors.kunst-hacken { border-color: rgba(var(--htp-artwork), 84) !important; }
li.htpx_actors.party-hacken { border-color: rgba(var(--htp-party), 84) !important; }
li.htpx_actors.gesellschaft-hacken { border-color: rgba(var(--htp-gesellschaft), 84) !important; }
li.htpx_actors.technologie-hacken { border-color: rgba(var(--htp-technologie), 84) !important; }
li.htpx_actors.metaebene-hacken { border-color: rgba(var(--htp-meta), 84) !important; }


li.htpx_actors.notrack.noroom {  }
li.htpx_actors.artworks { background: rgba(var(--ca-pink),.5); text-align: right; }
.artworks .entry-meta-list.htp_slot p { margin: 0 200px 0 0; text-align: left; }

.htpx_listing > li.kunst-hacken:hover { background: radial-gradient(circle, rgba(var(--htp-artwork), 0.7) 0%, rgba(var(--c-dblue), 0.2) 100%) !important;
.htpx_listing > li.party-hacken:hover { background: radial-gradient(circle, rgba(var(--htp-party), 0.7) 0%, rgba(var(--c-dblue), 0.2) 100%) !important;
.htpx_listing > li.gesellschaft-hacken:hover { background: radial-gradient(circle, rgba(var(--htp-gesellschaft), 0.7) 0%, rgba(var(--c-dblue), 0.2) 100%) !important;
.htpx_listing > li.technologie-hacken:hover { background: radial-gradient(circle, rgba(var(--htp-technologie), 0.7) 0%, rgba(var(--c-dblue), 0.2) 100%) !important;
.htpx_listing > li.metaebene-hacken:hover { background: radial-gradient(circle, rgba(var(--htp-meta), 0.7) 0%, rgba(var(--c-dblue), 0.2) 100%) !important;


.schedule-captions .border-soft-kunst { border-left: 3px solid rgb(var(--htp-artwork)); }
.schedule-captions .border-soft-party { border-left: 3px solid rgb(var(--htp-party)); }
.schedule-captions .border-soft-gesellschaft { border-left: 3px solid rgb(var(--htp-gesellschaft)); }
.schedule-captions .border-soft-technologie { border-left: 3px solid rgb(var(--htp-technologie)); }
.schedule-captions .border-soft-metaebene { border-left: 3px solid rgb(var(--htp-meta)); }


/* Targets the first row, and within it the first <td> that has a rowspan of 2 */
.htp_schedule_table tr td[rowspan="2"], .sticky-top.syncscroll .htp_schedule_table head tr th.htp_room_schedule { width: 90%; }

.htp_schedule_table { font-size: 1rem; }
.htp_schedule_table.hours .badge { font-size: .9rem; padding: .3rem .5rem; }
.htp_schedule_workshop { background-color: rgba(var(--htp-workshop),.42);border-color: rgba(var(--htp-workshop),.84);}
.htp_schedule_andere { background-color: rgba(var(--htp-andere),.42);border-color: rgba(var(--htp-andere),.84);}
.htp_schedule_talk { background-color: rgba(var(--htp-talks),.42);border-color: rgba(var(--htp-talks),.84);}
.htp_schedule_performance { background-color: rgba(var(--htp-performance),.42);border-color: rgba(var(--htp-performance),.84);}
.htp_schedule_table h6 { font-size: .9rem; }

.htp_gesellschaft {}
.schedule-htp_gesellschaft {background-color: rgba(var(--htp-gesellschaft),.42);border-color: rgba(var(--htp-gesellschaft),.84);}
.htp_meta {}
.schedule-htp_meta {background-color: rgba(var(--htp-meta),.42);border-color: rgba(var(--htp-meta),.84);}
.htp_diy {}
.schedule-htp_diy {background-color: rgba(var(--htp-diy),.42);border-color: rgba(var(--htp-diy),.84);}
.htp_art {}
.schedule-htp_art {background-color: rgba(var(--htp-art),.42);border-color: rgba(var(--htp-art),.84);}
.htp_h4ck {}
.schedule-htp_h4ck {background-color: rgba(var(--htp-h4ck),.42);border-color: rgba(var(--htp-h4ck),.84);}
.htp_kids {}
.schedule-htp_kids {background-color: rgba(var(--htp-kids),.42);border-color: rgba(var(--htp-kids),.84);}
.htp_bio {}
.schedule-htp_bio {background-color: rgba(var(--htp-bio),.42);border-color: rgba(var(--htp-bio),.84);}
.htp_a11y {}
.schedule-htp_a11y {background-color: rgba(var(--htp-a11y),.42);border-color: rgba(var(--htp-a11y),.84);}
.htp_howto {}
.schedule-htp_howto {background-color: rgba(var(--htp-howto),.42);border-color: rgba(var(--htp-howto),.84);}
.htp_future {}
.schedule-htp_future {background-color: rgba(var(--htp-future),.42);border-color: rgba(var(--htp-future),.84);}

th.htp_room_schedule, .alert.htp_kultur, td.p-0:not(.col-space) { max-width: 33%; }
th.col-title.col-fix-schedule, .sticky-top.syncscroll .htp_schedule_table .col-title { width: 90px !important; }

.schedule-captions .htp_kultur.border-soft- { display: none !important; }

a.htpx_speakers_text { font-family: var(--text-font) !important; font-size: .9rem; color: rgb(var(--c-dblue)) !important; text-shadow: none; }




h3.htp_submission_title { font-size: 1rem; display: inline-block; }
ul.submission { display: inline-block; }
.submissions, .htpx_listing.schedule_list .description { border-top: 1px solid; border-image: linear-gradient(to right, transparent, rgb(var(--c-green)), rgb(var(--ca-cyan)), rgb(var(--c-green)), transparent) 1; background: #ffffff99; }
.submissions li { margin-left: 0 !important; }
.submissions a { text-shadow: none; background: none; }
a.htpx_submission { color: rgb(var(--ca-pink)); }
.submissions a {}
.htp_slot { padding: 0 0 1rem; line-height: 1.5; }

.fslightbox-caption {
    position: absolute;
    bottom: 20px;
    color: white;
    text-align: center;
    width: 100%;
    font-size: 16px;
    background-color: rgba(0, 0, 0, 0.5); /* Optional: to create a background */
    padding: 10px;
}
.fslightbox-source { max-width: 1200px; height: auto !important; }



/* Hyphenation for longer words */
.schedule-captions > div {
    hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
}


/* Optional: Add tooltip for truncated text */
.schedule-captions > div {
    position: relative;
}

.schedule-captions > div:hover::after {
    content: attr(class);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    padding: 4px 8px;
    background: #2d3748;
    color: white;
    font-size: 0.75rem;
    border-radius: 4px;
    white-space: nowrap;
    z-index: 1000;
    margin-bottom: 5px;
}

/* Alternative: Show full text on hover
.schedule-captions > div:hover {
    overflow: visible;
    white-space: normal;
    z-index: 100;
    max-width: none;
}
*/





    /* Responsive adjustments */
    @media (max-width: 1199px) {
        .entry-meta-list { }
    }


    



/* Responsive design */
/* Mobile responsiveness */
@media (max-width: 768px) {



    .type-htpp .entry-meta { height: 38vh; }
    .entry-meta-list.htp_slot { width:100%; }
	.type-htpp h2 .mbl_title { -webkit-line-clamp: 2; line-clamp: 2; }
	#slot_box.container { padding: 0; }



    .htp-session-meta {
        justify-content: flex-start;
        margin: 15px 0;
    }
    
    .htp-room {
        width: 100%;
        order: 2;
        margin-top: 8px;
        text-align: left;
    }
    
    .htp-time-badge {
        order: 1;
        padding: 6px 10px;
        font-size: 0.85em;
    }

    h2 .htp-session-meta {
        float: none;
        width: 100%;
        margin-top: 10px;
    }

    .htpx-speakers-grid {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    }
    
    .htpx-speaker-avatar {
        height: 160px;
    }

	.page-template .entry-meta.headimg, .page-template-default .entry-meta.headimg { height: 60vh; margin-top: 0; padding-top: 42vh; width: 100%; }
	.page-template .entry-meta, .page-template-default .entry-meta { background-position: center 17rem; background-size: 125%;}

    .schedule-captions {
        gap: 6px;
        padding: 0.4rem;
    }
    
    .schedule-captions h5 {
        font-size: 0.8rem;
        margin-right: 8px;
    }
    
    .schedule-captions > div {
        padding: 0.3rem 0.6rem;
        font-size: 0.8rem;
        max-width: 150px;
    }
}

@media (max-width: 576px) {
    .schedule-captions {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
    
    .schedule-captions h5 {
        margin-bottom: 8px;
        margin-right: 0;
    }
    
    .schedule-captions > div {
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }
    
    /* Stack items vertically on very small screens */
    .schedule-captions {
        flex-direction: column;
        align-items: stretch;
    }
    
    .schedule-captions > div {
        margin: 2px 0;
    }
}

@media (max-width: 480px) {
    .htpx-speakers-grid {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 1200px) {


  	.entry-content .htpx_abstract .entry-meta-list.htp_slot p { margin-left: 0rem;}
  	.htpx_abstract .htp-session-meta { margin-left: 1rem; background: #ff9900 !important; }

}