/* $Id: ig.css 953 2026-10-01 11:24:28Z ralf $  RELEASE 3.1.0 -> SVN 931 */ 
body {
	color: #999999;
	background: #000000 url(../images/ig.backtile.mix.png);
	background-position: top left;
	background-repeat: repeat;
	font-family: Helvetica, Verdana, Arial,  sans-serif;
	font-size: 11px;
	margin: 0px;
}

#ig_content{
	width: 900px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 140px; /* reserves the space #ig_header used to take up in normal flow, now that it's fixed */
}

#ig_maincontent {
	font-size: 105%;
	padding: 10px;
	margin: 25px 10px 5px 10px;	
}

#ig_sidebar_right {
	font-size: 105%;
	padding: 10px;
	margin: 25px 0px 10px 10px;	
}

#ig_footer {
	background-color: #800000;
	color: #efe5d0;
	text-align: center;
	padding: 5px;
	margin: 5px;
	font-size: 90%;
}

#ig_header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 880px;
	margin: 0 auto;
	height: 135px;
	z-index: 500;
}

#ig_sidebar_left {
	color: #ffffff;
	font-size: 105%;
	padding: 10px;
	margin: 10px 5px 10px 0px;
	/*position: fixed;*/
}

h1,h2,h3,h4,h5,h6 {
	color: #800000;
}

h1 {
	font-size: 125%;
}

h2 {
	font-size: 100%;
}

.ig_advertisement {
	text-align: center;
}
.ig_blogheader {
        background: #424242;
        color: #ffffff;
        padding: 8px 12px;
        line-height: 1.5;
}

a {
	color: #FFFFFF;
	text-decoration: none;
}

a img {
	border-style: none;
	border-color: #FFFFFF;
	}

#ig_sidebar_right {
	float: right;
	width: 220px;
}

#ig_maincontent {
	margin-right: 230px;
	margin-left: 160px;
}

#ig_sidebar_left {
	float: left;
	width: 145px;
}

.ig-social-row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 115px;
	margin-bottom: 30px;
}
.ig-social-row img {
	width: 22px;
	height: 22px;
}
.ig-center {
	text-align: center;
}

#ig_footer {
	clear: both;
}

.ig_infobox {
	border: thin dotted #800000;
	padding: 2px 5px 5px 5px;
	background: #000000;
	margin: 2px 0px 2px 0px;
}

form {
	background-color: #8c8c8c; 
	width:420px; 
	border:4px solid #800000; 
	color: black;
	padding: 2px;
}

.blogbox{
/*	border: Thin dotted #800000;*/
	padding: 2px 3px 1px 3px;
	margin: 2px 0px 2px 0px;
	scroll-margin-top: 150px; /* fixed #ig_header is 135px tall; keeps #gig-N / #ig_blog_N anchor jumps from landing under it */
}

.ig-scroll-target {
	scroll-margin-top: 150px; /* same fixed-header offset as .blogbox, for in-page anchors that aren't a blogbox (e.g. news.php's #yearNNNN jump list) */
}

.blogboxcontent{
	padding: 0px 0px 0px 10px;
}

.ig-video-wrapper{
	position: relative;
	width: 100%;
	max-width: 640px;
	aspect-ratio: 16 / 9;
	margin: 1em 0;
}
.ig-video-wrapper iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* LIGHTBOX */

#lightbox{	position: absolute;	left: 0; width: 100%; z-index: 100; text-align: center; line-height: 0;}
#lightbox img{ width: auto; height: auto;}
#lightbox a img{ border: none; }

#outerImageContainer{ position: relative; background-color: #fff; width: 250px; height: 250px; margin: 0 auto; }
#imageContainer{ padding: 10px; }

#loading{ position: absolute; top: 40%; left: 0%; height: 25%; width: 100%; text-align: center; line-height: 0; }
#hoverNav{ position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 10; }
#imageContainer>#hoverNav{ left: 0;}
#hoverNav a{ outline: none;}

#prevLink, #nextLink{ width: 49%; height: 100%; background-image: url(data:image/gif;base64,AAAA); /* Trick IE into showing hover */ display: block; }
#prevLink { left: 0; float: left;}
#nextLink { right: 0; float: right;}
#prevLink:hover, #prevLink:visited:hover { background: url(../images/prevlabel.gif) left 15% no-repeat; }
#nextLink:hover, #nextLink:visited:hover { background: url(../images/nextlabel.gif) right 15% no-repeat; }

