* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

html {
  min-height: 100%;
}

body {
  margin: 0;
  padding: 0;
  font-family: Arial, sans-serif;
  background: radial-gradient(circle at top, #202040, #080808 70%);
  color: #fff;
  min-height: 100vh;
}

.site-shell {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.site-header,
.site-footer {
  width: 100%;
}

/* Platzhalter für spätere Inhalte */
.site-header-inner,
.site-footer-inner {
  max-width: 980px;
  margin: 0 auto;
  padding: 0;
}

.site-main {
  flex: 1;
  width: 100%;
}

.page-home .site-main {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 90vh;
  text-align: center;
  padding: 20px 0;
}

.page-support .site-main {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 18px;
}

/* Startseite */

     .page-home {
        margin: 0;
        padding: 0;
        font-family: Arial, sans-serif;
        background: #000;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 90vh;
        text-align: center;
    }

    .container {
        width: 90vw;
        max-width: 90vw;
        padding: 20px;
    }

    h1 {
        font-size: 2rem;
        margin-bottom: 40px;
        color: #00eaff;
        text-shadow: 0 0 10px #00eaff, 0 0 20px #ff00ff;
    }

    .button {
        display: block;
        width: 90%;
        padding: 20px;
        margin: 15px 0;
        font-size: 1.2rem;
        font-weight: bold;
        text-decoration: none;
        border-radius: 15px;
        transition: 0.3s;
    }
.playlist {
    background: linear-gradient(45deg, #00ff88, #00eaff);
    color: #000;
    box-shadow: 0 0 15px #00ff88;
}
    .farmer {
        background: linear-gradient(45deg, #00eaff, #0077ff);
        color: #000;
        box-shadow: 0 0 15px #00eaff;
    }

    .jenny {
        background: linear-gradient(45deg, #ff00ff, #ff4d9d);
        color: #000;
        box-shadow: 0 0 15px #ff00ff;
    }

    .shop {
        background: linear-gradient(45deg, #ffd700, #ff8c00);
        color: #000;
        box-shadow: 0 0 15px #ff00ff;
    }
    
    .whatsapp {
        background: linear-gradient(45deg, #25D366, #00ffcc);
        color: #000;
        box-shadow: 0 0 15px #25D366;
    }

    .button:hover {
        transform: scale(1.05);
        box-shadow: 0 0 25px #fff;
    }



    .profile-links {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 18px;
        flex-wrap: wrap;
        margin: 0 auto 28px;
    }

    .profile-link {
        
        
        border-radius: 22px;
        display: block;
        position: relative;
        overflow: hidden;
        background: #000;
        border: 2px solid rgba(255,255,255,0.14);
        box-shadow: 0 0 14px rgba(0,234,255,0.45), 0 0 24px rgba(255,0,255,0.25);
        transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    }

    .profile-link::before {
        content: "";
        position: absolute;
        inset: -2px;
        background: linear-gradient(135deg, #00eaff, #ff00ff, #00ffcc);
        opacity: 0.25;
        z-index: 0;
    }

    .profile-link img {
        position: relative;
        z-index: 1;
        
        
        display: block;
        object-fit: cover;
        border-radius: 20px;
    }

    .profile-link:hover {
        transform: translateY(-4px) scale(1.06);
        border-color: rgba(255,255,255,0.65);
        box-shadow: 0 0 18px #00eaff, 0 0 34px #ff00ff, 0 0 44px rgba(0,255,204,0.45);
    }

    .profile-link:active {
        transform: scale(0.98);
    }

    










/* Bild-Link-Reihe: immer 3 nebeneinander */











/* Obere Bildlinks: immer exakt 3 nebeneinander */
.image-link-row {
    width: 100%;
    max-width: 390px;
    margin: 0 auto 32px auto;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center;
    align-items: center;
    gap: clamp(6px, 2vw, 15px);
}

.image-link-row .image-card {
    display: block !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: 120px;
    aspect-ratio: 1 / 1;
    text-decoration: none;
}

.image-link-row .image-card img {
    display: block !important;
    width: 100% !important;
    max-width: 120px;
    height: auto !important;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 16px;
    box-shadow:
        0 0 8px rgba(0, 234, 255, 0.9),
        0 0 18px rgba(255, 0, 255, 0.55);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.image-link-row .image-card img:hover {
    transform: scale(1.06);
    box-shadow:
        0 0 12px rgba(255, 0, 255, 1),
        0 0 26px rgba(0, 234, 255, 0.85);
}

@media (max-width: 360px) {
    .image-link-row {
        max-width: 96vw;
        gap: 5px;
    }
}



/* Kommentar Generator */

    *{
      box-sizing:border-box;
      -webkit-tap-highlight-color:transparent;
    }

     .page-support{
      margin:0;
      font-family:Arial,sans-serif;
      background:
        radial-gradient(circle at top,#202040,#080808 70%);
      color:white;
      min-height:100vh;
      padding:18px;
      display:flex;
      justify-content:center;
      align-items:center;
    }

    .box{
      width:100%;
      max-width:500px;
      background:rgba(20,20,28,0.95);
      border-radius:26px;
      padding:22px;
      box-shadow:
        0 0 30px rgba(0,180,255,0.2),
        0 0 40px rgba(255,0,120,0.15);
      border:1px solid rgba(255,255,255,0.08);
    }

    /* Spotify Banner */

    .spotify-banner{
      background:
        linear-gradient(
          135deg,
          rgba(255,0,120,0.85),
          rgba(0,180,255,0.85)
        );

      border-radius:22px;
      padding:14px;
      display:flex;
      align-items:center;
      gap:14px;
      margin-bottom:20px;

      box-shadow:
        0 0 20px rgba(0,180,255,0.2),
        0 0 30px rgba(255,0,120,0.15);
    }

    .spotify-banner img{
      width:74px;
      height:74px;
      border-radius:16px;
      object-fit:cover;
      flex-shrink:0;
    }

    .spotify-info{
      flex:1;
      min-width:0;
    }

    .spotify-info span{
      font-size:12px;
      opacity:0.9;
      display:block;
    }

    .spotify-info h2{
      margin:4px 0;
      font-size:18px;
      line-height:1.2;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }

    .spotify-info p{
      margin:0;
      font-size:13px;
      opacity:0.9;
    }

    .spotify-banner a{
      background:white;
      color:black;
      text-decoration:none;
      padding:11px 15px;
      border-radius:999px;
      font-weight:bold;
      font-size:14px;
      white-space:nowrap;
    }

    h1{
      margin:0 0 8px;
      font-size:30px;
      text-align:center;
    }

    .subtitle{
      text-align:center;
      color:#bbb;
      font-size:14px;
      margin-bottom:18px;
      line-height:1.4;
    }

    #comment{
      background:#050505;
      border:1px solid rgba(255,255,255,0.1);
      border-radius:20px;
      min-height:140px;
      padding:20px;
      display:flex;
      justify-content:center;
      align-items:center;
      text-align:center;
      font-size:22px;
      line-height:1.5;
      margin-bottom:18px;
      word-break:break-word;
    }

    button{
      width:100%;
      border:none;
      border-radius:999px;
      padding:18px;
      font-size:18px;
      font-weight:bold;
      color:white;
      cursor:pointer;

      background:
        linear-gradient(
          135deg,
          #00d4ff,
          #ff2bd6
        );

      box-shadow:
        0 8px 25px rgba(0,0,0,0.35);
    }

    button:active{
      transform:scale(0.98);
    }

    .success{
      color:#00ff99;
      text-align:center;
      margin-top:14px;
      min-height:22px;
      font-size:14px;
    }

    .info{
      margin-top:10px;
      text-align:center;
      color:#999;
      font-size:12px;
      line-height:1.4;
    }

    @media(max-width:600px){

      body{
        padding:12px;
      }

      .spotify-banner{
        flex-direction:column;
        text-align:center;
      }

      .spotify-info h2{
        white-space:normal;
      }

      .spotify-banner a{
        width:100%;
      }

      h1{
        font-size:25px;
      }

      #comment{
        font-size:19px;
        min-height:130px;
      }
    }

  

.page-home body {
  background: #000;
}

@media (max-width: 600px) {
  .page-home h1 {
    font-size: 1.6rem;
  }

  .page-home .button {
    font-size: 1rem;
    padding: 18px;
  }
}

body.page-home,
body.page-support {
  display: block;
  text-align: initial;
  padding: 0;
  min-height: 100vh;
}

body.page-home {
  background: #000;
}

body.page-support {
  background: radial-gradient(circle at top,#202040,#080808 70%);
}
*{
    box-sizing:border-box;
    -webkit-tap-highlight-color:transparent;
}

html,
body{
    margin:0;
    padding:0;
    font-family:Arial,sans-serif;
    background:
        radial-gradient(circle at top,#202040,#050505 70%);
    color:#fff;
    min-height:100vh;
}

body{
    overflow-x:hidden;
}

.site-shell{
    min-height:100vh;
    display:flex;
    flex-direction:column;
}

/* =========================
   HEADER
========================= */

.site-header{
    position:sticky;
    top:0;
    z-index:5000;

    backdrop-filter:blur(14px);

    background:
        linear-gradient(
            135deg,
            rgba(0,180,255,0.18),
            rgba(255,0,140,0.16)
        );

    border-bottom:
        1px solid rgba(255,255,255,0.08);

    box-shadow:
        0 0 25px rgba(0,180,255,0.15),
        0 0 35px rgba(255,0,120,0.08);
}

.site-header-inner{
    width:100%;
    max-width:1200px;

    margin:0 auto;

    padding:
        12px
        18px;

    display:flex;
    align-items:center;
    justify-content:center;
}

.logo-area{
    display:flex;
    align-items:center;
    gap:14px;

    text-decoration:none;
}

.site-logo{
    width:52px;
    height:52px;

    object-fit:cover;

    border-radius:18px;

    background:#000;

    border:
        2px solid rgba(255,255,255,0.12);

    box-shadow:
        0 0 14px rgba(0,234,255,0.5),
        0 0 24px rgba(255,0,255,0.28);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.logo-area:hover .site-logo{
    transform:scale(1.06);

    box-shadow:
        0 0 18px rgba(0,234,255,0.8),
        0 0 32px rgba(255,0,255,0.45);
}

.site-title{
    font-size:1.25rem;
    font-weight:700;
    letter-spacing:0.5px;

    color:#fff;

    text-shadow:
        0 0 10px #00eaff,
        0 0 20px #ff00ff;
}

/* =========================
   MAIN
========================= */

.site-main{
    flex:1;
    width:100%;
}

/* =========================
   FOOTER
========================= */

.site-footer{
    margin-top:40px;

    background:
        linear-gradient(
            135deg,
            rgba(0,180,255,0.10),
            rgba(255,0,120,0.08)
        );

    border-top:
        1px solid rgba(255,255,255,0.06);

    box-shadow:
        0 0 25px rgba(0,180,255,0.08);
}

.site-footer-inner{
    width:100%;
    max-width:1200px;

    margin:0 auto;

    padding:
        16px
        20px;

    display:flex;
    justify-content:center;
    align-items:center;
}

.impressum-link{
    color:#9fefff;

    font-size:12px;

    text-decoration:none;

    opacity:0.75;

    transition:
        opacity 0.2s ease,
        color 0.2s ease;
}

.impressum-link:hover{
    opacity:1;
    color:#fff;
}

/* =========================
   MOBILE
========================= */

@media(max-width:600px){

    .site-header-inner{
        padding:
            10px
            14px;
    }

    .logo-area{
        gap:10px;
    }

    .site-logo{
        width:44px;
        height:44px;
        border-radius:14px;
    }

    .site-title{
        font-size:1rem;
    }

    .site-footer-inner{
        padding:
            14px
            12px;
    }

    .impressum-link{
        font-size:11px;
    }
	

}
.legal-spacer{
    height:40px;
}

.legal-details{
    margin-top:10px;

    background:
        rgba(255,255,255,0.03);

    border:
        1px solid rgba(255,255,255,0.06);

    border-radius:18px;

    overflow:hidden;
}

.legal-details summary{
    cursor:pointer;

    list-style:none;

    padding:
        16px
        18px;

    font-size:14px;

    color:#9fefff;

    user-select:none;
}

.legal-details summary::-webkit-details-marker{
    display:none;
}

.legal-contact p{
    margin:10px 0;
}

/* =========================
   ADMIN
========================= */

body.admin-page .site-main{
    display:flex;
    justify-content:center;
    align-items:flex-start;
    padding:20px 12px;
}

.admin-box{
    width:100%;
    max-width:920px;
}

.admin-form{
    margin-top:20px;
    width:100%;
}

.admin-input{
    width:100%;
    padding:16px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,0.12);
    background:#050505;
    color:#fff;
    font-size:16px;
    margin-bottom:16px;
}

.admin-textarea{
    width:100%;
    height:62vh;
    min-height:460px;
    padding:16px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,0.12);
    background:#050505;
    color:#fff;
    font-size:15px;
    line-height:1.55;
    resize:vertical;
    margin-bottom:16px;
    font-family:Arial,sans-serif;
}

.admin-button{
    width:100%;
    border:none;
    border-radius:999px;
    padding:18px;
    font-size:17px;
    font-weight:bold;
    color:#fff;
    cursor:pointer;
    background:linear-gradient(135deg,#00d4ff,#ff2bd6);
    box-shadow:0 8px 25px rgba(0,0,0,0.35);
}

.admin-button:active{
    transform:scale(0.98);
}

.admin-success{
    background:rgba(0,255,153,0.12);
    color:#00ff99;
    border:1px solid rgba(0,255,153,0.25);
    padding:12px 14px;
    border-radius:14px;
    margin:16px 0;
    font-size:14px;
}

.admin-error{
    background:rgba(255,70,70,0.12);
    color:#ff7b7b;
    border:1px solid rgba(255,70,70,0.25);
    padding:12px 14px;
    border-radius:14px;
    margin:16px 0;
    font-size:14px;
}

@media(max-width:600px){

    body.admin-page .site-main{
        padding:14px 8px;
    }

    .admin-box{
        max-width:100%;
        padding:18px;
        border-radius:22px;
    }

    .admin-box h1{
        font-size:24px;
        text-align:center;
    }

    .admin-box p{
        font-size:14px;
        line-height:1.5;
    }

    .admin-textarea{
        height:66vh;
        min-height:420px;
        padding:14px;
        font-size:14px;
        line-height:1.55;
        border-radius:16px;
    }

    .admin-input{
        font-size:16px;
        padding:15px;
    }

    .admin-button{
        padding:17px;
        font-size:16px;
    }
}
/* =========================
   HAI TEASER
========================= */

/* HAI TEASER FINAL */

.hai-teaser{
    width:94%;
    max-width:520px;

    margin:
        0 auto
        42px auto !important;

    padding:
        18px
        20px !important;

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:30px;

    background:
        linear-gradient(
            135deg,
            rgba(0,210,255,0.14),
            rgba(0,255,145,0.10)
        );

    backdrop-filter:blur(10px);

    border:
        1px solid rgba(255,255,255,0.10);

    box-shadow:
        0 0 24px rgba(0,255,220,0.18),
        0 0 48px rgba(0,120,255,0.10);

    overflow:hidden;
}

.hai-teaser .hai-teaser-content{
    position:relative;
    z-index:2;

    width:100%;

    display:flex !important;
    flex-direction:row !important;

    align-items:center !important;
    justify-content:center !important;

    gap:18px !important;
}

.hai-teaser .hai-teaser-logo{
    width:120px !important;
    max-width:120px !important;

    height:auto !important;

    margin:0 !important;

    flex:0 0 120px !important;
}

.hai-teaser .hai-teaser-text{
    flex:1 !important;
    text-align:left !important;
}

@media(max-width:600px){

    .hai-teaser{
        width:95%;
        margin-bottom:36px !important;

        padding:
            16px
            16px !important;
    }

    .hai-teaser .hai-teaser-content{
        gap:12px !important;
    }

    .hai-teaser .hai-teaser-logo{
        width:82px !important;
        max-width:82px !important;

        flex-basis:82px !important;
    }

    .hai-teaser .hai-teaser-title{
        font-size:21px !important;
    }

    .hai-teaser .hai-teaser-sub{
        font-size:13px !important;
    }
}

.hai-teaser-title,
.hai-teaser-sub,
.hai-teaser-button{
    color:#fff !important;
}
/* =========================
   ADMIN BACKEND ERWEITERUNG
========================= */

.admin-topline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:18px;
}

.admin-topline h1{
    margin:0;
    text-align:left;
}

.admin-logout{
    color:#fff;
    text-decoration:none;
    font-size:13px;
    font-weight:bold;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,0.08);
    border:1px solid rgba(255,255,255,0.12);
}

.admin-stats-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin:18px 0;
}

.admin-stat-card,
.admin-panel{
    background:rgba(20,20,28,0.95);
    border:1px solid rgba(255,255,255,0.08);
    border-radius:22px;
    box-shadow:0 0 24px rgba(0,180,255,0.12),0 0 30px rgba(255,0,120,0.08);
}

.admin-stat-card{
    padding:16px;
}

.admin-stat-card span{
    display:block;
    font-size:12px;
    color:#bbb;
    margin-bottom:8px;
}

.admin-stat-card strong{
    display:block;
    font-size:30px;
    color:#9fefff;
    text-shadow:0 0 12px rgba(0,234,255,0.6);
}

.admin-panel{
    padding:18px;
    margin-top:18px;
}

.admin-panel h2{
    margin:0 0 14px;
    font-size:20px;
}

.admin-label{
    display:block;
    margin:0 0 7px;
    font-size:13px;
    color:#9fefff;
}

.admin-song-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.admin-song-card{
    display:flex;
    gap:12px;
    align-items:center;
    background:#050505;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:18px;
    padding:12px;
}

.admin-song-card img{
    width:64px;
    height:64px;
    object-fit:cover;
    border-radius:14px;
    flex-shrink:0;
}

.admin-song-card strong,
.admin-song-card span,
.admin-song-card a{
    display:block;
}

.admin-song-card strong{
    font-size:15px;
    line-height:1.3;
}

.admin-song-card span{
    color:#bbb;
    font-size:12px;
    margin-top:4px;
}

.admin-song-card a{
    color:#00eaff;
    font-size:13px;
    margin-top:7px;
    text-decoration:none;
}

@media(max-width:700px){
    .admin-stats-grid{
        grid-template-columns:1fr;
    }

    .admin-topline{
        align-items:flex-start;
        flex-direction:column;
    }

    .admin-box{
        width:100%;
    }
}

/* =========================
   ADMIN MOBILE FIX 2026-06-05
========================= */

body.admin-page{
    background:radial-gradient(circle at top,#202040,#050505 70%);
    min-height:100vh;
    overflow-x:hidden;
}

body.admin-page .site-main{
    width:100%;
    display:block;
    padding:18px 12px 32px;
}

body.admin-page .admin-box{
    width:100%;
    max-width:920px;
    margin:0 auto;
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
}

body.admin-page .admin-login-card,
body.admin-page .admin-panel,
body.admin-page .admin-stat-card{
    background:rgba(20,20,28,0.96);
    border:1px solid rgba(255,255,255,0.09);
    box-shadow:0 0 24px rgba(0,180,255,0.13),0 0 32px rgba(255,0,120,0.09);
}

body.admin-page .admin-login-card{
    width:100%;
    max-width:480px;
    margin:28px auto 0;
    padding:22px;
    border-radius:26px;
}

body.admin-page .admin-form{
    width:100%;
    margin-top:16px;
}

body.admin-page .admin-input,
body.admin-page select.admin-input{
    width:100%;
    min-height:54px;
    padding:15px 16px;
    margin:0 0 16px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,0.14);
    background:#050505;
    color:#fff;
    font-size:16px;
    outline:none;
    -webkit-appearance:none;
    appearance:none;
}

body.admin-page select.admin-input{
    background-image:linear-gradient(45deg,transparent 50%,#9fefff 50%),linear-gradient(135deg,#9fefff 50%,transparent 50%);
    background-position:calc(100% - 22px) 24px,calc(100% - 16px) 24px;
    background-size:6px 6px,6px 6px;
    background-repeat:no-repeat;
    padding-right:42px;
}

body.admin-page .admin-button{
    width:100%;
    min-height:56px;
    border:none;
    border-radius:999px;
    padding:17px 18px;
    font-size:17px;
    font-weight:700;
    color:#fff;
    cursor:pointer;
    background:linear-gradient(135deg,#00d4ff,#ff2bd6);
    box-shadow:0 8px 25px rgba(0,0,0,0.35);
}

body.admin-page .admin-topline{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:0 0 16px;
}

body.admin-page .admin-topline h1,
body.admin-page .admin-login-card h1{
    margin:0;
    font-size:clamp(25px,6vw,34px);
    line-height:1.1;
    text-align:left;
}

body.admin-page .admin-logout{
    flex:0 0 auto;
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    text-decoration:none;
    font-size:14px;
    font-weight:700;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(255,255,255,0.09);
    border:1px solid rgba(255,255,255,0.14);
}

body.admin-page .admin-stats-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin:16px 0 18px;
}

body.admin-page .admin-stat-card{
    min-width:0;
    padding:16px;
    border-radius:22px;
}

body.admin-page .admin-stat-card span{
    display:block;
    font-size:12px;
    line-height:1.3;
    color:#bbb;
    margin-bottom:8px;
}

body.admin-page .admin-stat-card strong{
    display:block;
    font-size:clamp(26px,7vw,34px);
    line-height:1;
    color:#9fefff;
    text-shadow:0 0 12px rgba(0,234,255,0.6);
}

body.admin-page .admin-panel{
    width:100%;
    padding:18px;
    margin-top:18px;
    border-radius:24px;
}

body.admin-page .admin-panel h2{
    margin:0 0 14px;
    font-size:21px;
    line-height:1.2;
}

body.admin-page .admin-label{
    display:block;
    margin:0 0 7px;
    font-size:14px;
    color:#9fefff;
}

body.admin-page .admin-song-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

body.admin-page .admin-song-card{
    width:100%;
    display:grid;
    grid-template-columns:70px minmax(0,1fr);
    gap:12px;
    align-items:center;
    background:#050505;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:18px;
    padding:12px;
}

body.admin-page .admin-song-card img{
    width:70px;
    height:70px;
    object-fit:cover;
    border-radius:14px;
}

body.admin-page .admin-song-card div{
    min-width:0;
}

body.admin-page .admin-song-card strong,
body.admin-page .admin-song-card span,
body.admin-page .admin-song-card a{
    display:block;
    overflow-wrap:anywhere;
}

body.admin-page .admin-song-card strong{
    font-size:15px;
    line-height:1.3;
}

body.admin-page .admin-song-card span{
    color:#bbb;
    font-size:12px;
    margin-top:5px;
}

body.admin-page .admin-song-card a{
    color:#00eaff;
    font-size:14px;
    margin-top:8px;
    text-decoration:none;
}

body.admin-page .admin-success,
body.admin-page .admin-error{
    margin:14px 0;
    padding:13px 14px;
    border-radius:16px;
    font-size:14px;
    line-height:1.4;
}

@media(max-width:700px){
    body.admin-page .site-header-inner{
        justify-content:flex-start;
    }

    body.admin-page .site-main{
        padding:14px 10px 28px;
    }

    body.admin-page .admin-topline{
        align-items:flex-start;
    }

    body.admin-page .admin-stats-grid{
        grid-template-columns:1fr;
    }

    body.admin-page .admin-stat-card{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:14px;
    }

    body.admin-page .admin-stat-card span{
        margin-bottom:0;
        font-size:13px;
    }

    body.admin-page .admin-panel,
    body.admin-page .admin-login-card{
        padding:16px;
        border-radius:22px;
    }

    body.admin-page .admin-song-card{
        grid-template-columns:58px minmax(0,1fr);
        gap:11px;
        padding:11px;
    }

    body.admin-page .admin-song-card img{
        width:58px;
        height:58px;
        border-radius:13px;
    }
}

@media(max-width:380px){
    body.admin-page .site-title{
        font-size:0.92rem;
    }

    body.admin-page .admin-topline{
        flex-direction:column;
    }

    body.admin-page .admin-logout{
        width:100%;
    }
}


/* =========================
   ARTIST SONG AUSWAHL
========================= */

.artist-song-area{
    width:100%;
    max-width:390px;
    margin:0 auto 34px auto;

    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:clamp(6px, 2vw, 15px);
    align-items:start;
}

.song-choice-hint{
    grid-column:1 / -1;
    margin:0 0 12px 0;
    text-align:center;

    font-size:15px;
    font-weight:bold;
    color:#9fefff;

    text-shadow:
        0 0 8px rgba(0,234,255,.8),
        0 0 14px rgba(255,0,255,.45);
}

.artist-song-block{
    width:100%;
    min-width:0;

    display:flex;
    flex-direction:column;
    align-items:center;
}

.artist-main-card{
    display:block;
    width:100%;
    max-width:120px;
    aspect-ratio:1 / 1;
    margin:0 0 8px 0;
    text-decoration:none;
}

.artist-main-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:16px;

    display:block;

    box-shadow:
        0 0 8px rgba(0,234,255,.9),
        0 0 18px rgba(255,0,255,.55);
}

.artist-song-covers{
    width:100%;

    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;
}

.song-cover-card{
    display:block;
    width:100%;
    max-width:120px;
    aspect-ratio:1 / 1;
    text-decoration:none;
}

.song-cover-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:16px;

    display:block;

    box-shadow:
        0 0 8px rgba(0,234,255,.9),
        0 0 18px rgba(255,0,255,.55);

    transition:.25s;
}

.song-cover-card img:hover{
    transform:scale(1.05);
}

.song-empty-note{
    width:100%;
    font-size:11px;
    line-height:1.3;
    color:#aaa;
    text-align:center;
    padding:6px 2px;
}

@media(max-width:600px){

    .artist-song-area{
        max-width:96vw;
        gap:7px;
    }

    .artist-main-card,
    .song-cover-card{
        max-width:100px;
    }
	
	.top-nav{
    width:100%;
    max-width:900px;

    margin:0 auto 10px auto;

    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;

    flex-wrap:wrap;

    padding:0 10px 10px 10px;
}

.top-nav a,
.share-button{

    border:none;
    text-decoration:none;

    padding:10px 14px;

    border-radius:999px;

    font-size:13px;
    font-weight:bold;

    color:#fff;

    background:
        linear-gradient(
            135deg,
            rgba(0,180,255,.25),
            rgba(255,0,140,.25)
        );

    border:
        1px solid rgba(255,255,255,.08);

    cursor:pointer;

    transition:.25s;
}

.top-nav a:hover,
.share-button:hover{

    transform:translateY(-2px);

    box-shadow:
        0 0 12px rgba(0,234,255,.6),
        0 0 20px rgba(255,0,255,.35);
}

.share-button{

    background:
        linear-gradient(
            135deg,
            #ff7a00,
            #ff00aa
        );

    box-shadow:
        0 0 12px rgba(255,120,0,.45);
}

@media(max-width:600px){

    .top-nav{
        gap:6px;
    }

    .top-nav a,
    .share-button{
        font-size:12px;
        padding:9px 12px;
    }
}
}
@media(min-width:801px){

    .site-header-inner{
        max-width:1200px;
        justify-content:flex-start;
        padding:14px 24px 6px 24px;
    }

    .top-nav{
        max-width:1200px;
        margin:-56px auto 0 auto;
        padding:0 24px 14px 260px;

        display:flex;
        justify-content:flex-end;
        align-items:center;
        gap:24px;
    }

    .top-nav a{
        background:none;
        border:none;
        box-shadow:none;

        padding:0;

        color:#fff;
        font-size:15px;
        font-weight:600;
        text-decoration:none;

        transition:.2s;
    }

    .top-nav a:hover{
        color:#00eaff;
        text-shadow:0 0 8px rgba(0,234,255,.8);
        transform:none;
    }

    .share-button{
        background:linear-gradient(
            135deg,
            #ff7a00,
            #ff00aa
        );

        color:#fff;
        border:none;
        border-radius:999px;

        padding:11px 18px;

        font-size:14px;
        font-weight:bold;

        box-shadow:
            0 0 12px rgba(255,120,0,.45);

        white-space:nowrap;
    }
}

.link-row{
    width:100%;
    max-width:900px;

    margin:18px auto;

    display:grid;
    grid-template-columns:1fr 2fr;
    gap:18px;

    align-items:center;
}

.link-row .button{
    width:100%;
    margin:0;
}

.link-info{
    text-align:left;
}

.link-info h3{
    margin:0 0 6px;
    color:#9fefff;
    font-size:20px;
}

.link-info p{
    margin:0 0 8px;
    color:#ddd;
    line-height:1.4;
}

.link-info a{
    color:#00eaff;
    text-decoration:none;
    font-weight:bold;
}

.link-info a:hover{
    text-decoration:underline;
}

@media(max-width:700px){

    .link-row{
        grid-template-columns:1fr 2fr;
        gap:10px;
        align-items:center;
		width:100%;
    max-width:900px;

    margin:18px auto;
    padding:14px;

    display:grid;
    grid-template-columns:1fr 2fr;
    gap:18px;
    align-items:center;

    border:1px solid rgba(255,255,255,0.12);
    border-radius:18px;

    background:rgba(255,255,255,0.03);

    box-shadow:
        0 0 12px rgba(0,234,255,0.08);
    }

    .link-info{
        text-align:left;
    }

    .link-row .button{
        font-size:0.95rem;
        padding:14px 8px;
        border-radius:14px;
    }

    .link-info h3{
        font-size:16px;
    }

    .link-info p{
        font-size:13px;
        line-height:1.35;
    }

    .link-info a{
        font-size:13px;
    }
}

.tiktok-row{
    width:100%;
    max-width:900px;

    margin:20px auto;

    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:12px;
}

.tiktok-card{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    min-height:90px;

    text-decoration:none;
    text-align:center;

    border-radius:18px;

    background:rgba(255,255,255,0.03);

    border:1px solid rgba(255,255,255,0.12);

    box-shadow:
        0 0 12px rgba(0,234,255,0.08);

    transition:.25s;
}

.tiktok-card:hover{
    transform:translateY(-2px);

    border-color:rgba(0,234,255,0.35);

    box-shadow:
        0 0 12px rgba(0,234,255,0.18),
        0 0 24px rgba(255,0,255,0.12);
}

.tiktok-card strong{
    color:#fff;
    font-size:16px;
    margin-bottom:4px;
}

.tiktok-card span{
    color:#9fefff;
    font-size:13px;
}

@media(max-width:600px){

    .tiktok-row{
        gap:8px;
    }

    .tiktok-card{
        min-height:75px;
        padding:8px;
    }

    .tiktok-card strong{
        font-size:13px;
    }

    .tiktok-card span{
        font-size:11px;
    }
}