/* ==============================================================
   DIGITALE SPIELEWIESE — V64 PROFESSIONAL FORUM REDESIGN
   05.10.2026
   Ziele: ruhiger, klarer, hochwertiger; weniger Glow, mehr Struktur.
   ============================================================== */

/* Forum-Seiten: Header etwas ruhiger und kontrastreicher. */
body > header{
  background:rgba(3,7,12,.82)!important;
  border-bottom-color:rgba(255,255,255,.075)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.30)!important;
  backdrop-filter:blur(18px) saturate(112%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(112%)!important;
}
body > header.dsw-nav-scrolled{
  background:rgba(3,7,12,.94)!important;
  border-bottom-color:rgba(173,255,47,.10)!important;
}
body > header .dsw-primary-nav{gap:1.35rem!important}
body > header .dsw-primary-nav > a,
body > header .dsw-primary-nav > button,
body > header .dsw-primary-nav > details > summary{
  border-radius:10px;
}

/* --------------------------------------------------------------
   FORUM OVERVIEW
   -------------------------------------------------------------- */
.dsw-forum-page::before{
  background:linear-gradient(180deg,rgba(2,7,11,.78),rgba(2,7,11,.86))!important;
  border:1px solid rgba(255,255,255,.028)!important;
  box-shadow:0 36px 110px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
.dsw-forum-hero,
.dsw-forum-card,
.dsw-forum-latest,
.dsw-forum-online,
.dsw-since-visit{
  border-color:rgba(255,255,255,.075)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.22)!important;
}
.dsw-forum-hero{
  background:linear-gradient(145deg,rgba(8,14,21,.97),rgba(5,10,16,.96))!important;
}
.dsw-forum-card{
  background:linear-gradient(145deg,rgba(9,15,22,.95),rgba(6,11,17,.96))!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
}
.dsw-forum-card:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(173,255,47,.22)!important;
  background:linear-gradient(145deg,rgba(11,18,25,.98),rgba(7,13,19,.98))!important;
  box-shadow:0 22px 52px rgba(0,0,0,.28)!important;
}
.dsw-forum-card::before{opacity:.15!important}
.dsw-forum-card:hover::before{opacity:.35!important}
.dsw-forum-name{letter-spacing:-.015em!important}
.dsw-forum-desc{color:#aebbc6!important;line-height:1.55!important}
.dsw-forum-counts{opacity:.9}
.dsw-latest-item{
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(255,255,255,.06)!important;
}
.dsw-latest-item:hover{
  background:rgba(255,255,255,.04)!important;
  border-color:rgba(173,255,47,.16)!important;
}

/* --------------------------------------------------------------
   CATEGORY PAGES
   -------------------------------------------------------------- */
.dsw-cat{
  background:transparent!important;
}
.dsw-cat::after{
  background:linear-gradient(180deg,rgba(2,6,10,.64),rgba(2,6,10,.80) 72%,rgba(2,6,10,.88))!important;
}
.dsw-cat-hero::before{
  background:linear-gradient(90deg,rgba(4,8,13,.94) 0%,rgba(4,8,13,.78) 50%,rgba(4,8,13,.58) 100%)!important;
}
.dsw-cat-sidekick,
.dsw-thread-wrap,
.dsw-cat-sidebar > *,
.dsw-subgrid > *{
  border-color:rgba(255,255,255,.075)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.22)!important;
}
.dsw-thread{
  background:rgba(8,14,21,.93)!important;
  border-color:rgba(255,255,255,.065)!important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
}
.dsw-thread:hover{
  background:rgba(10,17,24,.97)!important;
  border-color:rgba(var(--accent-rgb),.24)!important;
  transform:translateY(-1px)!important;
}
.dsw-thread-title{letter-spacing:-.012em!important}
.dsw-thread-meta{color:#8fa0ae!important}

/* --------------------------------------------------------------
   THREAD PAGE — THE PROFESSIONAL PASS
   -------------------------------------------------------------- */
.dsw-thread-stage{
  width:min(calc(100% - 38px),1340px)!important;
  padding:28px 0 64px!important;
}
.dsw-thread-stage::before{
  inset:0 -18px 18px!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,rgba(2,7,12,.86),rgba(2,7,12,.80))!important;
  border:1px solid rgba(255,255,255,.035)!important;
  box-shadow:0 34px 110px rgba(0,0,0,.42)!important;
  backdrop-filter:blur(13px) saturate(105%)!important;
  -webkit-backdrop-filter:blur(13px) saturate(105%)!important;
}

