/* ===== ENHANCED: ab hier alles neu, liegt nur oben drauf ===== */
:root{
  --pink-rgb:255,79,163; --pink:#ff4fa3; --pink-soft:#f4a3cb;
  --glass:rgba(39,39,38,.62); --bar:rgba(255,255,255,.05); --edge:rgba(255,255,255,.09);
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--glass:rgba(39,39,38,.62)}}
:root[data-theme="dark"]{--glass:rgba(39,39,38,.62)}
html{scroll-padding-top:env(safe-area-inset-top,0px);color-scheme:dark}
html,body{height:100%}
body{background-color:#151514;
  background-image:radial-gradient(60vw 45vh at 10% -5%,rgba(var(--pink-rgb),.14),transparent 70%),
                   radial-gradient(50vw 40vh at 100% 100%,rgba(var(--pink-rgb),.07),transparent 70%);
  background-attachment:fixed}

/* Glas: ruhig, dünn, weiche Kanten */
.pun .box{background-color:var(--glass);border-color:var(--edge);border-radius:8px;
  -webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);
  box-shadow:0 6px 24px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.07)}
#brdheader .box{border-radius:8px;border-top-color:var(--pink)}
#brdheader #brdmenu{background-color:var(--bar)}
.pun .block h2{background-color:var(--bar);border-color:var(--edge);border-radius:8px 8px 0 0;
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
#msg .box{border-radius:0 0 8px 8px;border-top:0}

/* Logo: pink, ohne Effektshow */
#brdtitle h1{font-size:2.2em;letter-spacing:-.01em}
#brdtitle h1 a{color:var(--pink-soft);text-shadow:0 0 22px rgba(var(--pink-rgb),.28)}
#brdtitle h1 a span{color:var(--pink)}

/* Menü: dezente Pillen, aktiv nur leicht getönt */
#brdmenu a{display:inline-block;padding:2px 10px;border:1px solid transparent;border-radius:6px;transition:background .15s,color .15s}
#brdmenu a:hover{text-decoration:none;background:rgba(255,255,255,.08);color:#fff}
#brdmenu li.isactive a{background:rgba(var(--pink-rgb),.14);border-color:rgba(var(--pink-rgb),.35);color:var(--pink-soft)}
#notifications{color:var(--pink-soft);display:inline-flex;vertical-align:middle}

/* Links + Divider */
.pun a:link,.pun a:visited{color:var(--pink-soft)}
.pun a:active,.pun a:focus,.pun a:hover{color:#fff}
.pun a:focus-visible{outline:2px solid var(--pink);outline-offset:2px;border-radius:4px}
.gs-divider{background:linear-gradient(90deg,transparent,var(--pink) 50%,transparent);height:2px;border-bottom:0}

/* Forms + Notes */
form.inl{display:inline;margin-left:10px}
.pun .err{color:var(--pink)}
.pun label input[type=text],.pun label input[type=password]{width:100%;max-width:340px;box-sizing:border-box;padding:6px 8px;border-radius:6px}
.pun textarea{width:100%;box-sizing:border-box;min-height:320px;padding:8px;border-radius:6px;font:12px/1.5 consolas,monaco,"courier new",monospace}
.pun input.button{border-radius:6px;padding:5px 14px;cursor:pointer}
.pun input.button:hover{border-color:var(--pink);color:var(--pink-soft)}
.pun pre.note{white-space:pre-wrap;word-wrap:break-word;font:12px/1.5 consolas,monaco,"courier new",monospace;padding:6px 0}

/* Bell, Badge, Tickets */
#brdmenu #navnotifications a{color:var(--pink-soft)}
.pun .badge{display:inline-block;min-width:16px;padding:0 4px;margin-left:5px;border-radius:8px;background:var(--pink);color:#fff;font-size:10px;line-height:16px;text-align:center;vertical-align:middle}
.pun .dim{color:#888}
.pun textarea.short{min-height:110px}

/* ===== Fixes + Formulare ===== */
.pun label{margin-bottom:8px}
.pun label input[type=text],.pun label input[type=password]{margin-top:4px}
.pun label.chk{display:block;padding:4px 0 4px 24px;position:relative;line-height:1.5}
.pun label.chk input{position:absolute;left:0;top:5px;margin:0;width:auto}
.pun input[type=file]{margin-top:4px;padding:6px;border-radius:6px;max-width:100%}
.pun input.button{color:#ccc!important}
.pun input.button:hover{border-color:var(--pink);color:var(--pink-soft)!important;background-color:rgba(var(--pink-rgb),.1)}
.pun form.inl{display:inline-block;margin:0 6px 6px 0}
.pun #brdwelcome form.inl{margin:0 0 0 10px}
.pun #brdwelcome .conl{display:flex;align-items:center;flex-wrap:wrap}
#brdmenu ul{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px}
#brdmenu li{margin-right:0}
#navnotifications{margin-right:8px!important}
#brdmenu #navnotifications a{padding:2px 9px}
.pun ul li{padding:3px 0}
.pun #brdmenu ul li{padding:0}

/* Galerie */
.pun .subnav{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:8px}
.pun .subnav a{padding:2px 10px;border:1px solid var(--edge);border-radius:6px}
.pun .subnav a.on{background:rgba(var(--pink-rgb),.14);border-color:rgba(var(--pink-rgb),.35);color:var(--pink-soft)}
.pun .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding:6px 0}
.pun .thumb{display:block;border:1px solid var(--edge);border-radius:8px;overflow:hidden;background:rgba(0,0,0,.25);transition:border-color .15s}
.pun .thumb:hover{border-color:var(--pink)}
.pun .thumb img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.pun .thumb .cap{display:block;padding:5px 8px;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:1.6em}
.pun .lock{font-style:normal;color:var(--pink-soft)}
.pun img.full{max-width:100%;height:auto;border-radius:8px;border:1px solid var(--edge)}

/* VPN-Tabelle */
.pun table.kv{max-width:640px;margin:6px 0 10px}
.pun table.kv th{width:9em;color:#999;vertical-align:top;padding:6px 8px;background:transparent;border-color:var(--edge)}
.pun table.kv td{padding:6px 8px;background:transparent;border-color:var(--edge)}
.pun table.kv code{font-size:11px}

@media (max-width:600px){
  .pun{padding:8px 10px}
  .pun .grid{grid-template-columns:repeat(2,1fr)}
  #brdtitle h1{font-size:1.9em}
}
.pun #brdwelcome .conl{gap:0 5px}
.pun .thumb .cap{color:#d4d4d3}
.pun .thumb .cap .dim{color:#888}

/* ===== Profile ===== */
.prof .post{overflow:hidden;padding:4px 0}
.prof .avwrap{float:left;margin:0 18px 10px 0;max-width:180px}
.prof img.av,.prof .av.none{display:block;width:150px;height:150px;object-fit:cover;border-radius:10px;border:1px solid var(--edge)}
.prof .av.none{display:flex;align-items:center;justify-content:center;color:#888;background:rgba(0,0,0,.25);font-size:11px}
.prof .ph{font-size:12px;margin-bottom:4px}
.prof .nm{font-size:1.7em;font-weight:900;color:var(--pink-soft);font-family:Raleway,Verdana,sans-serif}
.prof .subj{display:block;color:#aaa;margin-bottom:2px}
.prof .role{display:inline-block;padding:0 7px;margin:0 4px;border:1px solid rgba(var(--pink-rgb),.35);border-radius:6px;color:var(--pink-soft);font-size:10px}
.prof .tm{color:#888}
.prof .bio{margin:10px 0;max-width:70ch;line-height:1.55;font-size:12px;word-wrap:break-word}
.prof .gt{color:#8ab04d}
.prof .music{margin:12px 0;padding:8px 10px;border:1px solid var(--edge);border-radius:8px;background:rgba(0,0,0,.2);max-width:420px}
.prof .music .note{color:var(--pink-soft)}
.prof audio{display:block;width:100%;height:32px;margin-top:6px}
.prof .clr{clear:both}
.prof h3.sec{margin-top:14px;font-size:12px;color:#aaa}

/* Feinschliff Profile */
.prof .music{overflow:hidden;margin-top:14px}
.pun .thumb .cap:empty{display:none}
@media (max-width:600px){
  .prof .avwrap{max-width:120px;margin-right:12px}
  .prof img.av,.prof .av.none{width:110px;height:110px}
}
