/* Icon-Button zum Öffnen des Panels */
#bb-access-open-panel {
	font-size: 19px; 
    position: absolute;
    top: 50%;
    left: -58px;
    transform: translateY(-60px);
    background: #000;
    color: #fff;
    border: 2px solid #fff;
	border-right:0;
    padding: 12px 15px;
    font-weight: bold;
    cursor: pointer;
    z-index: 9999;
    border-radius: 8px 0 0 8px;
    margin: 0;
    min-width: 44px;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#bb-access-open-panel  .material-symbols-rounded{
font-size: 1em;	
}

#bb-access-open-panel:hover,
#bb-access-open-panel:focus {
    background: #333;
    outline: 3px solid #ffff00;
    outline-offset: 2px;
}

/* Panel selbst */
#bb-access-panel {
    position: fixed;
    top: 0;
    right: -400px;
   width: 400px;
    height: 100vh;
    background: #fff;
     box-shadow: 0px 0 0px rgba(0, 0, 0, 0.3);
    transition: right 0.3s ease;
    padding: 20px;
    z-index: 9998;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow: visible;
    font-family: arial;
	transition: all 1s;
}
#bb-access-panel.active{
 box-shadow: -2px 0 5px rgba(0, 0, 0, 0.3);
}
.bbaccesssidebar{
visibility:hidden; 
opacity:0; 	
transition: all 500ms;
width: 100%; 
}

.active .bbaccesssidebar{
visibility:visible; 
opacity:1; 	

transition: all 1s;
}


@media screen and (max-width: 400px) {
    #bb-access-panel {
        width: 100vw;
        right: -100vw;
    }
	
}

#bb-access-panel.active {
    right: 0;
}

#bb-access-panel h3 {
    margin-top: 0;
    font-size: 1em;
    color: #000;
    padding: 1em;
	text-transform: uppercase; 
	display: flex; 
	align-items:center;
	align-content: center;
	background-color: black; 
	color:white;
	box-sizing:border-box;
	border-radius: 0.5em;
	font-family: arial, sans-serif; 
	
 
}

/* Close Button */
#bb-access-close {
    position: absolute;
    top: 15px;
    right: 15px;
    background: #000;
    color: #fff;
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 18px;
    font-weight: bold;
	margin:0.5em;
	padding: 1rem;
	min-height: 1px;}

#bb-access-close:hover,
#bb-access-close:focus {

}

/* Schieberegler */
.access-toggle {
    display: flex;
    align-items: center;
    gap: 1em;
    margin-bottom: 0.25em;
    width: 100%;
	padding: 1em;
    width: 100%;
	background-color: #EEE; 
	box-sizing: border-box;
		border-radius: 0.5em;
}

.access-toggle label {
    color: #000;
    cursor: pointer;
}

.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
    flex-shrink: 0;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s;
    border-radius: 34px;
    border: 2px solid #999;
}

.slider:before {
    position: absolute;
    content: "";
    height: 24px;
    width: 24px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
    border: 1px solid #ccc;
}

input:checked + .slider {
    background-color: #000;
    border-color: #000;
}

input:checked + .slider:before {
    transform: translateX(26px);
}

input:focus + .slider {
    outline: 3px solid #ffff00;
    outline-offset: 2px;
}

/* Schriftgrößenregelung */
.fontsize-control {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 20px;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
	padding: 1em;
	    width: 100%;
	background-color: #EEE; 
	box-sizing: border-box; 
		border-radius: 0.5em;
}

.fontsize-control .label {
    display: block;
    width: 100%;
    text-align: center;
    font-weight: bold;
    color: #000;
    margin-bottom: 10px;
}

.fontsize-control button {
    min-width: 44px;
    min-height: 44px;
    padding: 8px 12px;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    background: #000;
    color: #fff;
    border: 2px solid #000;
    border-radius: 4px;
    margin: 0;
}

.fontsize-control button:hover,
.fontsize-control button:focus {
    background: #333;
    outline: 2px solid #ffff00;
    outline-offset: 2px;
}

.fontsize-control button:disabled {
    background: #ccc;
    color: #666;
    cursor: not-allowed;
    border-color: #ccc;
}

#bb-fontsize-display {
    font-size: 1em;
    padding: 0.5em;
    color: #000;
    min-width: 60px;
    text-align: center;
    background-color: white;
    border: 1px solid black;
}

/* Kontrastklasse */


.bbaccesscontrast {
    background: rgba(255, 255, 255, 0.95) !important;
    color: #000000 !important;
}

/* Schriftklassen */
.bbaccessfont {
    font-family: Arial, Verdana, sans-serif !important;
}

.bbaccessfont *:not(.icofont):not(.material-symbols-rounded):not(.bb_iconfont):not(.icofont-brand-youtube):not(.icofont-cart-alt):not(.icofont-thin-up):not(.icofont-ui-delete):not(.icontext):not(.icofont):not(#bb_bigboxclose):not(.icofont-simple-up) {
   font-family: Arial, Verdana, sans-serif !important;
   
    text-shadow: none;
}

/* Schwarz-Weiß-Modus */
.bbaccessgrayscale {
    filter: grayscale(1) !important;
}

.swfilter {
    display: none;
}

/* Screen Reader only content */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}





.bbaccesscontrast .bb_content,
.bbaccesscontrast .bb_content > *,
.bbaccesscontrast .textbox,
.bbaccesscontrast .show,
.bbaccesscontrast .slider-control,
.bbaccesscontrast .ce_hyperlink .hyperlink_txt,
.bbaccesscontrast .bb_headline,
.bbaccesscontrast .bb_subheadline,
.bbaccesscontrast .ce_hyperlink .hyperlink_txt,
bb_zimmer_form {
    background: rgba(255, 255, 255, 0.85) !important;
    color: #000000 !important;
}

.bbaccesscontrast .bb_zimmer_form  .bb_content > label {
background: transparent !important;	
}

.bbaccesscontrast .bb_headline b{
    color: #000000 !important;
}