#imageDataContainer{ font: 10px Verdana, Helvetica, sans-serif; background-color: #fff; margin: 0 auto; line-height: 1.4em; overflow: auto; width: 100%	; }

#imageData{	padding:0 10px; color: #666; }
#imageData #imageDetails{ width: 70%; float: left; text-align: left; }	
#imageData #caption{ font-weight: bold;	}
#imageData #numberDisplay{ display: block; clear: left; padding-bottom: 1.0em;	}			
#imageData #bottomNavClose{ width: 66px; float: right;  padding-bottom: 0.7em; outline: none;}	 	

#overlay{ position: absolute; top: 0; left: 0; z-index: 90; width: 100%; height: 500px; background-color: #000; }

#cookieHandler a {color:#000; text-decoration:none;}

#cookieHandler a:hover {text-decoration:underline;}

#cookieHandler div {padding:10px; padding-right:40px;}

#cookieHandler { 
   outline: 1px solid #7b92a9; 
   text-align:right; 
   border-top:1px solid #fff;
   background: black; 
   background: -moz-linear-gradient(top, #d6e0eb 0%, #f2f6f9 100%); 
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d6e0eb), color-stop(100%,#f2f6f9)); 
   background: -webkit-linear-gradient(top, #d6e0eb 0%,#f2f6f9 100%); 
   background: -o-linear-gradient(top, #d6e0eb 0%,#f2f6f9 100%);
   background: -ms-linear-gradient(top, #d6e0eb 0%,#f2f6f9 100%); 
   background: linear-gradient(to bottom, #d6e0eb 0%,#f2f6f9 100%); 
   filter: progid:DXImageTransform.Microsoft.gradient(   startColorstr='#d6e0eb', endColorstr='#f2f6f9',GradientType=0 ); 
   position:fixed;
   bottom:0px;
   left:0px;
   z-index:10000; 
   width:100%; 
   font-size:12px; 
   line-height:16px;}

#cookieHandlerCloser {
   color: #777;
   font: 14px/100% arial, sans-serif;
   position: absolute;
   right: 5px;
   text-decoration: none;
   text-shadow: 0 1px 0 #fff;
   top: 5px;
   cursor:pointer;
   border-top:1px solid white; 
   border-left:1px solid white; 
   border-bottom:1px solid #7b92a9; 
   border-right:1px solid #7b92a9; 
   padding:4px;
   background: #ced6df; /* Old browsers */
   background: -moz-linear-gradient(top, #ced6df0%, #f2f6f9 100%); 
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ced6df), color-stop(100%,#f2f6f9)); 
   background: -webkit-linear-gradient(top, #ced6df0%,#f2f6f9 100%); 
   background: -o-linear-gradient(top, #ced6df0%,#f2f6f9 100%); 
   background: -ms-linear-gradient(top, #ced6df0%,#f2f6f9 100%); 
   background: linear-gradient(to bottom, #ced6df0%,#f2f6f9 100%); 
   filter: progid:DXImageTransform.Microsoft.gradient(    startColorstr='#ced6df', endColorstr='#f2f6f9',GradientType=0 ); 
 }

#cookieHandlerCloser:hover {border-bottom:1px solid white; border-right:1px solid white; border-top:1px solid #7b92a9; border-left:1px solid #7b92a9;}

  
/* ADMIN AUTOCOMPLETE */

.ig-ac-wrapper {
    position: relative;
    display: block;
    max-width: 500px;
}
.ig-ac-results {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 50;
    background: #1a1a1a;
    border: 1px solid #800000;
    max-height: 200px;
    overflow-y: auto;
    min-width: 250px;
}
.ig-ac-item {
    padding: 4px 8px;
    cursor: pointer;
    color: #ffffff;
}
.ig-ac-item:hover {
    background: #600000;
}
.ig-ac-add {
    color: #ffcc00;
    font-style: italic;
    border-top: 1px dotted #800000;
}
 
 
/* LOGIN FORM */

.ig-login-form {
    background-color: #1a1a1a;
    width: 320px;
    border: 1px solid #800000;
    border-radius: 4px;
    color: #ffffff;
    padding: 15px;
}

.ig-login-form p {
    margin: 0 0 12px 0;
}

.ig-login-form label {
    display: block;
    margin-bottom: 4px;
    color: #cccccc;
    font-size: 90%;
}

.ig-login-form input[type="text"],
.ig-login-form input[type="password"] {
    width: 100%;
    box-sizing: border-box;
    background-color: #000000;
    border: 1px solid #555555;
    color: #ffffff;
    padding: 6px;
    font-size: 100%;
}

.ig-login-form input[type="text"]:focus,
.ig-login-form input[type="password"]:focus {
    border-color: #800000;
    outline: none;
}

.ig-login-form input[type="submit"] {
    background-color: #800000;
    color: #ffffff;
    border: none;
    padding: 8px 16px;
    cursor: pointer;
}

.ig-login-form input[type="submit"]:hover {
    background-color: #a00000;
} 


/* MULTI-SELECT TAGS */

.ig-tag-list {
    margin: 6px 0;
}
.ig-tag {
    display: inline-block;
    background: #424242;
    color: #ffffff;
    padding: 3px 8px;
    margin: 2px 4px 2px 0;
    border-radius: 3px;
    font-size: 90%;
}
.ig-tag-remove {
    cursor: pointer;
    color: #ff8888;
    margin-left: 6px;
    font-weight: bold;
}
.ig-tag-remove:hover {
    color: #ff0000;
} 
/* QUILL EDITOR (Blog) - Override fuer Dark-Theme-Konflikte */

.ql-editor {
    color: #000000 !important;
    background: #ffffff;
    min-height: 200px;
}
.ql-editor a {
    color: #0645AD !important;
}
.ql-editor p, .ql-editor li {
    color: #000000 !important;
}
.ql-toolbar.ql-snow {
    background: #eeeeee;
    border-color: #999999;
    height: 42px;
    overflow: visible;
}
.ql-container.ql-snow {
    border-color: #999999;
}
 
/* MODERN LIGHTBOX */

.ig-lightbox-img {
    cursor: zoom-in;
}
#ig-lightbox-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.9);
    z-index: 20000;
    text-align: center;
}
#ig-lightbox-overlay.open {
    display: flex;
    align-items: center;
    justify-content: center;
}
#ig-lightbox-overlay img {
    max-width: 92vw;
    max-height: 92vh;
    box-shadow: 0 0 30px rgba(0,0,0,0.8);
}
#ig-lightbox-close {
    position: absolute;
    top: 15px;
    right: 25px;
    color: #fff;
    font-size: 32px;
    cursor: pointer;
    line-height: 1;
}
 
/* BLOG IMAGE SIZING */

.blogboxcontent img,
.ig-lightbox-img {
    max-width: 460px;
    height: auto;
} 
/* BLOG POST META */

/* BLOG POST META */

.ig_blog_meta {
    font-size: 80%;
    color: #777777;
    margin-top: 12px;
}
  
/* RESPONSIVE (Mobile, <768px) */

#ig-hamburger-btn {
    display: none;
}

@media (max-width: 768px) {
    #ig_content {
        width: 100%;
        position: relative;
        overflow-x: hidden;
        display: flex;
        flex-direction: column;
        padding-top: 0; /* header is back in normal flow below this width */
    }
    #ig_header {
        order: 1;
        position: static;
        width: auto;
        margin: 0;
    }
    .blogbox {
        scroll-margin-top: 0; /* header is back in normal flow at this width, no offset needed */
    }
    .ig-scroll-target {
        scroll-margin-top: 0;
    }
    #ig_maincontent {
        order: 2;
    }
    #ig_sidebar_right {
        order: 3;
        display: block !important;
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
        box-sizing: border-box;
        padding: 10px;
    }
    #ig_sidebar_left {
        order: 4;
    }
    #ig_footer {
        order: 5;
    }
    #ig_header {
        height: auto;
    }
    #ig_header img {
        width: 100%;
        height: auto;
        max-width: 900px;
    }
    #ig_sidebar_left,
    #ig_sidebar_right {
        display: none;
    }
    #ig_maincontent {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
        box-sizing: border-box;
        padding: 10px;
        transition: transform 0.25s ease;
    }
    #ig-hamburger-btn {
        display: inline-block;
        position: fixed; /* stays visible while scrolling; header must not be transformed (would become containing block) */
        top: 10px;
        left: 10px;
        z-index: 1000;
        font-size: 32px;
        color: #ffffff;
        cursor: pointer;
        background: rgba(0,0,0,0.6);
        padding: 4px 12px;
        border-radius: 4px;
    }
    #ig_sidebar_left.ig-mobile-open {
        display: block !important;
        position: fixed;
        top: 0;
        left: 0;
        width: 250px;
        height: 100%;
        background: #000000;
        z-index: 999;
        overflow-y: auto;
        box-shadow: 2px 0 10px rgba(0,0,0,0.5);
    }
    #ig_content.ig-menu-open #ig_maincontent {
        transform: translateX(250px);
    }
    #ig_header .ig_piclink {
        display: block;
        transition: transform 0.25s ease;
    }
    #ig_content.ig-menu-open #ig_header .ig_piclink {
        transform: translateX(250px);
    }
}

