
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:Arial,Helvetica,sans-serif;background:#1b1b1b url("../musik/pic/back.jpg") center top;color:#fff;}
#app{width:1280px;margin:12px auto;background:#2b2b2b;border:1px solid #555;border-radius:10px;overflow:hidden;box-shadow:0 0 20px rgba(0,0,0,.5);}
header{
display:flex;
justify-content:space-between;
align-items:center;
padding:12px 16px;
background:#333;
border-bottom:1px solid #555;
}

.headerLeft{
display:flex;
align-items:center;
gap:15px;
}

.headerButtons{
display:flex;
gap:10px;
}

.headerButtons button{
padding:8px 18px;
border:none;
border-radius:5px;
background:#555;
color:#fff;
font-size:14px;
cursor:pointer;
transition:.2s;
}

.headerButtons button:hover{
background:#FFD84A;
color:#000;
}

#logo{width:70px;height:auto;}
header h1{color:#FFD84A;font-size:24px;font-weight:normal;}
#version{color:#999;margin-top:3px;font-size:12px;}
#zoneContainer{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px;}
#zoneContainer>.radioAdManager{grid-column:1/-1;margin:0;}
.zone{
    background:#3b3b3b;
    border:1px solid #666;
    border-radius:10px;
    padding:12px;
    box-shadow:0 3px 12px rgba(0,0,0,.35);
}
.zone h2{
    color:#FFD84A;
    font-size:22px;
    font-weight:bold;
    margin-bottom:10px;
}
.field{margin-bottom:8px;}
.field label{display:block;margin-bottom:2px;color:#ccc;font-size:13px;}
.field input[type=file],.field select,.device{width:100%;}
.field select,.device{padding:4px 6px;background:#444;color:#fff;border:1px solid #666;border-radius:4px;font-size:13px;}
.adFieldHeading{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.adFieldHeading>label{margin-bottom:2px;}
.adShuffleLabel{display:flex!important;align-items:center;gap:5px;white-space:nowrap;cursor:pointer;}
.adShuffleLabel input{width:auto;margin:0;}
.adOptions.hidden{display:none;}
.adEnabledField>label{display:flex;align-items:center;gap:7px;cursor:pointer;color:#FFD84A;font-weight:bold;}
.adEnabledField input{width:16px;height:16px;margin:0;}
.buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:8px;}
.buttons button{
    height:42px;
    background:#555;
    color:#fff;
    border:none;
    border-radius:5px;
    cursor:pointer;
    font-size:20px;
    font-weight:bold;
    transition:.2s;
}
.buttons button:hover{background:#FFD84A;color:#000;}
.zone audio{
    width:100%;
    margin-top:12px;
    height:32px;
}
.status{
    margin-top:6px;
    background:#1f2d1f;
    border:1px solid #3e7a3e;
    border-radius:5px;
    padding:5px 8px;
    color:#9CFF9C;
    font-size:12px;
    min-height:24px;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}
footer{padding:10px;text-align:center;color:#888;border-top:1px solid #444;background:#262626;font-size:12px;}
@media(max-width:1300px){#app{width:98%;}}
@media(max-width:900px){#zoneContainer{grid-template-columns:1fr;}#zoneContainer>.radioAdManager{grid-column:1;}}


/* Cover layout prepared */
.zoneContent{
    display:grid;
    grid-template-columns:160px 1fr;
    gap:12px;
    align-items:start;
}
.coverBox{
    width:160px;
    height:160px;
    border:1px solid #666;
    border-radius:8px;
    background:#222;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
}
.coverImage{
    width:100%;
    height:100%;
    object-fit:cover;
}
.controls{min-width:0;}


.zone.playing{
    border:2px solid #FFD84A;
    box-shadow:0 0 18px rgba(255,216,74,.35);
}


.limiterField label{
    display:flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
}

.limiterField input[type=checkbox]{
    width:16px;
    height:16px;
}


/* Lautstärke unter dem Cover */
.volumeField{
    text-align:center;
    margin-top:10px;
}

.volumeField label{
    margin-bottom:6px;
    color:#ccc;
    font-size:13px;
}

.volumeField .volume{
    width:140px;
}

/* Kompakter Einzelplayer */
.singlePlayerApp{width:min(860px,calc(100% - 24px));}
.singlePlayerApp header{padding:9px 12px;}
.singlePlayerApp .headerLeft{gap:10px;}
.singlePlayerApp #logo{width:44px;}
.singlePlayerApp header h1{font-size:18px;}
.singlePlayerApp .headerButtons{gap:5px;}
.singlePlayerApp .headerButtons button{padding:5px 9px;font-size:12px;}
.singlePlayerApp #zoneContainer{grid-template-columns:1fr;gap:8px;padding:9px;}
.singlePlayerApp #zoneContainer>.radioAdManager{grid-column:1;}
.singlePlayerApp .zone{padding:9px;border-radius:7px;}
.singlePlayerApp .zone h2{margin-bottom:7px;font-size:16px;}
.singlePlayerApp .zoneContent{grid-template-columns:120px minmax(0,1fr);gap:10px;}
.singlePlayerApp .coverBox{width:120px;height:120px;border-radius:6px;}
.singlePlayerApp .field{margin-bottom:5px;}
.singlePlayerApp .field label{font-size:11px;}
.singlePlayerApp .field select{font-size:12px;}
.singlePlayerApp .volumeField{margin-top:6px;}
.singlePlayerApp .volumeField label{margin-bottom:3px;font-size:11px;}
.singlePlayerApp .volumeField .volume{width:110px;}
.singlePlayerApp .adOptions{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:7px;}
.singlePlayerApp .adOptions.hidden{display:none;}
.singlePlayerApp .status{margin-top:3px;}
.singlePlayerApp .zone audio{margin-top:6px;height:30px;}
.singlePlayerApp .buttons{margin-top:5px;}
.singlePlayerApp .buttons button{height:32px;font-size:16px;}
.singlePlayerApp footer{padding:6px;font-size:11px;}
.singlePlayerApp .radioAdManager{margin-top:0;}
.singlePlayerApp .radioAdManager summary{padding:7px 10px;font-size:12px;}
.singlePlayerApp .radioAdBody{gap:7px;padding:0 10px 10px;}
.singlePlayerApp .radioAdList{gap:4px;}
.singlePlayerApp .radioAdList li{padding:5px 7px;font-size:12px;}
@media(max-width:700px){
    .singlePlayerApp{width:100%;margin:0;border-radius:0;}
    .singlePlayerApp header{align-items:flex-start;gap:8px;}
    .singlePlayerApp .zoneContent{grid-template-columns:90px minmax(0,1fr);}
    .singlePlayerApp .coverBox{width:90px;height:90px;}
    .singlePlayerApp .adOptions{grid-template-columns:1fr;}
}
@media(max-width:480px){
    .singlePlayerApp header{display:grid;}
    .singlePlayerApp .zoneContent{grid-template-columns:1fr;}
    .singlePlayerApp .leftColumn{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:end;}
    .singlePlayerApp .coverBox{width:72px;height:72px;}
}
