* {
  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, #00ffcc, #ff00ff);
        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;
}