/* ERROR MESSAGES */

.processerror {
    color: #ff4444;
    font-weight: bold;
}

/* FIELD-LEVEL VALIDATION ERRORS */

.ig-field-error {
    color: #ff4444;
    font-size: 85%;
    display: block;
    min-height: 1em;
}

/* FIELD HINTS (Legende unter Formularfeldern) */

.ig-field-hint {
    color: #999999;
    font-size: 85%;
    margin: 2px 0 8px 0;
}

/* DANGER ZONE (Account-Loeschung etc.) */

.ig-danger-zone {
    margin-top: 40px;
}

/* AVAILABILITY STATUS COLORS */

.ig-status-verfuegbar {
    color: #4caf50;
    font-weight: bold;
}
.ig-status-eventuell_verfuegbar {
    color: #cddc39;
    font-weight: bold;
}
.ig-status-eventuell_nicht_verfuegbar {
    color: #ff9800;
    font-weight: bold;
}
.ig-status-nicht_verfuegbar {
    color: #f44336;
    font-weight: bold;
}

/* BOOKING CALENDAR */

.ig-cal-legend-item {
    display: inline-block;
    padding: 2px 8px;
    margin-right: 8px;
    border-radius: 3px;
    font-size: 85%;
}
#ig-cal-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    max-width: 600px;
}
.ig-cal-day {
    padding: 8px 4px;
    text-align: center;
    border-radius: 3px;
    font-size: 90%;
    position: relative;
    min-height: 24px;
}
.ig-cal-day-empty {
    background: transparent;
}
.ig-cal-clickable {
    cursor: pointer;
}
.ig-cal-clickable:hover {
    outline: 2px solid #ffffff;
}
.ig-cal-bookable {
    background: #4caf50;
    color: #000000;
}
.ig-cal-tentative {
    background: #cddc39;
    color: #000000;
}
.ig-cal-unknown {
    background: #777777;
    color: #ffffff;
}
.ig-cal-notbookable {
    background: #f44336;
    color: #ffffff;
    cursor: default;
}
.ig-cal-booked {
    background: #222222;
    color: #666666;
    cursor: default;
}
.ig-cal-pending-badge {
    display: block;
    font-size: 75%;
    font-weight: bold;
    margin-top: 2px;
}
.ig-cal-day-past {
    text-decoration: line-through;
}