.dsw-thread-breadcrumb{
  margin-bottom:12px!important;
  min-height:34px;
  gap:7px!important;
  color:#8393a0!important;
  font-size:.73rem!important;
}
.dsw-thread-breadcrumb a{color:#aebbc5!important}
.dsw-thread-breadcrumb a:hover{color:#d7f8a6!important}

.dsw-thread-head{
  margin-bottom:16px!important;
  padding:27px 30px 24px!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.085)!important;
  background:linear-gradient(150deg,rgba(8,15,22,.985),rgba(4,10,16,.985))!important;
  box-shadow:0 18px 48px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.028)!important;
}
.dsw-v50-head-badges{margin-bottom:10px!important;gap:6px!important}
.dsw-v50-badge{
  min-height:27px;
  padding:5px 9px!important;
  border-color:rgba(255,255,255,.095)!important;
  background:rgba(255,255,255,.035)!important;
  color:#bac7d1!important;
  letter-spacing:.015em;
}
.dsw-thread-head h1{
  max-width:1120px!important;
  margin:0 0 12px!important;
  font-size:clamp(1.55rem,2.2vw,2.05rem)!important;
  line-height:1.16!important;
  letter-spacing:-.032em!important;
  font-weight:900!important;
  text-wrap:balance;
}
.dsw-thread-meta-row{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:7px 11px!important;
  color:#8fa0ae!important;
  font-size:.76rem!important;
}
.dsw-thread-meta-item{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:28px;
}
.dsw-thread-meta-item .material-symbols-rounded{font-size:16px!important;color:#7f909d}
.dsw-thread-meta-item a{color:#dce5eb!important;font-weight:800!important}
.dsw-thread-meta-item a:hover{color:#c9f58c!important}
.dsw-thread-meta-dot{width:3px;height:3px;border-radius:99px;background:rgba(255,255,255,.22);display:inline-block}

.dsw-thread-tools{
  gap:7px!important;
  margin-top:17px!important;
  padding-top:15px;
  border-top:1px solid rgba(255,255,255,.055);
}
.dsw-thread-tool-btn{
  min-height:38px!important;
  padding:8px 11px!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.085)!important;
  background:rgba(255,255,255,.026)!important;
  color:#bac7d1!important;
  font-size:.72rem!important;
  font-weight:820!important;
  box-shadow:none!important;
}
.dsw-thread-tool-btn .material-symbols-rounded{font-size:17px!important;color:#95a5b0}
.dsw-thread-tool-btn:hover{
  transform:none!important;
  border-color:rgba(173,255,47,.24)!important;
  background:rgba(173,255,47,.045)!important;
  color:#edf8dd!important;
}
.dsw-thread-tool-btn.active{
  border-color:rgba(173,255,47,.31)!important;
  background:rgba(173,255,47,.085)!important;
  color:#cff68f!important;
}
.dsw-thread-tool-btn.active .material-symbols-rounded{color:#b8ec69!important}

#postsScroll{gap:14px!important}
.dsw-thread-post,
#postsScroll > [data-post-id]{
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  background:#071019!important;
  box-shadow:0 14px 38px rgba(0,0,0,.23)!important;
  transition:border-color .16s ease,box-shadow .16s ease!important;
}
.dsw-thread-post:hover,
#postsScroll > [data-post-id]:hover{
  border-color:rgba(255,255,255,.11)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.26)!important;
}

.dsw-thread-author-pane,
#postsScroll > [data-post-id] > .flex > :first-child{
  flex:0 0 178px!important;
  width:178px!important;
  padding:22px 16px!important;
  border-right:1px solid rgba(255,255,255,.055)!important;
  background:linear-gradient(180deg,#0b141e,#08111a)!important;
}
.thread-author-card{text-align:center!important}
.thread-author-avatar{
  width:72px!important;
  height:72px!important;
  margin:0 auto 11px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 0 0 4px rgba(255,255,255,.026),0 12px 28px rgba(0,0,0,.22)!important;
}
.thread-author-name{
  font-size:.94rem!important;
  font-weight:900!important;
  color:#f5f8fa!important;
  letter-spacing:-.01em;
}
.thread-author-role{
  display:inline-flex!important;
  align-items:center;
  margin-top:7px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  background:rgba(231,76,108,.11)!important;
  border:1px solid rgba(231,76,108,.22)!important;
  color:#f5a1b2!important;
  font-size:.58rem!important;
  letter-spacing:.06em!important;
  text-transform:uppercase;
}
.thread-author-meta{
  margin-top:15px!important;
  gap:5px!important;
}
.thread-author-meta div{
  min-height:30px;
  padding:6px 8px!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.018)!important;
  border-color:rgba(255,255,255,.045)!important;
  color:#82929e!important;
  font-size:.64rem!important;
}
.thread-author-meta strong{color:#dfe7ec!important;font-size:.67rem!important}
.thread-author-badges{margin-top:12px!important;gap:4px!important}
.thread-author-badge{
  padding:4px 7px!important;
  border-color:rgba(255,255,255,.07)!important;
  background:rgba(255,255,255,.025)!important;
  color:#93a3ae!important;
  font-size:.56rem!important;
  font-weight:780!important;
}

.dsw-thread-content-pane,
#postsScroll > [data-post-id] > .flex > :last-child{
  padding:29px 34px 19px!important;
  background:linear-gradient(180deg,#08121b,#071019)!important;
}
.dsw-thread-content{
  max-width:1010px!important;
  color:#d5dfe6!important;
  font-size:.97rem!important;
  line-height:1.82!important;
  letter-spacing:.001em!important;
}
.dsw-thread-content strong{color:#f5f8fa!important;font-weight:850!important}
.dsw-thread-content p{margin:.05rem 0 .98rem!important}
.dsw-thread-content h2,
.dsw-thread-content .dsw-post-h2{
  margin:1.65rem 0 .70rem!important;
  color:#f5f8fb!important;
  font-size:1.18rem!important;
}
.dsw-thread-content h2::before,
.dsw-thread-content .dsw-post-h2::before{
  width:3px!important;
  margin-right:9px!important;
  background:#9bdc43!important;
  box-shadow:none!important;
}
.dsw-post-quote{
  border-left:3px solid rgba(173,255,47,.65)!important;
  background:rgba(255,255,255,.028)!important;
  color:#becbd4!important;
}
.dsw-post-inline-image,.dsw-post-inline-video,.dsw-post-attachment-card{
  border-color:rgba(255,255,255,.085)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.18)!important;
}

.dsw-reaction-wrap{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:17px;
  padding-top:13px;
  border-top:1px solid rgba(255,255,255,.055);
}
.dsw-reaction-label{
  flex:0 0 auto;
  color:#758793;
  font-size:.63rem;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.dsw-reactions{margin:0!important;gap:5px!important}
.dsw-reaction-btn{
  min-width:35px;
  min-height:29px;
  justify-content:center;
  padding:5px 8px!important;
  border-color:rgba(255,255,255,.07)!important;
  background:rgba(255,255,255,.025)!important;
  font-size:.72rem!important;
}
.dsw-reaction-btn:hover:not(:disabled){
  transform:none!important;
  border-color:rgba(173,255,47,.22)!important;
  background:rgba(173,255,47,.045)!important;
}
.dsw-reaction-btn.active{
  border-color:rgba(173,255,47,.30)!important;
  background:rgba(173,255,47,.085)!important;
  box-shadow:none!important;
}

.dsw-thread-post-footer,
#postsScroll > [data-post-id] > .flex > :last-child > .flex.items-center.justify-between{
  margin-top:11px!important;
  padding-top:11px!important;
  border-top:0!important;
}
.dsw-post-timestamp{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#758691!important;
  font-size:.67rem!important;
}
.dsw-post-timestamp .material-symbols-rounded{font-size:14px!important}
.like-btn,.report-btn,.dsw-solution-btn{
  min-height:30px!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.065)!important;
  background:rgba(255,255,255,.022)!important;
  color:#9eacb6!important;
  box-shadow:none!important;
}
.like-btn:hover,.report-btn:hover,.dsw-solution-btn:hover{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(255,255,255,.11)!important;
}

