/**********************************
    Listen Navigation
**********************************/

.listen-navigation-container {
    padding: 20px;
    width: 300px;
    counter-reset: section-counter; /* Initialisiert den Zähler für die gesamte Navigation */
}

.listen-navigation-section {
    margin-bottom: 20px;
}

.listen-navigation-title {
    margin: 0;
    padding: 10px 0;
    font: 700 18px var(--main-font2);
    display: block;
    letter-spacing: 2px;
    margin-bottom: 25px;
    text-transform: uppercase;
    color: var(--color-main);
    padding-bottom: 5px;
    border-bottom: 1px solid var(--color-main);
}

.listen-navigation-list {
    list-style: none; /* Standardmäßige Listennummerierung deaktivieren */
    padding: 0;
    margin: 10px 0 0 0;
}

.listen-navigation-item {
    font-size: 11px;
    padding: 8px 0;
    cursor: pointer;
    color: var(--color-main);
    counter-increment: section-counter; /* Zähler wird inkrementiert */
    position: relative;
}

.listen-navigation-container {
    counter-reset: section-counter; /* Reset counter */
}

.listen-navigation-item:before {
    /* Force numbers to always have two digits with a period */
    content: counter(section-counter, decimal-leading-zero) ".";
    color: var(--color-main);
    margin-right: 11px;
    font-weight: bold;
    display: inline-block;
    width: 3ch; /* Ensure consistent spacing */
    text-align: right; /* Align text to the right */
}

.listen-navigation-item {
    counter-increment: section-counter; /* Increment counter */
}

.listen-navigation-item a {
    color: var(--color-accent1);
    text-decoration: none;
    position: relative;
    font-size: 10px;
    font-weight: 800;
}

.listen-navigation-item a:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    border-radius: 4px;
    background-color: var(--color-main);
    bottom: -5px;
    left: 0;
    transform-origin: right;
    transform: scaleX(0);
    transition: transform .3s ease-in-out;
}

.listen-navigation-item a:hover::before {
    transform-origin: left;
    transform: scaleX(1);
}

.listen-navigation-item a:hover {
    color: var(--color-main);
    cursor: pointer;
    transition: 1s ease-in-out;
}


/*       Reservierungen       */

.lists_content-tabbuttons {
	list-style-type: none;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--base-gap);
	margin: 0;
	padding: 0;
}

.reservation-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--base-gap);
}

.reservation-box {
box-sizing: border-box;
  background-color: var(--color-background-opac);
  background-blend-mode: overlay;
  background-attachment: fixed;
  background-image: var(--div-bg);
  color: var(--color-main);
}

.reservation-box.reservation-add {
	grid-column: 1 / -1;
}

.reservation-box.reservation-add .reservation-inner form {
	padding: var(--base-gap);
	display: flex;
	flex-direction: column;
	gap: var(--base-gap);
}
.reservation-box.reservation-add .res-selection {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: var(--base-gap);
}

.reservation-box.reservation-add .res-inputs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--base-gap);
	width: 100%;
}

.reservation-box.reservation-add .res-input {
	flex: 1;
}
.reservation-box.reservation-add .res-input input {
	display: block;
	width: 100%;
}
.reservation-box.reservation-add .res_label--main {
	display: block;
	font-weight: 700;
	margin-bottom: 5px;
}

.reservation-type {
	text-transform: uppercase;
	font-weight: 700;
	padding: 10px var(--base-gap);
	background-color: var(--color-accent1);
  background-blend-mode: multiply;
  background-image: var(--accent-bg);
  background-attachment: fixed;
}

.res-name-options {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: var(--base-gap);
}
.res-name {
	font-weight: 700;
	text-transform: uppercase;
}

.res-options a i {
	color: var(--primary);
	transition: color 0.3s ease;
}
.res-options a:hover i {
	color: var(--secondary);
}

.res-user-info {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	align-items: center;
	color: var(--secondary);
}
.res-user-info a {
	color: var(--secondary);
	transition: color 0.3s ease;
}
.res-user-info a:hover {
	color: var(--primary);
}

.res_bit {
	padding: 10px var(--base-gap);
}