/* OWN BOOKING STATUS (hoechste Prioritaet in der Anzeige) */

.ig-cal-own-pending {
    background: #3f51b5;
    color: #ffffff;
    border: 2px solid #ffeb3b;
}
.ig-cal-own-admin-bestaetigt {
    background: #9c27b0;
    color: #ffffff;
    border: 2px solid #ffeb3b;
}
.ig-cal-own-bestaetigt {
    background: #009688;
    color: #ffffff;
    border: 2px solid #ffeb3b;
}

.ig-cal-own-icon {
    display: block;
    font-size: 90%;
    margin-top: 2px;
}

/* BOOKING REQUEST STATUS COLORS */

.ig-reqstatus-pending {
    color: #ffc107;
    font-weight: bold;
}
.ig-reqstatus-accepted {
    color: #4caf50;
    font-weight: bold;
}
.ig-reqstatus-declined {
    color: #f44336;
    font-weight: bold;
}

/* CALENDAR MONTH LABEL (looks like the Prev/Next buttons next to it, but isn't one) */

.ig-cal-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* ADMIN SUBPAGE HEADER (h1 + jump-to-other-subpage dropdown, all admin_*.php + my_availability.php) */

.ig-admin-pageheader {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5em 1em;
}
.ig-admin-pageheader h1 {
    margin: 0;
}
#ig-admin-subpage-nav {
    font-size: 90%;
}

/* ADMIN DASHBOARD "NEEDS ATTENTION" (admin.php) */

.ig-dash-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 12px;
    margin-bottom: 20px;
}
.ig-dash-card {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 10px 12px;
    background: #222222;
    border: 1px solid #ffc107;
    border-radius: 4px;
    text-decoration: none;
    color: inherit;
}
.ig-dash-card:hover {
    border-color: #ffe082;
}
.ig-dash-count {
    font-size: 150%;
    font-weight: bold;
    color: #ffc107;
}
.ig-dash-title {
    font-weight: bold;
}
.ig-dash-items {
    font-size: 85%;
    color: #cccccc;
}

