
.cookie-control 			{ position:fixed; z-index:11; top:0; width:100%; left:0; min-height:200px; background:rgb(50,50,50); display:none; max-height:100vh; overflow:scroll; }
.cookie-control.active 		{ display:block; }
.cookie-control .cc-inner	{ margin:0 auto; max-width:1100px; padding: 40px; }

/*.tx-aecookies-show .cookie-control .btn-wrap 			{ max-width:800px; }*/

.cs-more-info 				{ font-weight:bold; text-decoration:underline; cursor:pointer; }
.tx-aecookies-show p 		{ font:400 0.875rem/1.25em Arial, sans-serif; color:white; margin:0; padding-bottom:5px; }
.tx-aecookies-show b,
.tx-aecookies-show strong 	{ font-size:1.25rem; line-height:1.3em; hyphens:none; }
.tx-aecookies-show hr 		{ border-color:white; }

/*.cookie-control,*/
.cookie-settings 					{ position:fixed; left:0; top:0; width:100%; height:100%; z-index:-1; opacity:0; pointer-events:none; }
#cccs { z-index:1000; opacity:1; pointer-events:all; }
.cookie-control.active,
.cookie-settings.active 			{ z-index:11; opacity:1; pointer-events:all; }
.cookie-control .cs-parent-wrap,
.cookie-settings .cs-parent-wrap 	{ position:absolute; background:rgb(50,50,50); top:50%; left:50%; width:600px; min-width:33vw; min-height:400px; max-height:90vh; max-width:100vw; transform:translate(-50%, -50%); overflow:scroll; }
.cookie-control .cs-outer-wrap,
.cookie-settings .cs-outer-wrap 	{ display:block; width:600px; min-width:33vw; min-height:400px; max-height:90vh; max-width:100vw; }
.cookie-control .cs-info,
.cookie-control .cs-inner-wrap,
.cookie-settings .cs-info,
.cookie-settings .cs-inner-wrap 	{ padding:40px; color:white; }
.cookie-control .checkbox-wrap		{ display:inline-block; position:relative; padding-right:1em; }
.cookie-settings .checkbox-group-wrap,
.cookie-control .checkbox-group-wrap { display:block; margin:30px 0; }
.cookie-settings .checkbox-wrap 	{ display:block; position:relative; padding-right:1em; }
.cookie-control .cs-bg,
.cookie-settings .cs-bg 			{ position:fixed; left:0; top:0; z-index:0; width:100vw; height:100vh; background:rgba(50,50,50,0.95); }

.checkbox-wrap .inner-label 		{ display:inline-block; padding:0 0 0 .6em; font:400 0.875rem/1.25em Arial, sans-serif; }
.checkbox-wrap input 				{ position:absolute; left:0; top:0; width:13px; height:13px; border:0 none; margin:0; border-radius:0; box-sizing:inherit; }
.checkbox-wrap .cat-title 			{ display:block; padding:10px 0 10px; font-size:1rem; font-weight:bold; }
/*.cookie-control .checkbox-wrap .cat-title 		{ display:block; padding:0 0 10px; font-size:0.875rem; font-weight:normal; }*/
/*.cookie-control .checkbox-wrap .cat-definition 		{ display:none; }*/

