@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

body {
  font-family: 'Inter', sans-serif;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  font-size: 0.95rem;
  color: #222;
}

main {
	background-size: cover;
}
/* ── Button Overrides ── */
.btn-outline-secondary {
    font-size: 12px;
    padding: 5px 12px;
    border: 0.5px solid var(--bs-border-color, #dee2e6);
    border-radius: 6px;
    background: #ffffff;
    color: var(--bs-body-color);
    transition: background 0.12s, border-color 0.12s, color 0.12s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1.4;
}
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    background: var(--bs-secondary-bg, #f8f9fa);
    border-color: #adb5bd;
    color: var(--bs-body-color);
    box-shadow: none;
}
.btn-outline-secondary:active {
    background: var(--bs-secondary-bg, #f8f9fa);
    border-color: #adb5bd;
    color: var(--bs-body-color);
    box-shadow: none;
    transform: scale(0.98);
}
.btn-outline-secondary.btn-sm {
    font-size: 12px;
    padding: 5px 12px;
}

.btn-outline-danger {
    font-size: 12px;
    padding: 5px 12px;
    border: 0.5px solid #f5c6cb;
    border-radius: 6px;
    background: transparent;
    color: #dc3545;
    transition: background 0.12s, border-color 0.12s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1.4;
}
.btn-outline-danger:hover,
.btn-outline-danger:focus {
    background: #fff5f5;
    border-color: #f5c6cb;
    color: #dc3545;
    box-shadow: none;
}
.btn-outline-danger.btn-sm {
    font-size: 12px;
    padding: 5px 12px;
}

.btn-outline-warning {
    font-size: 12px;
    padding: 5px 12px;
    border: 0.5px solid #fcd34d;
    border-radius: 6px;
    background: transparent;
    color: #92400e;
    transition: background 0.12s, border-color 0.12s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1.4;
}
.btn-outline-warning:hover,
.btn-outline-warning:focus {
    background: #fffbeb;
    border-color: #fcd34d;
    color: #92400e;
    box-shadow: none;
}

.btn-outline-success {
    font-size: 12px;
    padding: 5px 12px;
    border: 0.5px solid #6ee7b7;
    border-radius: 6px;
    background: transparent;
    color: #065f46;
    transition: background 0.12s, border-color 0.12s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1.4;
}
.btn-outline-success:hover,
.btn-outline-success:focus {
    background: #f0fdf4;
    border-color: #6ee7b7;
    color: #065f46;
    box-shadow: none;
}

/* Alle btn-sm vereinheitlichen */
.btn-sm { border-radius: 6px !important; }

/* Fokus-Ring entfernen */
.btn:focus { box-shadow: none !important; }
@media (max-width: 991px) {
    .header-section {
        display: none !important;
    }
}
.header-section {
	background-image: url("../images/bg_header.png");
    background-size: cover;
    background-position: center;
	color: white;
	padding: 3rem 0;
	text-align: center;
}
.navbar {
	font-size: small;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.content-area {
	flex: 1;
	padding: 3rem 0;
	background-color: #86b7fe24;
}
.content-card {
	background: white;
	border-radius: 10px;
	padding: 2rem;
	border: 1px solid #86b7fe6e;
	/*box-shadow: 0 4px 6px rgba(0,0,0,0.1);*/
	margin-bottom: 2rem;
}
.footer {
	background-color: #343a40;
	color: white;
	padding: 2rem 0;
	text-align: center;
	margin-top: auto;
}
/* Dropdown-Menü beim Hovern anzeigen */
.nav-item.dropdown:hover .dropdown-menu {
  display: block;
  margin-top: 0; /* optional, damit es bündig unter dem Menüpunkt bleibt */
}

/* Optional: sanfter Hover-Effekt */
.dropdown-menu {
	font-size: small;
  transition: all 0.2s ease;
}

/* TMDB-Ergebnisse */
#tmdbResults {
	overflow-y: auto;
	border: 1px solid #e0e0e0;
	padding: 0.5rem;
	border-radius: 8px;
	background: #fafafa;
	box-shadow: inset 0 1px 3px rgba(0,0,0,0.05);
}

.tmdb-item {
	display: flex;
	align-items: center;
	gap: 1rem;
	border-bottom: 1px solid #eee;
	padding: 0.5rem 0;
	transition: background 0.15s ease;
}
.tmdb-item:hover {
	background: #f0f6ff;
}

.tmdb-poster {
	width: 50px;
	height: 75px;
	object-fit: cover;
	border-radius: 4px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* Provider Logos */
.provider-logos {
	display: flex;
	gap: 0.3rem;
	flex-wrap: wrap;
}
.provider-logos img {
	width: 24px;
	height: 24px;
	border-radius: 4px;
}

/* Buttons */
.tmdb-btn-apply {
	margin-left: auto;
}

/* Stream Info */
.stream-info {
	padding: 5px;
	background-color: antiquewhite;
}

/* Overrides */
.form-control {
	padding: 5px;
	border-radius: 0px;
}
/*
.content-card {
	background-color: #fbfbfb;
	box-shadow: 6px 6px 6px rgb(0 0 0 / 41%);
	border-radius: 5px;
}
*/
.card-header {
	border-radius: 0px!important;
}
.btn {
	border-radius: 0px;
}
.dropdown-menu {
	border-radius: 0px;
}
.bg-dark {
	background-color: rgb(0 27 55) !important
}
.badge {
	border-radius: 0px!important;
}
.table {
	border-collapse: separate;
	border-spacing: 0 4px;
}

.table thead th {
	white-space: nowrap;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 0.5px;
	background-color: #003049; /* dunkleres Blau */
	color: #ffffff;
}

.table tbody tr {
	white-space: nowrap;
}

.table > :not(caption) > * > * {
	border-bottom-width: 0;
}

.table-striped tbody tr {
	background-color: #f8f9fa;
	transition: background-color 0.2s ease-in-out;
}

.table-striped tbody tr:hover {
	background-color: #e9ecef;
}

.table-link {
	text-decoration: none;
	color: inherit;
}

.page-link {
	color: black!important;
}

/* Optional: Hover-Effekte für die Extend-Buttons */
.extend-btn {
	transition: all 0.2s ease;
}

.bg-blue {
	background-color: #003049;
}

.extend-btn:hover:not(:disabled) {
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.extend-btn:active:not(:disabled) {
	transform: translateY(0);
}

.extend-btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

/* VOD Scroll Container */
.vod-scroll-container {
	display: flex;
	gap: 1rem;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 1rem 0;
	scroll-behavior: smooth;
	
	/* Schönere Scrollbar (optional) */
	scrollbar-width: thin;
	scrollbar-color: rgba(155, 155, 155, 0.5) transparent;
}

.vod-scroll-container::-webkit-scrollbar {
	height: 8px;
}

.vod-scroll-container::-webkit-scrollbar-track {
	background: transparent;
}

.vod-scroll-container::-webkit-scrollbar-thumb {
	background-color: rgba(155, 155, 155, 0.5);
	border-radius: 20px;
}

.vod-item {
	position: relative;
	flex: 0 0 auto;
	cursor: pointer;
	transition: transform 0.2s;
}

.vod-item:hover {
	transform: translateY(-5px);
}

.vod-item img {
	height: 300px;
	object-fit: cover;
	border-radius: 8px;
}

.vod-info h6 {
	margin: 0;
	font-size: 0.9rem;
}

.vod-info small {
	color: #666;
}

/* Responsive Anpassungen */
@media (max-width: 768px) {	
	.vod-item img {
		height: 167px;
	}
}

@media (max-width: 480px) {
	.vod-item img {
		height: 133px;
	}
}