/* =========================================================
   DIGITALE SPIELEWIESE – FORUM NEXT V44
   Ergänzende, vollständig scoped Forum-Politur.
   Keine Homepage-Komponenten außerhalb .dsw-forum-surface werden verändert.
   ========================================================= */

body.dsw-forum-surface{
  --forum-font-body:"Manrope","Inter","Segoe UI",sans-serif;
  --forum-font-display:"Space Grotesk","Manrope","Inter",sans-serif;
  --forum-white:#f8fbff;
  --forum-soft:#d4dde6;
  --forum-muted:#9aabba;
  --forum-lime:#adff2f;
  --forum-cyan:#64d9ff;
  --forum-panel:rgba(5,10,16,.90);
  --forum-panel-2:rgba(10,17,24,.86);
  --forum-line:rgba(255,255,255,.095);
  font-family:var(--forum-font-body)!important;
  color:var(--forum-white)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.dsw-forum-font-inter{--forum-font-body:"Inter","Segoe UI",sans-serif;--forum-font-display:"Space Grotesk","Inter",sans-serif}
body.dsw-forum-font-plex{--forum-font-body:"IBM Plex Sans","Segoe UI",sans-serif;--forum-font-display:"IBM Plex Sans","Inter",sans-serif}
body.dsw-forum-font-rajdhani{--forum-font-body:"Inter","Segoe UI",sans-serif;--forum-font-display:"Rajdhani","Space Grotesk",sans-serif}

body.dsw-forum-surface :where(h1,h2,h3,.dsw-forum-name,.dsw-thread-title,.dsw-saved-copy strong){
  font-family:var(--forum-font-display)!important;
  color:#fff;
  letter-spacing:-.025em;
}
body.dsw-forum-surface :where(p,li,.dsw-thread-content,.dsw-post-content){color:var(--forum-soft)}
body.dsw-forum-surface :where(input,textarea,select,button){font-family:var(--forum-font-body)}

/* Forum overview */
body.dsw-forum-surface .dsw-forum-page{width:min(100% - 34px,1500px);padding-top:32px}
body.dsw-forum-surface .dsw-forum-hero{
  border-radius:30px;
  border-color:rgba(173,255,47,.16);
  background:
    radial-gradient(circle at 86% 16%,rgba(100,217,255,.09),transparent 25rem),
    radial-gradient(circle at 10% -20%,rgba(173,255,47,.11),transparent 28rem),
    linear-gradient(145deg,rgba(5,10,16,.96),rgba(11,18,26,.91));
}
body.dsw-forum-surface .dsw-forum-hero h1{font-family:var(--forum-font-display)!important;font-weight:800!important;letter-spacing:-.055em}
body.dsw-forum-surface .dsw-forum-hero p{color:#d1dbe4;font-size:1rem}
body.dsw-forum-surface .dsw-forum-searchbar{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;
  max-width:790px;margin-top:20px;padding:7px 7px 7px 14px;border-radius:16px;
  background:rgba(1,7,12,.70);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 14px 34px rgba(0,0,0,.20)
}
body.dsw-forum-surface .dsw-forum-searchbar>.material-symbols-rounded{color:#b8f461;font-size:22px}
body.dsw-forum-surface .dsw-forum-searchbar input{min-width:0;border:0!important;outline:0!important;background:transparent!important;color:#fff!important;padding:10px 2px!important;box-shadow:none!important}
body.dsw-forum-surface .dsw-forum-searchbar input::placeholder{color:#7f919f}
body.dsw-forum-surface .dsw-forum-searchbar button{border:0;border-radius:11px;background:#ecfbd6;color:#071006;font-weight:900;padding:10px 15px;cursor:pointer;transition:.18s ease}
body.dsw-forum-surface .dsw-forum-searchbar button:hover{transform:translateY(-1px);background:#fff}
body.dsw-forum-surface .dsw-forum-card{border-radius:20px;border-color:rgba(255,255,255,.085);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}
body.dsw-forum-surface .dsw-forum-card:hover{transform:translateY(-3px);border-color:rgba(173,255,47,.27);box-shadow:0 24px 55px rgba(0,0,0,.32),0 0 0 1px rgba(173,255,47,.035);background:linear-gradient(145deg,rgba(12,20,28,.96),rgba(7,13,19,.94))}
body.dsw-forum-surface .dsw-forum-name{font-weight:700!important}
body.dsw-forum-surface .dsw-forum-desc{color:#aebac5!important}
body.dsw-forum-surface .dsw-latest-title{font-family:var(--forum-font-display);font-weight:650;color:#fff}
body.dsw-forum-surface .dsw-latest-item:hover .dsw-latest-title{color:#dfffad}

/* Kategorie / Thread-Liste */
body.dsw-forum-surface .dsw-cat{font-family:var(--forum-font-body)!important}
body.dsw-forum-surface .dsw-panel,
body.dsw-forum-surface .dsw-thread,
body.dsw-forum-surface .dsw-side-primary,
body.dsw-forum-surface .dsw-side-stats{
  background:linear-gradient(145deg,rgba(7,13,20,.94),rgba(10,18,26,.88))!important;
  border-color:var(--forum-line)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
body.dsw-forum-surface .dsw-thread{border-radius:17px!important}
body.dsw-forum-surface .dsw-thread:hover{border-color:rgba(173,255,47,.24)!important;background:linear-gradient(145deg,rgba(10,19,27,.97),rgba(8,15,22,.94))!important}
body.dsw-forum-surface .dsw-thread-title{font-size:1.02rem!important;font-weight:650!important;color:#fff!important}
body.dsw-forum-surface .dsw-thread-title:hover{color:#dfffad!important}
body.dsw-forum-surface .dsw-thread-meta,body.dsw-forum-surface .dsw-thread-last{color:#91a2af!important}
body.dsw-forum-surface .dsw-thread-metric b{color:#fff!important}
body.dsw-forum-surface .dsw-thread-bookmark{
  width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:11px;cursor:pointer;
  border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);color:#8fa0ad;transition:.18s ease
}
body.dsw-forum-surface .dsw-thread-bookmark .material-symbols-rounded{font-size:20px}
body.dsw-forum-surface .dsw-thread-bookmark:hover{color:#dfffad;border-color:rgba(173,255,47,.34);transform:translateY(-1px)}
body.dsw-forum-surface .dsw-thread-bookmark.active{color:#071006;background:linear-gradient(135deg,#c9ff72,#8ce02d);border-color:rgba(210,255,140,.55);box-shadow:0 7px 20px rgba(140,224,45,.18)}
body.dsw-forum-surface .dsw-thread-bookmark.active .material-symbols-rounded{font-variation-settings:'FILL' 1,'wght' 600,'GRAD' 0,'opsz' 24}
body.dsw-forum-surface .dsw-thread-bookmark:disabled{opacity:.5;cursor:wait}

/* Thread detail */
body.dsw-forum-surface .dsw-thread-stage{font-family:var(--forum-font-body)!important}
body.dsw-forum-surface .dsw-thread-head h1{font-family:var(--forum-font-display)!important;font-weight:750!important;color:#fff!important;letter-spacing:-.035em!important}
body.dsw-forum-surface .dsw-thread-content{color:#f1f5f9!important;font-size:1rem!important;line-height:1.82!important;font-weight:450!important}
body.dsw-forum-surface .dsw-thread-content :where(p,li){color:#f1f5f9!important}
body.dsw-forum-surface .dsw-thread-content :where(h2,h3,strong,b){color:#fff!important}
body.dsw-forum-surface .dsw-thread-tool-btn{border-radius:11px!important;background:rgba(255,255,255,.045)!important;color:#dce6ee!important;border-color:rgba(255,255,255,.10)!important}
body.dsw-forum-surface .dsw-thread-tool-btn:hover{border-color:rgba(173,255,47,.34)!important;color:#efffd6!important;background:rgba(173,255,47,.06)!important}
body.dsw-forum-surface .dsw-thread-tool-btn.active{background:linear-gradient(135deg,rgba(173,255,47,.18),rgba(100,217,255,.08))!important;border-color:rgba(173,255,47,.42)!important;color:#dfffad!important}
body.dsw-forum-surface .dsw-thread-tool-btn.active .material-symbols-rounded{font-variation-settings:'FILL' 1,'wght' 600,'GRAD' 0,'opsz' 24}

/* Saved page */
body.dsw-forum-surface .dsw-saved-page{width:min(100% - 34px,1320px);margin:0 auto;padding:34px 0 76px;color:#fff}
body.dsw-forum-surface .dsw-saved-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:28px;border:1px solid rgba(173,255,47,.15);border-radius:28px;background:radial-gradient(circle at 92% 0,rgba(100,217,255,.08),transparent 24rem),linear-gradient(145deg,rgba(6,12,19,.95),rgba(11,18,26,.90));box-shadow:0 24px 70px rgba(0,0,0,.28)}
body.dsw-forum-surface .dsw-saved-kicker,body.dsw-forum-surface .dsw-saved-eyebrow{display:flex;align-items:center;gap:7px;color:#caff7a;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.72rem}
body.dsw-forum-surface .dsw-saved-hero h1{margin:8px 0 7px;font-size:clamp(2rem,4vw,3.25rem);font-weight:750}
body.dsw-forum-surface .dsw-saved-hero p{margin:0;color:#bcc8d3;max-width:760px}
body.dsw-forum-surface .dsw-saved-stats{display:flex;gap:9px}
body.dsw-forum-surface .dsw-saved-stats>div{min-width:105px;padding:14px 16px;text-align:center;border:1px solid rgba(255,255,255,.085);border-radius:16px;background:rgba(255,255,255,.035)}
body.dsw-forum-surface .dsw-saved-stats strong{display:block;font:750 1.35rem/1 var(--forum-font-display);color:#fff}
body.dsw-forum-surface .dsw-saved-stats span{display:block;margin-top:5px;color:#8ea0ad;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
body.dsw-forum-surface .dsw-saved-nav{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 20px;padding:8px;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:rgba(5,10,16,.70);backdrop-filter:blur(12px)}
body.dsw-forum-surface .dsw-saved-nav a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:10px;color:#cbd5df!important;text-decoration:none;font-weight:750;font-size:.82rem}
body.dsw-forum-surface .dsw-saved-nav a:hover{background:rgba(173,255,47,.07);color:#eaffc7!important}
body.dsw-forum-surface .dsw-saved-section{margin-top:16px;padding:22px;border:1px solid rgba(255,255,255,.085);border-radius:22px;background:linear-gradient(145deg,rgba(7,13,20,.93),rgba(10,18,26,.88));box-shadow:0 18px 50px rgba(0,0,0,.22)}
body.dsw-forum-surface .dsw-saved-section-head{display:flex;align-items:end;justify-content:space-between;gap:15px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.07)}
body.dsw-forum-surface .dsw-saved-section-head h2{margin:5px 0 0;font-size:1.45rem;font-weight:700}
body.dsw-forum-surface .dsw-saved-count{display:grid;place-items:center;min-width:38px;height:32px;padding:0 10px;border-radius:999px;background:rgba(173,255,47,.09);border:1px solid rgba(173,255,47,.18);color:#dfffad;font-weight:800}
body.dsw-forum-surface .dsw-saved-list{display:grid;gap:9px;margin-top:14px}
body.dsw-forum-surface .dsw-saved-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:rgba(255,255,255,.025);overflow:hidden;transition:.18s ease}
body.dsw-forum-surface .dsw-saved-item:hover{border-color:rgba(173,255,47,.22);transform:translateY(-1px);background:rgba(255,255,255,.04)}
body.dsw-forum-surface .dsw-saved-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;min-width:0;padding:14px 15px;color:#fff!important;text-decoration:none!important}
body.dsw-forum-surface .dsw-saved-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:rgba(173,255,47,.08);color:#caff7a}
body.dsw-forum-surface .dsw-saved-copy{min-width:0}
body.dsw-forum-surface .dsw-saved-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.98rem}
body.dsw-forum-surface .dsw-saved-copy small{display:block;margin-top:3px;color:#8ea0ad;font-size:.75rem}
body.dsw-forum-surface .dsw-saved-metrics{color:#9eacb8;font-size:.75rem;white-space:nowrap}
body.dsw-forum-surface .dsw-saved-metrics b{color:#dbe5ed}
body.dsw-forum-surface .dsw-saved-remove{width:48px;border:0;border-left:1px solid rgba(255,255,255,.065);background:transparent;color:#6f818f;cursor:pointer;transition:.18s ease}
body.dsw-forum-surface .dsw-saved-remove:hover{background:rgba(239,68,68,.09);color:#fecaca}
body.dsw-forum-surface .dsw-saved-remove:disabled{opacity:.45;cursor:wait}
body.dsw-forum-surface .dsw-saved-empty{text-align:center;padding:36px 16px;color:#8fa0ad}
body.dsw-forum-surface .dsw-saved-empty.is-hidden{display:none}
body.dsw-forum-surface .dsw-saved-empty>.material-symbols-rounded{font-size:42px;color:#5f7380}
body.dsw-forum-surface .dsw-saved-empty strong{display:block;color:#dfe7ee;margin-top:6px}
body.dsw-forum-surface .dsw-saved-empty p{margin:5px auto 12px;color:#8fa0ad}
body.dsw-forum-surface .dsw-saved-empty a{display:inline-flex;padding:8px 12px;border-radius:10px;background:rgba(173,255,47,.1);color:#dfffad!important;text-decoration:none;font-weight:800}

/* Compact density – opt-in via Admin */
body.dsw-forum-density-compact .dsw-forum-card{padding-top:13px!important;padding-bottom:13px!important}
body.dsw-forum-density-compact .dsw-thread{padding:10px 12px!important}
body.dsw-forum-density-compact .dsw-thread-content{font-size:.95rem!important;line-height:1.68!important}
body.dsw-forum-density-compact .dsw-saved-item .dsw-saved-main{padding-top:10px;padding-bottom:10px}

@media(max-width:800px){
  body.dsw-forum-surface .dsw-forum-page,body.dsw-forum-surface .dsw-saved-page{width:min(100% - 20px,1500px)}
  body.dsw-forum-surface .dsw-forum-searchbar{grid-template-columns:auto minmax(0,1fr);padding:8px 11px}
  body.dsw-forum-surface .dsw-forum-searchbar button{grid-column:1/-1;width:100%}
  body.dsw-forum-surface .dsw-saved-hero{grid-template-columns:1fr;padding:21px}
  body.dsw-forum-surface .dsw-saved-stats{width:100%}
  body.dsw-forum-surface .dsw-saved-stats>div{flex:1;min-width:0}
  body.dsw-forum-surface .dsw-saved-main{grid-template-columns:auto minmax(0,1fr)}
  body.dsw-forum-surface .dsw-saved-metrics{grid-column:2;white-space:normal}
}
@media(max-width:560px){
  body.dsw-forum-surface .dsw-saved-section{padding:15px}
  body.dsw-forum-surface .dsw-saved-copy strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  body.dsw-forum-surface .dsw-saved-copy small{line-height:1.45}
  body.dsw-forum-surface .dsw-thread-bookmark{width:36px;height:36px;flex-basis:36px}
}
@media(prefers-reduced-motion:reduce){
  body.dsw-forum-surface *{scroll-behavior:auto!important}
  body.dsw-forum-surface .dsw-forum-card,body.dsw-forum-surface .dsw-thread,body.dsw-forum-surface .dsw-saved-item{transition:none!important}
}

/* V50 Community Upgrade: prefixes, unread and solution badges */
.dsw-prefix-badge{display:inline-flex!important;align-items:center;gap:4px;background:rgba(148,163,184,.10)!important;border-color:rgba(148,163,184,.22)!important;color:#dbe7ef!important}
.dsw-prefix-news{background:rgba(59,130,246,.12)!important;border-color:rgba(96,165,250,.35)!important;color:#bfdbfe!important}
.dsw-prefix-frage{background:rgba(139,92,246,.12)!important;border-color:rgba(167,139,250,.35)!important;color:#ddd6fe!important}
.dsw-prefix-hilfe{background:rgba(245,158,11,.12)!important;border-color:rgba(251,191,36,.35)!important;color:#fde68a!important}
.dsw-prefix-guide{background:rgba(34,197,94,.12)!important;border-color:rgba(74,222,128,.35)!important;color:#bbf7d0!important}
.dsw-prefix-mitspieler{background:rgba(236,72,153,.12)!important;border-color:rgba(244,114,182,.35)!important;color:#fbcfe8!important}
.dsw-solved-badge{display:inline-flex!important;align-items:center;gap:4px;background:rgba(34,197,94,.15)!important;border-color:rgba(74,222,128,.42)!important;color:#bbf7d0!important}
.dsw-unread-badge{background:rgba(163,230,53,.14)!important;border-color:rgba(190,242,100,.4)!important;color:#d9f99d!important}
.dsw-thread-unread{border-color:rgba(163,230,53,.25)!important;box-shadow:inset 3px 0 0 rgba(163,230,53,.75)}
.dsw-thread[hidden]{display:none!important}