.res_bit:not(:last-child) {
	    border-bottom: 1px solid var(--color-opac-border);

}

.res-type-name {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 18px;
	width: fit-content;
	max-width: 100%;
	display: block;
	grid-column: 1 / -1;
	    border-bottom: 1px solid var(--color-opac-border);

	padding-bottom: 5px;
}

.res-type-name:not(:first-of-type) {
	margin-top: 30px;
}


/* Character Grid Layout */
.entity-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
}

.entity-list {
	margin-top:15px;
	margin-bottom:15px;
}

/* Card styling */
.entity-card {
    display: flex;
box-sizing: border-box;
  background-color: var(--color-background-opac);
  background-blend-mode: overlay;
  background-attachment: fixed;
  background-image: var(--accent-bg);
  color: var(--color-main);
min-height:80px;
	max-height:100px;

}

/* Right info area */
.entity-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-size: 0.95em;
}

.entity-name {
   text-transform: uppercase;
  font-family: var(--main-font2);
	color: var(--color-main3);
  font-weight: 600;
  letter-spacing: 1px;
	font-size:12px;
background-color: var(--color-accent1);
  background-blend-mode: multiply;
  box-sizing: border-box;
  background-image: var(--accent-bg);
  background-attachment: fixed;
	height:35px;
	padding:10px;
}

.entity-description {
    font-style: italic;
		padding:10px;

}

/**********************************
    FaceClaim
**********************************/

.faceclaim-row {
          display: grid;
          grid-template-columns: 1fr 1fr 1fr;
          gap: 4px;
          align-items: start;
      }

      /* Responsive für kleinere Bildschirme */
      @media (max-width: 768px) {
          .faceclaim-row {
              grid-template-columns: 1fr;
              gap: 10px;
          }
      }
.lists-content-item {
padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px solid var(--color-opac-border);
} 


.lists-content-item b {
	color: var(--color-main);
	font-weight:400;
}

.namen-row {
          display: grid;
          grid-template-columns: 1fr 1fr 1fr;
          gap: 20px;
          align-items: start;
          margin-bottom: 20px;
      }
      
      .nachnamen-row {
          display: grid;
          grid-template-columns: 1fr 1fr 1fr 1fr;
          gap: 15px;
          align-items: start;
      }

      /* Responsive für kleinere Bildschirme */
      @media (max-width: 768px) {
          .namen-row, .nachnamen-row {
              grid-template-columns: 1fr;
              gap: 10px;
          }
      }

/* ==========================================
   UPDATED RESIDENCE LIST STYLING
   Clean approach like species list
   ========================================== */

.residence-wrapper {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}

.residence-main-title {
    font-family: 'scotland', serif;
    font-size: 68px;
    font-weight: 400;
    color: var(--color-main);
    text-transform: lowercase;
    font-style: italic;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
}

.residence-main-title::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
    height: 3px;
    background: var(--color-accent1);
}

.residence-decorative-element {
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: center;
    width: 100%;
    margin: 40px 0;
}

.residence-decorative-line {
    width: 80px;
    height: 4px;
    background-color: var(--color-main);
    flex-shrink: 0;
}

.residence-decorative-symbols {
    display: flex;
    gap: 8px;
    color: var(--color-main);
    font-size: 18px;
    font-weight: 700;
    font-family: var(--main-font);
}

.residence-decorative-plus {
    opacity: 1;
}

/* Two column grid for cities */
.residence-cities-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    margin-bottom: 40px;
}

.residence-city-container {
    background-color: var(--color-accent1);
    background-blend-mode: multiply;
    background-attachment: fixed;
    background-image: var(--accent-bg1);
    background-position: 80% 33%;
    border: 1px solid var(--color-opac-border);
    overflow: hidden;
    position: relative;
    transition: none !important;
    transform: none !important;
    display: flex;
    flex-direction: column;
}

.residence-city-container:hover {
    transform: none !important;
    transition: none !important;
    border-color: var(--color-opac-border) !important;
}

.residence-city-header {
    background: var(--color-accent1);
    color: var(--color-main);
    padding: 15px 25px;
    font-size: 16px;
    font-family: var(--main-font);
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
    transition: none !important;
    transform: none !important;
}