.cookie-settings .cat-opener 			{ display:block; position:relative; left:calc(100% - 15px); top:-35px; width:30px; height:30px; cursor:pointer; }
.cookie-settings .cat-opener:after 		{ display:block; content:''; position:absolute; left:50%; top:50%; width:10px; height:10px; border-right:2px solid white; border-bottom:2px solid white; transform:translate(-50%,-50%) rotate(45deg); transform-origin:66% 66%; transition:all 0.2s ease-in-out; }
.cookie-settings .cat-opener.open:after 	{ transform:translate(-50%,-50%) rotate(225deg); }
.cookie-settings .cat-definition 		{ display:block; position:relative; top:-20px; height:0; overflow:hidden; transition:all 0.2s ease-in-out; }
.cookie-settings .cat-opener.open + .cat-definition 		{ height:auto; overflow:hidden; }
.checkbox-wrap { display:inline-block; cursor:pointer; -webkit-tap-highlight-color:transparent; }
.checkbox-wrap i { position:relative; display:inline-block; width:28px; height:16px; background:transparent; border-radius:10px; border:1px solid white; vertical-align:text-bottom; transition:all 0.3s linear; }
.checkbox-wrap i:before { content:""; position:absolute; left:0; top:0; width:0; height:0; background:transparent; border-radius:9px; transform:translate(22px, 9px); transition:all 0.25s linear; }
.checkbox-wrap i:after { content:""; position:absolute; left:0; top:0; width:12px; height:12px; background-color:#fff; border:0 none; border-radius:6px; transform:translate(2px, 2px); transition:all 0.2s ease-in-out; }
.checkbox-wrap:active i:after { width:16px; transform:translate(2px, 2px); }
.checkbox-wrap:active input:checked + i:after { transform:translate(14px, 2px); }
.checkbox-wrap input { opacity:0; pointer-events:none; } /* 10.11.2026: statt display:none, damit die Schalter per Tastatur erreichbar bleiben */
.checkbox-wrap input:checked + i {  }
.checkbox-wrap-1 { pointer-events:none; }
.checkbox-wrap-1 i { opacity:.5; }
.checkbox-wrap input:checked + i:before { transform:translate(0px, 0px); width:28px; height:16px; background:white; }
.checkbox-wrap input:checked + i:after { transform:translate(14px, 2px); background:rgb(50,50,50); }
.cookie-settings .checkbox-wrap input:checked + i:before { transform:translate(0px, 1px); }
.cookie-settings .checkbox-wrap input:checked + i:after { transform:translate(14px, 3px); }
.cookie-settings .checkbox-wrap i:after { transform:translate(2px, 3px); }
.cookie-settings .checkbox-wrap:active i:after { transform:translate(2px, 3px); }
.cookie-settings .checkbox-wrap:active input:checked + i:after { transform:translate(14px, 3px); }

.tx-aecookies-show .btn-wrap 		{ display:block; font-size:0; width:calc(100% + 40px); margin:40px 0 0 -20px; }
.tx-aecookies-show .c-lnk 			{ display:inline-block; padding:0; margin:0 1.5em 0 0; font:400 .875rem/1.3em Arial, sans-serif; background:transparent; color:white; cursor:pointer; text-decoration:underline; }
.tx-aecookies-show .c-btn 			{ display:inline-block; width:calc(50% - 82px); padding:0 20px; margin:5px 20px 0 20px; height:48px; font:400 .875rem/50px Arial, sans-serif; border:1px solid white; background:transparent; color:white; cursor:pointer; text-align:center; max-width:220px; }
.cookie-control .c-btn.c-btn-all,
.cookie-settings .c-btn.c-btn-all 	{ background:white; color:rgb(50,50,50); }

.cookie-control-changer 			{ position:fixed; z-index:11; left:0; bottom:0; width:auto; height:auto; }
.cookie-control-changer .ccc-wrap	{ background:rgb(50,50,50); padding:0; font:400 0.875rem/1.25em Arial, sans-serif; color:white; cursor:pointer; }
.cookie-control-changer .ccc-btn 	{ display:block; padding:10px; }
#c-none,
#c-none-cc 							{ margin-top:20px; }

#ccc.cookie-settings dl 				{ display:block; outline:1px solid white; }
#ccc.cookie-settings dt,
#ccc.cookie-settings dd 				{ display:inline-block; float:none; vertical-align:top; padding:10px; font:400 0.875rem/1.25em Arial, sans-serif; }
#ccc.cookie-settings dt 				{ width:calc(30% - 20px); }
#ccc.cookie-settings dd 				{ width:calc(70% - 20px); margin:0; }

#ccc.cookie-settings .cs-info 			{ display:none; position:absolute; top:0; left:0; width:calc(100% - 80px); min-height:100%; /*overflow:scroll;*/ background:rgb(50,50,50); }
#ccc.cookie-settings .cs-info.active 	{ display:block; }

#ccc.cookie-settings .c-close 			{ position:absolute; top:10px; right:15px; width:20px; height:20px; cursor:pointer; }
#ccc.cookie-settings .c-close:before 	{ content:""; display:block; position:absolute; top:50%; right:0; transform:rotate(45deg); height:2px; width:100%; background:white; }
#ccc.cookie-settings .c-close:after 	{ content:""; display:block; position:absolute; top:50%; left:0; transform:rotate(-45deg); height:2px; width:100%; background:white; }

/* Barrierefreiheit (10.11.2026): Bedienelemente sind <button> statt <span>; Optik bleibt, Tastatur und Screenreader funktionieren. */
.tx-aecookies-show button.c-btn,
.tx-aecookies-show button.c-lnk,
.tx-aecookies-show button.ccc-btn,
.tx-aecookies-show button.cat-opener,
.tx-aecookies-show button.c-close 	{ -webkit-appearance:none; appearance:none; box-sizing:content-box; border-radius:0; font-family:Arial, sans-serif; }
.tx-aecookies-show button.c-lnk,
.tx-aecookies-show button.ccc-btn,
.tx-aecookies-show button.cat-opener,
.tx-aecookies-show button.c-close 	{ border:0 none; background:transparent; color:inherit; }
.tx-aecookies-show button.cat-opener,
.tx-aecookies-show button.c-close 	{ padding:0; }
.cookie-control-changer button.ccc-btn { font:inherit; color:inherit; text-align:left; }
.tx-aecookies-show :focus-visible 	{ outline:3px solid white; outline-offset:2px; }
.checkbox-wrap input:focus-visible + i { outline:3px solid white; outline-offset:3px; }

@media screen and (max-width:800px){
	.tx-aecookies-show .c-btn 		{ width:calc(100% - 82px); margin-bottom:20px; }
	.checkbox-wrap label 			{ font-size:0.75rem; line-height:1.125rem; }
	.cookie-control-changer .ccc-wrap 	{ line-height:1.125em; font-size:0.75rem; }
	.cookie-control-changer .ccc-btn 	{ padding:6px; }
}