/* Reply composer */
.dsw-thread-reply{
  margin-top:17px!important;
  padding:0!important;
  overflow:hidden;
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  background:linear-gradient(180deg,#0a141d,#071019)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.22)!important;
}
.dsw-reply-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px;
  border-bottom:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.012);
}
.dsw-reply-head-copy{display:flex;align-items:center;gap:10px;min-width:0}
.dsw-reply-head-icon{
  width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
  background:rgba(173,255,47,.07);border:1px solid rgba(173,255,47,.14);color:#b9e978;
}
.dsw-reply-head strong{display:block;color:#f5f8fa;font-size:.88rem;font-weight:900}
.dsw-reply-head small{display:block;margin-top:2px;color:#7f909b;font-size:.64rem}
#postForm{padding:15px 18px 17px!important;gap:10px!important}
.dsw-reply-toolbar{margin:0!important;gap:5px!important}
.dsw-reply-tool{
  min-height:31px!important;
  padding:6px 9px!important;
  border-radius:8px!important;
  border-color:rgba(255,255,255,.065)!important;
  background:rgba(255,255,255,.02)!important;
  color:#9eacb6!important;
  font-size:.66rem!important;
}
.dsw-reply-tool:hover{
  border-color:rgba(173,255,47,.20)!important;
  background:rgba(173,255,47,.04)!important;
  color:#dff4c0!important;
}
.dsw-reply-input-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:stretch!important}
.dsw-reply-input-shell{
  position:relative;
  min-width:0;
}
.dsw-thread-reply textarea{
  min-height:116px!important;
  width:100%!important;
  padding:14px 15px!important;
  border-radius:12px!important;
  border-color:rgba(255,255,255,.08)!important;
  background:#050c13!important;
  color:#e9eff3!important;
  font-size:.90rem!important;
  line-height:1.6!important;
}
.dsw-thread-reply textarea::placeholder{color:#627480!important}
.dsw-thread-reply textarea:focus{
  border-color:rgba(173,255,47,.30)!important;
  box-shadow:0 0 0 3px rgba(173,255,47,.045)!important;
}
.dsw-reply-actions{
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  align-items:stretch!important;
}
#uploadTrigger{
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.07)!important;
  background:rgba(255,255,255,.02)!important;
  color:#91a2ae!important;
}
#uploadTrigger:hover{border-color:rgba(173,255,47,.20)!important;background:rgba(173,255,47,.04)!important;color:#c9ef91!important}
#postForm button[type="submit"]{
  min-width:132px!important;
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:0 14px!important;
  border-radius:10px!important;
  background:#9bdc43!important;
  color:#071008!important;
  font-size:.74rem!important;
  font-weight:950!important;
  box-shadow:none!important;
}
#postForm button[type="submit"]:hover{filter:brightness(1.04)!important;transform:none!important}
.dsw-reply-help{color:#71828e!important;font-size:.63rem!important;line-height:1.45!important}

/* Quickdock: dezenter, weniger Gaming-HUD. */
.v53-thread-quickdock{
  border-color:rgba(255,255,255,.075)!important;
  background:rgba(5,11,17,.90)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(12px)!important;
}
.v53-thread-quickdock button:hover{background:rgba(255,255,255,.045)!important}

@media(max-width:900px){
  body > header .dsw-primary-nav{gap:.8rem!important}
  .dsw-thread-stage{width:min(calc(100% - 20px),1340px)!important;padding-top:18px!important}
  .dsw-thread-stage::before{inset:0 -5px 14px!important;border-radius:20px!important}
  .dsw-thread-head{padding:20px!important}
  .dsw-thread-head h1{font-size:1.42rem!important}
  .dsw-thread-tools{padding-top:13px!important}
  .dsw-thread-author-pane,
  #postsScroll > [data-post-id] > .flex > :first-child{
    width:100%!important;
    flex-basis:auto!important;
    padding:12px 14px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.05)!important;
  }
  .thread-author-card{display:flex!important;align-items:center!important;gap:12px!important;text-align:left!important}
  .thread-author-avatar{width:52px!important;height:52px!important;margin:0!important;flex:0 0 52px!important}
  .thread-author-meta,.thread-author-badges{display:none!important}
  .dsw-thread-content-pane,
  #postsScroll > [data-post-id] > .flex > :last-child{padding:20px 18px 16px!important}
  .dsw-thread-content{max-width:none!important;font-size:.94rem!important;line-height:1.72!important}
}
@media(max-width:640px){
  .dsw-thread-stage{width:calc(100% - 12px)!important}
  .dsw-thread-head{padding:17px!important;border-radius:15px!important}
  .dsw-thread-head h1{font-size:1.25rem!important;line-height:1.22!important}
  .dsw-thread-meta-row{gap:6px 9px!important}
  .dsw-thread-tools{display:grid!important;grid-template-columns:1fr 1fr!important}
  .dsw-thread-tool-btn{justify-content:center!important;min-width:0!important;text-align:center!important}
  .dsw-thread-post,#postsScroll > [data-post-id]{border-radius:14px!important}
  .dsw-reaction-wrap{align-items:flex-start!important;flex-direction:column!important;gap:7px!important}
  .dsw-reply-head{padding:14px 15px!important}
  #postForm{padding:13px 15px 15px!important}
  .dsw-reply-input-row{grid-template-columns:1fr!important}
  .dsw-reply-actions{flex-direction:row!important}
  #uploadTrigger{flex:0 0 44px!important}
  #postForm button[type="submit"]{flex:1!important;min-width:0!important}
}
@media(max-width:420px){
  .dsw-thread-tools{grid-template-columns:1fr!important}
  .dsw-thread-content-pane,#postsScroll > [data-post-id] > .flex > :last-child{padding:18px 15px 14px!important}
}

@media(prefers-reduced-motion:reduce){
  .dsw-forum-card,.dsw-thread,.dsw-thread-post,.dsw-thread-tool-btn,#postForm button[type="submit"]{transition:none!important}
}

/* Gastantwort bleibt als eigenständiges Formular angenehm gepolstert. */
#guest-reply.dsw-thread-reply{padding:20px!important;overflow:visible!important}