.residence-city-header:hover {
    color: var(--color-main) !important;
    transform: none !important;
    transition: none !important;
}

.residence-city-header-text {
    position: relative;
    z-index: 1;
}

.residence-city-residents {
    flex: 1;
    background: var(--div-bg);
    padding: 0;
    position: relative;
    z-index: 2;
}

/* Clean resident entries in rows - like species list */
.residence-resident-entry {
    display: flex;
    align-items: baseline;
    padding: 12px 20px;
    border-bottom: 1px solid var(--line1);
    gap: 20px;
    transition: none !important;
    transform: none !important;
    background: none !important;
    min-height: 45px;
}

.residence-resident-entry:hover {
    background: var(--bglist); !important;
    transform: none !important;
    transition: none !important;
}

.residence-resident-entry:last-child {
    border-bottom: none;
}

.residence-resident-name {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--color-main);
    min-width: 160px;
    flex-shrink: 0;
    font-size: 12px;
    font-family: var(--main-font);
}

.residence-resident-name a {
    color: var(--color-main);
    text-decoration: none;
    transition: none !important;
}

.residence-resident-name a:hover {
    color: var(--color-main);
    transform: none !important;
}

.residence-resident-details {
    font-style: italic;
    color: var(--color-accent1);
    opacity: 0.9;
    font-size: 11px;
    flex: 1;
    line-height: 1.4;
    font-family: var(--main-font);
}

/* Override any existing styles that might interfere */
.residence-city-residents > * {
    all: unset !important;
    display: flex !important;
    align-items: baseline !important;
    padding: 12px 20px !important;
    border-bottom: 1px solid var(--line1) !important;
    gap: 20px !important;
    transition: none !important;
    transform: none !important;
    background: none !important;
    min-height: 45px !important;
    font-family: var(--main-font) !important;
    font-size: 12px !important;
    color: var(--color-main) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.residence-city-residents > *:hover {
    background: rgba(255, 255, 255, 0.02) !important;
    transform: none !important;
    transition: none !important;
}

.residence-city-residents > *:last-child {
    border-bottom: none !important;
}

/* Various section styling */
.residence-various-section {
    grid-column: 1 / -1;
    margin-top: 30px;
}

.residence-various-title {
    background: var(--color-accent1);
    color: var(--color-main);
    padding: 15px 25px;
    font-size: 16px;
    margin-bottom: 20px;
    display: inline-block;
    font-family: var(--main-font);
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
    transition: none !important;
    transform: none !important;
}

.residence-various-title:hover {
    color: var(--color-main) !important;
    transform: none !important;
    transition: none !important;
}

.residence-various-title-text {
    position: relative;
    z-index: 1;
}

.residence-various-content {
    background: var(--div-bg);
    padding: 0;
    border: 1px solid var(--color-opac-border);
}

/* Responsive Design */
@media screen and (max-width: 1024px) {
    .residence-cities-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .residence-main-title {
        font-size: 48px;
    }
}

@media screen and (max-width: 768px) {
    .residence-main-title {
        font-size: 38px;
        margin-bottom: 30px;
    }
    
    .residence-city-header {
        padding: 12px 20px;
        font-size: 14px;
    }
    
    .residence-resident-entry {
        flex-direction: column;
        gap: 5px;
        padding: 15px 20px;
        align-items: flex-start;
    }
    
    .residence-resident-name {
        min-width: auto;
        margin-bottom: 3px;
    }
    
    .residence-decorative-line {
        width: 60px;
        height: 3px;
    }
}

@media screen and (max-width: 479px) {
    .residence-main-title {
        font-size: 28px;
    }
    
    .residence-city-header {
        padding: 10px 15px;
        font-size: 13px;
    }
    
    .residence-resident-entry {
        padding: 12px 15px;
    }
    
    .residence-decorative-line {
        width: 40px;
        height: 2px;
    }
    
    .residence-decorative-symbols {
        font-size: 12px;
        gap: 6px;
    }
}
/* ==========================================
   SPECIES LIST SPECIFIC STYLING
   New classes to avoid conflicts
   ========================================== */

/* Species wrapper */
.species-list-wrapper {
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}

.species-main-title {
    font-family: 'scotland', serif;
    font-size: 68px;
    font-weight: 400;
    color: var(--color-main);
    text-transform: lowercase;
    font-style: italic;
    margin-bottom: 40px;
    text-align: center;
    position: relative;
}

.species-main-title::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
    height: 3px;
    background: var(--color-accent1);
}

