/* - TGK Gesamtlayout 21.2.2025 - */
@media screen and (max-width: 500px) {
	.path-platz-buchen .dialog-off-canvas-main-canvas {
		padding-top: 63px;
		padding-bottom: 40px;
		overflow: auto;
	}
	.path-platz-buchen header, .path-platz-buchen footer {
		position: fixed;
		top: 0;	
		width: 100%;
		z-index: 5;
	}
	.path-platz-buchen footer {
		top: inherit;
		bottom: 0;
		padding: .5rem;
		/* height: 40px; */
	}
	.path-platz-buchen .navbar > .container {
		max-width: 380px;
		margin-left: 0;
	}
/*	.morgen {
		position: relative;
		right: 140px;
	} */
	
}
.navbar-dark {
	background: linear-gradient(to bottom,  #084ace 0%,#a5bcec 100%);
}
.footer-dark {
	background: linear-gradient(to top,  #084ace 0%,#a5bcec 100%);
}
.navbar-brand .site-title {
	font-size: 1rem;
}
main {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
/*
.block-page-title-block {
	padding-bottom: 1.5rem;
}
*/
.tennisplatz {
	display: table;
	margin: 0 auto;
	padding: 10px;	
}

/*
/* - TGK-Kalender - ab 12.2.2025 - */
/**/
/*
#single-day-container {
	height: auto !important;
}
.half-hour {
	display: none !important;
}
.calendar-calendar .inner {
	min-height: 2.5em;
	display: flex;
	gap: 10px;
	justify-content: center;
}
.calendar-agenda-hour,
.calendar-agenda-items.single-day {
	height: 25px !important;
}
.calendar-calendar .week-view div.single-day .view-item, 
.calendar-calendar .day-view div.single-day .view-item {
	margin-top: 0 !important;
}

.week-view tr.all-day {
	display: none;
	height: 0;
}
.week-view .calendar-agenda-hour {
	width: 100% !important;
	border-top:inherit !important;
}
.week-view th.calendar-agenda-hour {
	background: white;
}
*/
.calendar-pager__items {
	width: 100%;
	justify-content: space-between;
	margin-top: 1.5rem;
}
.calendar-pager__item-title--backwards:after {
    content: "Woche zurück";
}
.calendar-pager__item-title--forward:before {
	content: "nächste Woche";
}

/**/
/* - Fullcalendar View - */
.fc-day-grid,
.fc-time-grid-event .fc-time {
	display: none !important;
}


/**/
/*- eigener Grid - */
.morgen > .view-content > div {
	text-align: right;
}
.tennisplatz h2 {
	margin-bottom: -15px;
	font-size: 1.5em;
}
.tennisplatz .view-content table {
	box-shadow: 0px 15px 20px -0px rgba(0,0,0,0.10);
	-webkit-box-shadow: 0px 15px 20px -0px rgba(0,0,0,0.10);
	-moz-box-shadow: 0px 15px 20px -0px rgba(0,0,0,0.10);
}
.tennisplatz th {
	text-align: center;
    font-weight: 400;
    background: #eee;
    border-right: 2px solid white;
	position: -webkit-sticky;
	position: sticky;
	top: -1px;
	z-index: 2;
}
.tennisplatz th:first-child {
	z-index: 100;
	left: 0;
}
.tennisplatz tbody tr td:first-child {
    background: #eee;
    border-right: 2px solid white;
	border-bottom: 1px solid white;
	padding: 1px 5px;
	position: -webkit-sticky;
	position: sticky;
	left: 0;
	z-index: 2;
}
.tennisplatz thead {
	position: relative;
	z-index: 4;
}
.tennisplatz .view-content td {
	position: relative;
}
.zeile.beginn {
	display: flex;
	gap: 10px;
	margin-bottom: 3px;
}
.zeile.beginn h2,
.zeile.beginn h3 {
    font-size: .9em;
    text-align: right;
    white-space: nowrap;
    font-weight: normal;
	margin-bottom: 0;
}
.tennisplatzkopf .zeile > h3 {
	visibility: hidden;
}
.zeile > .views-view-grid,
.kopfzeile {
	display: flex;
	gap: 1px 2px;
}
.spalte {
	width: 60px !important;
}
.platznummer {
	font-size: .9em;
    white-space: nowrap;
	text-align: center;
}
.stundenzelle,
.zeile.Aktiviert {
    text-align: center;
    background: rgba(172, 235, 22, 0.5);
}

.stundenzelle a {
	text-decoration: none;
	display: block;
	width: 100%;
	font-size: 12px;
	padding: 3px;
}
.stundenzelle a:hover {
	background: #FC6500;
}
.stundenzelle.Aktiviert,
.stundencheckbox label {
	display: none;
}
.stundenzelle.stundencheckbox {
	padding: 3px;
}
.stundenzelle .form-item {
	margin: 0;
}
.gesperrt {
	background: red;
	color: black;
}
.gesperrt.admin {
	color: #ccc;
}
.sprung {
    visibility: hidden;
    height: 0px !important;
    position: absolute;
    margin: -30px;
}
/**/
/* - Wochenkalender mit Matrix 13.8.25 - */
/**/
.tennisplatz.tag .views-display-link {
	margin-bottom: 1em;
}
.tagschalter.flex {
	justify-content: space-between;
	margin: 2em auto .5em;
}
.view-header .views-display-link {
	display: table;
	margin: 0 auto;
	padding: .2em 1em .4em;
	text-decoration: none;
}
.view-header a.views-display-link:link,
.view-header a.views-display-link:visited {
	background: #FFaa66;
	color: white;
	border: 1px solid white;
}
.view-header a.views-display-link:hover,
.view-header a.views-display-link:focus {
	background: #eee;
	color: black;
	border: 1px solid black;
}
/* - Admin-Table - */
.stundencheckbox form {
	display: flex;
	justify-content: center;
	gap: 10px;
	font-size: .8em;
}
.namestattdeaktivieren {
	color: red;
    font-size: .95rem;
    margin-top: 3px;
	margin-left: 3px;
	top: 0;
}
.gesperrt {
	font-size: 10px;
	padding: 4px 0;
}
.notizen {
	font-size: .85em;
	max-width: 250px;
}
.achtung {
	background: rgba(197,50,40,1);
	padding: 10px;
	color: white;
}
.tipp {
	background: #BDF180;
	padding: 10px;
	margin-bottom: 20px;
}
/* - Wochenkalender - */
.woche .form--inline {
	display: flex;
	justify-content: center;
	gap: 10px;
}
.flexfilter form > .form--inline {
	display: flex;
	gap: 60px;
}
option [selected="selected"] {
	background: #eee;
}
@media screen and (min-width: 768px) {
	.gesperrt {
		padding: 7px 0;
		font-size: 11px;
		overflow: hidden;
	}
	.navbar-brand .site-title {
		font-size: 1.5rem;
	}
	.zeile.beginn h2,
	.zeile.beginn h3,
	.platznummer {	
		font-size: 1.1em;
	}
	.tennisplatz.tabelle .view-content {
		width: auto;
	}
	.tennisplatz tbody tr td:first-child {
		display: table-cell;
		padding: 0 8px;
		border-top: 2px solid white;
	}
	.stundenzelle,
	.zeile.Aktiviert {
		padding: 0;
	}
	.stundenzelle a {
		font-size: 1em;
	}
	.spalte,
	td .stundenzelle	{
		width: 9vw !important;
	}
	footer .region-footer,
	.fusszeile {
		align-items: center;
		gap: 30px;
	}
}

/* - Buchungsvorgang selbst - */
.buchung {
	padding: 1rem 2rem;
	margin-top: 2rem;
	border: 1px solid #ccc;
	display: table;
}
.buchungsflex {
	align-items: end;
	gap: 60px;
	justify-content: space-between;
}
.abbrechen {
	bottom: 0;
	right: 0;
}
.abbrechen p {
	margin-bottom: 0;
}
.buchungsbutton .form-actions a {
	visibility: hidden;
}
.buchungsbutton .registration-who-msg,
.buchungsbutton option[value="registration_registrant_type_anon"] {
	display: none;
}
.instruktionen {
	font-size: .9em;
	background: #eee;
	padding: 10px 10px 0;
	font-style: italic;
	display: table;
	margin-top: 20px;
}
.buchung .tabledrag-toggle-weight-wrapper,
.buchung td.field-multiple-drag {
	display: none;
}

/* - Tabellen im Bodytext - */
.field--name-body table tr th {
	background: rgba(0, 0, 0, 0.51) !important;
	color: white;
}
.field--name-body tr td, 
.field--name-body tr th {
    padding: 4px 9px;
    border: 1px solid #fff;
}
.field--name-body tr {
	background: rgba(0, 0, 0, 0.063)
}
/* - View Mitgliedschaft ändern - */
.mitgliedschaft .form--inline label {
	font-weight: bold;
	height: 26px;
}

/**/
/* - TGK Ende - */
/**/

.margin-bottom-1em {
	margin-bottom: 1em;
}
.margin-bottom-1-5em {
	margin-bottom: 1.5em;
}
.margin-bottom-2em {
	margin-bottom: 2em !important;
}
.kontrolle li::marker {
	font-size: 1.8rem;
}
.kontrolle form {
	padding: 1rem;
	border: 1px solid #ccc;
	margin-bottom: 2rem;
	display: table;
	background: #eee;
}
.flex {
	display: flex;
}
.gap-30 {
	gap: 30px;
}
.gap-5px {
	gap: 5px;
}
.absolute {
	position: absolute;
}
.relative {
	position: relative;
}
.align-center {
	text-align: center;
}

/**/
/* - Media-Einstellungen - */
/**/
.node--view-mode-full .field--name-body > .field__item {
	padding-bottom: 1.3em;
	clear: both;
/*	display: table; */
}
.media.align-center {
	display: table;
}
.media.align-left {
	padding-right: 1em;
}
.media.align-right {
	padding-left: 1em;
	padding-bottom: .5em;
}
.media--view-mode-colorbox-quadrat {
	width: 25%;
	padding-bottom: .5em;
	padding-top: .5em;
}
.media--view-mode-querformat,
.media--view-mode-hochkant {
	padding-bottom: .5em;
}
.align-left.media--view-mode-querformat {
	padding-right: 0;
}
.align-left.media--view-mode-hochkant {
	padding-right: 1.5em;
}
.align-right.media--view-mode-querformat {
	padding-left: 0;
}
.align-right.media--view-mode-hochkant {
	padding-left: 1.5em;
}
.caption {
	font-size: .9em;
}
figcaption {
    font-style: italic;
    line-height: normal;
    margin-top: -.5em;
    text-align: center;
	background: #FCEE50;
	padding: .5em;
	padding-top: .2em;

}

:nth-child(4n of article.media--view-mode-colorbox-quadrat) {
	/* padding-right: 0; */
}

/**/
/* ab Tablet Hochkant */
/**/
@media screen and (min-width: 576px) {
	.align-left.media--view-mode-querformat,
	.align-left.media--view-mode-hochkant,
	.caption.align-left {
		padding-right: 1.5em;
		padding-bottom: 0;
	}
	.align-right.media--view-mode-querformat,
	.align-right.media--view-mode-hochkant,
	.caption.align-right {
		padding-left: 1.5em;
		padding-bottom: 0;
	}
	.caption.align-left figcaption {
		margin-right: 1.5em;
	}
	.caption.align-right figcaption {
		margin-left: 1.5em;
	}
}

/**/
/* ab Tablet quer */
/**/
@media screen and (min-width: 768px) {
	.align-left.media--view-mode-querformat,
	.align-left.media--view-mode-hochkant {
		padding-right: 2em;
		padding-bottom: 1em;
	}
	.align-right.media--view-mode-querformat,
	.align-right.media--view-mode-hochkant {
		padding-left: 2em;
		padding-bottom: 1em;
	}
	.mitgliedschaft .form--inline {
		display: flex;
	}
	.mitgliedschaft .form--inline > .form-item {
		max-width: 220px;
	}
	.mitgliedschaft .form--inline > .form-actions {
		margin-top: 41px;
	}
	.tennisplatz .view-content td {
		min-width: 5em;
	}
}

/**/
/* - Teaser-Display aller Nodes - */
/**/
.node--view-mode-teaser .node__content > div.bild,
.vorschaubild {
	min-width: 25%;
	float: left;
	margin-right: 1em;
}

@media screen and (min-width: 768px) {
	.node--view-mode-teaser .node__content {
		display: flex;
		flex-wrap: nowrap;
		gap: .5em;
	}
}

/**/
/* - Views - */
/**/
/* kommt hier noch */



/**/
/* - EU Cookie-Banner - */
/**/
.eu-cookie-compliance-banner .popup-content {
	padding: 1em 0;
}
.eu-cookie-compliance-message p {
	font-size: 14px;
	font-weight: normal;
}
.eu-cookie-compliance-message button {
	margin-left: .5em;
}
.agree-button,
.agree-button:hover,
.decline-button:hover {
	border: 1px solid white;
	color: white;
}
.decline-button {
	text-shadow: none;
}
.agree-button:hover,
.decline-button:hover {
	color: black;
	background: rgba(255,255,255,.3);
	box-shadow: none;
	text-shadow: none;
}
/**
/* - Registrierungsvorgang - */
/**/
#edit-pass {
	padding: 1.5rem;
	background: #eee;
}
.form-check-input[type="checkbox"] {
	border-color: #333 !important;
	width: 1.2em;
	height: 1.2em;
	box-shadow: 0px 5px 20px -0px rgba(0,0,0,0.50);
	-webkit-box-shadow: 0px 5px 20px -0px rgba(0,0,0,0.50);
	-moz-box-shadow: 0px 5px 20px -0px rgba(0,0,0,0.50);
}

@media screen and (min-width: 990px) {
	.mitgliedschaft .form--inline > .form-item {
		max-width: 350px;
	}
}

/**
/* - User-Seite: 2 Reiter "Buchungen" drin - */
/**/
body.user-logged-in.path-user #block-wbdesign-local-tasks ul li:nth-last-child(2),
body.path-user #block-gin-primary-local-tasks ul li:nth-last-child(2) {
	display: none;
}