:root{
 --bg:#040910;--panel:#0b1b2b;--panel2:#102943;--text:#eff7ff;--muted:#9fb4c8;
 --line:#294a66;--accent:#61c3ff;--danger:#ff7384;--success:#5bda9a;--away:#f0c45e;--onair:#ff6681
}
*{box-sizing:border-box}
html{color-scheme:dark}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 0,#183b5d 0,#081522 40%,#03070c 100%);color:var(--text);font-family:Segoe UI,Arial,sans-serif}
a{color:#94d8ff;text-decoration:none}
img{max-width:100%}
input,select,textarea,button{font:inherit}
input,select,textarea{width:100%;min-height:42px;background:#071522;border:1px solid #2d4f6b;color:var(--text);border-radius:10px;padding:10px 11px}
textarea{resize:vertical}
button{color:inherit}

.hero{max-width:1240px;margin:auto;padding:46px 24px 24px;text-align:center}
.hero h1{font-size:clamp(38px,6vw,70px);margin:5px 0}
.eyebrow{font-size:12px;letter-spacing:.16em;color:#86d2ff;font-weight:800}
.muted{color:var(--muted)}

.front-grid{max-width:1240px;margin:auto;padding:12px 24px 48px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.front-box,.page-card,.rooms-panel,.chat-panel,.online-panel,.admin-nav,.admin-content,.chat-player{background:linear-gradient(180deg,rgba(16,42,68,.97),rgba(7,20,33,.97));border:1px solid var(--line);border-radius:17px}
.front-box,.page-card,.rooms-panel,.online-panel,.admin-content{padding:20px}
.front-box{text-align:center}
.front-box h2,.front-box h3,.front-box p,.front-box .content-html{text-align:center}
.front-form{max-width:320px;margin:0 auto;text-align:center}
.front-form label{text-align:center}
.front-form input{text-align:center}

.stack{display:grid;gap:11px}
.stack label,.menu-form label{display:grid;gap:6px;color:var(--muted)}
.btn,.danger{border:0;border-radius:10px;padding:10px 15px;min-height:42px;font-weight:750;cursor:pointer}
.btn{background:linear-gradient(90deg,#4ab2f5,#80d2ff);color:#04111c}
.btn.ghost{background:#173650;color:#e2f5ff;border:1px solid #37617d}
.danger{background:#4c1a24;color:#ffd9df;border:1px solid #7e3342}
.notice,.ok,.error,.admin-note{padding:12px;border-radius:10px;margin:10px 0}
.notice{background:#14334e}.ok{background:#123b28;border:1px solid #2f7b53}.error{background:#481a24;border:1px solid #803442}.admin-note{background:#102c47;border:1px solid #315c7b;color:#d5edff}

.player-content{text-align:center}
.player-content iframe,.player-content audio{width:100%;max-width:100%}
.player-placeholder{padding:18px;border:1px dashed #3e698b;border-radius:10px;text-align:center}
details{margin-top:14px}
footer{text-align:center;color:var(--muted);padding:26px}

.front-menu,.footer-menu,.chat-menu{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.front-menu a,.footer-menu a,.chat-menu a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:8px 11px;background:#0b2237;color:var(--text)}
.front-menu img,.footer-menu img,.chat-menu img{width:22px;height:22px;object-fit:contain}
.footer-menu{max-width:1240px;margin:0 auto;padding:0 24px}

.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 22px;background:#06111d;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.topbar nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.announcement{max-width:1480px;margin:12px auto 0;padding:11px 15px;border:1px solid #6c4e26;background:#302510;border-radius:12px;display:flex;gap:10px;flex-wrap:wrap}
.announcement.preview{margin:0 0 15px}
.chat-player{max-width:1480px;margin:12px auto 0;padding:14px 18px;text-align:center}
.chat-player details{margin:0}.chat-player summary{cursor:pointer;font-weight:800}


.chat-action-buttons{max-width:1480px;margin:12px auto 0;padding:10px 12px;display:flex;gap:9px;flex-wrap:wrap;justify-content:center;background:linear-gradient(180deg,rgba(16,42,68,.88),rgba(7,20,33,.88));border:1px solid var(--line);border-radius:14px}
.chat-link-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px 14px;border:1px solid #37617d;border-radius:10px;background:#173650;color:#e8f7ff;font-weight:750;transition:background .15s ease,border-color .15s ease}
.chat-link-button:hover{background:#204a6e;border-color:#4d83a8}
.chat-link-button img{width:24px;height:24px;object-fit:contain}

.chat-layout{max-width:1500px;margin:auto;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px}
.rooms-panel,.online-panel{height:max-content}
.room-link{display:grid;gap:3px;padding:12px;border-radius:10px;color:var(--text);margin-bottom:7px}
.room-link small{color:var(--muted)}
.room-link.active{background:#173955;border:1px solid #376489}

.chat-panel{display:grid;grid-template-rows:auto minmax(430px,1fr) auto auto auto;overflow:hidden}
.chat-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px;border-bottom:1px solid var(--line)}
.chat-head h2{margin:0}
.head-actions{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
.status-control{display:grid;gap:4px;color:var(--muted);font-size:12px}
.status-control select{min-width:130px}

.messages{padding:14px;overflow:auto;max-height:66vh}
.message-row{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid rgba(41,74,102,.48)}
.message-main{min-width:0}
.avatar-dot{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#1c496f;font-weight:800;flex:0 0 auto}
.avatar-dot.admin{background:#6d3d74}.avatar-dot.moderator{background:#3b704e}
.message-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.message-meta>span:last-child{font-size:12px;color:var(--muted)}
.message-text{margin-top:4px;overflow-wrap:anywhere}

.status-pill{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border-radius:999px;font-size:11px;border:1px solid var(--line);background:#12283b}
.status-pill.present{border-color:#387a5a;color:#9df3c3}
.status-pill.away{border-color:#806832;color:#ffe19a}
.status-pill.onair{border-color:#8a394a;color:#ffbac5}
.status-pill.invisible{border-color:#5e5978;color:#d7d2ff}

.smilie-bar{padding:8px 14px;display:flex;gap:6px;flex-wrap:wrap;border-top:1px solid var(--line)}
.smilie-btn{width:40px;height:40px;border:1px solid #325b77;border-radius:9px;background:#0e263b;display:grid;place-items:center;cursor:pointer;font-size:21px}
.smilie-btn img{width:26px;height:26px;object-fit:contain}
.composer{display:grid;grid-template-columns:1fr auto;gap:9px;padding:14px;border-top:1px solid var(--line)}

.online-user{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;margin:9px 0;border-bottom:1px solid rgba(41,74,102,.3);padding-bottom:8px}
.online-user small{color:var(--muted);display:block;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.online-dot{width:8px;height:8px;border-radius:50%;background:var(--success)}
.online-dot.away{background:var(--away)}.online-dot.onair{background:var(--onair)}.online-dot.invisible{background:#9a8de7}
.online-status{display:grid;justify-items:end;gap:2px}.admin-only{font-size:10px;color:#beb6f5}

.private-list{display:grid;gap:7px;max-height:250px;overflow:auto}
.private-item{display:grid;gap:3px;padding:8px;border:1px solid var(--line);border-radius:9px;background:#081a2a}
.private-item span{overflow-wrap:anywhere}.private-item small{color:var(--muted)}

.admin-layout{max-width:1550px;margin:auto;padding:14px;display:grid;grid-template-columns:260px minmax(0,1fr);gap:14px}
.admin-nav{padding:10px;height:max-content;display:grid;gap:6px}
.admin-nav a{padding:11px;border-radius:9px;color:var(--text)}
.admin-nav a.active{background:#193b5a}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.stat{background:#0a2238;border:1px solid var(--line);border-radius:12px;padding:16px;display:grid}
.stat strong{font-size:28px}.stat span{color:var(--muted)}

.toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px}
.feature-list{display:flex;gap:8px;flex-wrap:wrap;padding:12px;border:1px solid var(--line);border-radius:12px}
.feature-list span{padding:6px 9px;border-radius:999px;background:#0a2238}

.menu-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.menu-form>.btn,.menu-form>.wizard-actions{grid-column:1/-1}
.table-wrap{overflow:auto;margin-top:14px}
table{width:100%;border-collapse:collapse;min-width:800px}
th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top}
.actions{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap}
.inline-form{display:flex;gap:8px;flex-wrap:wrap}
.inline-form input{width:auto;flex:1;min-width:150px}
.check{display:flex!important;align-items:center;gap:8px!important}
.check input{width:auto;min-height:auto}

.smilie-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:15px}
.smilie-admin{display:grid;gap:7px;text-align:center;padding:12px;background:#0a2238;border:1px solid var(--line);border-radius:12px}
.smilie-preview{font-size:28px}.smilie-preview img{width:42px;height:42px;object-fit:contain}

.page-card{max-width:780px;margin:40px auto}
.installer{padding:20px}
.steps{display:flex;gap:8px;margin-bottom:18px}
.steps span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#0a2238;border:1px solid var(--line);font-weight:800}
.steps span.active{background:#4eb5f7;color:#05121c}
.steps span.done{border-color:#4c966d}
.check-grid{display:grid;gap:7px;margin:12px 0 20px}
.syscheck{padding:9px;border-radius:9px;background:#0a2238}
.okline strong{color:#63dfa1}.badline strong{color:#ff8495}
.wizard-actions{display:flex;gap:8px;flex-wrap:wrap}

@media(max-width:1050px){
 .front-grid,.chat-layout,.admin-layout{grid-template-columns:1fr}
 .admin-nav{display:flex;overflow:auto}
 .stat-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:650px){
 .front-grid{padding:8px 12px 28px}
 .topbar{align-items:flex-start;flex-direction:column}
 .chat-layout,.admin-layout{padding:8px}
 .composer{grid-template-columns:1fr}
 .stat-grid,.toggle-grid,.menu-form{grid-template-columns:1fr}
 .menu-form>.btn,.menu-form>.wizard-actions{grid-column:auto}
 .chat-head{align-items:flex-start;flex-direction:column}
}


/* Mega Chat v3: s-g-news-radio, dunkler Player und allgemeine Einstellungen */
.player-theme{background:#071522!important;color:var(--text)!important;border:1px solid #294a66;border-radius:12px;padding:10px;overflow:hidden;color-scheme:dark}
.player-theme>*{max-width:100%}
.player-theme audio{width:100%;background:#071522!important;color-scheme:dark}
.player-theme iframe{width:100%;border:0;background:#071522!important;color-scheme:dark;border-radius:8px}
.player-theme object,.player-theme embed{max-width:100%;background:#071522!important}
.front-box .player-theme{margin:0 auto;text-align:center}

.message-row.role-user .message-text{color:var(--guest-message-color,#eff7ff)}
.message-row.role-admin .message-text,.message-row.role-moderator .message-text{color:var(--system-message-color,#82d5ff)}
.message-delete{margin-top:7px;padding:4px 8px;border-radius:7px;border:1px solid #6f3844;background:#371720;color:#ffc5cf;cursor:pointer;font-size:11px}

.settings-section{display:grid;gap:11px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#081a2a}
.settings-section h2{margin:0 0 2px;font-size:18px}
.update-card{display:grid;gap:12px;max-width:860px}
.update-result{padding:14px;border-radius:12px;border:1px solid var(--line);background:#0a2238}
.update-result.has-update{border-color:#7c6630;background:#302710}
.update-result.up-to-date{border-color:#347453;background:#123726}
.update-result.update-error{border-color:#803442;background:#471a24}

body.style-s-g-news-radio{background:radial-gradient(circle at 50% -10%,#1b5077 0,#081827 36%,#03070c 100%)}
body.style-s-g-news-radio .front-box,body.style-s-g-news-radio .chat-panel,body.style-s-g-news-radio .rooms-panel,body.style-s-g-news-radio .online-panel{border-color:#35617f}
body.style-dark-classic{background:#06090d}