.species-decorative-element {
    display: flex;
    align-items: center;
    gap: 15px;
    justify-content: center;
    width: 100%;
    margin: 40px 0;
}

.species-decorative-line {
    width: 80px;
    height: 4px;
    background-color: var(--color-main);
    flex-shrink: 0;
}

.species-decorative-symbols {
    display: flex;
    gap: 8px;
    color: var(--color-main);
    font-size: 18px;
    font-weight: 700;
    font-family: var(--main-font);
}

.species-decorative-plus {
    opacity: 1;
}

/* Two column grid for species */
.species-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    margin-bottom: 40px;
}

.species-category-box {
    background-color: var(--color-accent1);
    background-blend-mode: multiply;
    background-attachment: fixed;
    background-image: var(--accent-bg1);
    background-position: 80% 33%;
    border: 1px solid var(--color-opac-border);
    overflow: hidden;
    position: relative;
    transition: none !important;
    transform: none !important;
    display: flex;
    flex-direction: column;
}

.species-category-box:hover {
    transform: none !important;
    transition: none !important;
    border-color: var(--color-opac-border) !important;
}

.species-category-header {
    background: var(--color-accent1);
    color: var(--color-main);
    padding: 15px 25px;
    font-size: 16px;
    font-family: var(--main-font);
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
    transition: none !important;
    transform: none !important;
}

.species-category-header:hover {
    color: var(--color-main) !important;
    transform: none !important;
    transition: none !important;
}

.species-category-content {
    flex: 1;
    background: var(--div-bg);
    padding: 0;
    position: relative;
    z-index: 2;
}

/* Character entries in clean rows */
.species-character-entry {
    display: flex;
    align-items: baseline;
    padding: 12px 20px;
    border-bottom: 1px solid var(--line1);
    gap: 20px;
    transition: none !important;
    transform: none !important;
    background: none !important;
}

.species-character-entry:hover {
    background: var(--bglist);
    transform: none !important;
    transition: none !important;
}

.species-character-entry:last-child {
    border-bottom: none;
}

.species-character-name {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--color-main);
    min-width: 160px;
    flex-shrink: 0;
    font-size: 12px;
    font-family: var(--main-font);
}

.species-character-name a {
    color: var(--color-main);
    text-decoration: none;
    transition: none !important;
}

.species-character-name a:hover {
    color: var(--color-main);
    transform: none !important;
}

.species-character-description {
    font-style: italic;
    color: var(--color-accent1);
    opacity: 0.9;
    font-size: 11px;
    flex: 1;
    line-height: 1.4;
    font-family: var(--main-font);
}

/* Hide any dashes or separators */
.species-character-entry .dash,
.species-character-entry > span:contains("-") {
    display: none;
}

/* Responsive design */
@media screen and (max-width: 1024px) {
    .species-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media screen and (max-width: 768px) {
    .species-main-title {
        font-size: 38px;
        margin-bottom: 30px;
    }
    
    .species-character-entry {
        flex-direction: column;
        gap: 5px;
        padding: 15px 20px;
        align-items: flex-start;
    }
    
    .species-character-name {
        min-width: auto;
        margin-bottom: 3px;
    }
    
    .species-decorative-line {
        width: 60px;
        height: 3px;
    }
}

@media screen and (max-width: 479px) {
    .species-main-title {
        font-size: 28px;
    }
    
    .species-category-header {
        padding: 12px 20px;
        font-size: 14px;
    }
    
    .species-character-entry {
        padding: 12px 15px;
    }
    
    .species-decorative-line {
        width: 40px;
        height: 2px;
    }
    
    .species-decorative-symbols {
        font-size: 12px;
        gap: 6px;
    }
}