/* ORPHANED UPLOADS (admin_blog.php) */

.ig-orphans-details {
    margin-bottom: 16px;
    padding: 8px 12px;
    background: #222222;
    border: 1px solid #444444;
    border-radius: 4px;
}
.ig-orphans-details summary {
    cursor: pointer;
    font-weight: bold;
}
.ig-orphans-badge {
    display: inline-block;
    min-width: 18px;
    padding: 0 6px;
    margin-left: 6px;
    border-radius: 10px;
    background: #ffc107;
    color: #000000;
    font-size: 85%;
    font-weight: bold;
    text-align: center;
}
.ig-orphans-hint {
    font-size: 85%;
    color: #cccccc;
}
.ig-orphans-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 14px;
    margin: 10px 0;
}
.ig-orphan-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 80%;
}
.ig-orphan-item img {
    width: 100%;
    height: 100px;
    object-fit: cover;
    border: 1px solid #444444;
    border-radius: 3px;
}
.ig-orphan-item .ig-orphan-meta {
    display: flex;
    align-items: baseline;
    gap: 6px;
    color: #cccccc;
}

/* GALLERY OVERVIEW (pictures.php) */

.ig-gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 20px;
    margin-top: 10px;
}
.ig-gallery-item {
    display: block;
    text-align: center;
}
.ig-gallery-item img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border: 2px solid #666666;
    display: block;
    margin: 0 auto 6px auto;
}
.ig-gallery-item:hover img {
    border-color: #ffffff;
}
.ig-gallery-title {
    display: block;
    color: #ffffff;
    font-weight: bold;
}
.ig-gallery-item:hover .ig-gallery-title {
    text-decoration: underline;
}
.ig-gallery-count {
    display: block;
    color: #777777;
    font-size: 90%;
}

/* DISCOGRAPHY (discography.php) */
.ig-disco-hl {
    color: #800000;
    font-weight: bold;
}
.ig-disco-bold {
    font-weight: bold;
}
.ig-disco-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}
.ig-disco-thumbs img {
    width: 48px;
    height: 48px;
    object-fit: cover;
    border: 1px solid #666666;
}
.ig-disco-thumbs a:hover img {
    border-color: #ffffff;
}
.ig-disco-body {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}
.ig-disco-side {
    flex: 0 0 200px;
}
.ig-disco-main {
    flex: 1 1 auto;
    min-width: 0;
}
.ig-disco-cover {
    display: block;
    margin: 0 0 8px 0;
}
.ig-disco-cover img {
    width: 200px;
    max-width: 200px;
    height: auto;
    display: block;
}
.ig-disco-upcoming {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin: 0 0 12px 0;
}
.ig-disco-upcoming p {
    margin: 0;
}
.ig-disco-upcoming-thumb {
    flex: 0 0 48px;
}
.ig-disco-upcoming-thumb img {
    width: 48px;
    height: 48px;
    object-fit: cover;
    display: block;
    border: 1px solid #666666;
}
.ig-disco-upcoming-thumb:hover img {
    border-color: #ffffff;
}
.ig-disco-tracks {
    margin-top: 0;
    padding-left: 24px;
}
.ig-disco-extra img {
    max-width: 460px;
    height: auto;
    margin: 4px 0;
}
.ig-disco-reviews {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
    align-items: start;
}
.ig-disco-review img {
    display: block;
    width: 100%;
    height: auto;
    margin: 4px 0;
}
.ig-disco-clear {
    clear: both;
}
@media (max-width: 768px) {
    .ig-disco-body {
        flex-direction: column;
    }
    .ig-disco-side {
        flex: none;
    }
    .ig-disco-extra img {
        max-width: 100%;
    }
    .ig-disco-reviews {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* DISCOGRAPHY ADMIN (admin_releases.php) */
.ig-rel-row {
    margin: 4px 0 10px 0;
}
.ig-rel-group {
    margin: 0 0 12px 0;
}
.ig-rel-group > summary {
    cursor: pointer;
    list-style: none;
    margin: 0 0 8px 0;
    font-size: 100%;
    font-weight: bold;
}
.ig-rel-group > summary::-webkit-details-marker {
    display: none;
}
.ig-rel-group > summary::before {
    content: "\25B8";
    display: inline-block;
    width: 1.2em;
}
.ig-rel-group[open] > summary::before {
    content: "\25BE";
}
.ig-rel-groupctl {
    margin: 4px 0 8px 0;
    font-size: 90%;
}
