/* Digitale Spielewiese V56 – professional UI refinement
   Visual-only layer. Does not alter media/background settings. */
:root{
  --v56-radius-sm:12px;
  --v56-radius:18px;
  --v56-radius-lg:24px;
  --v56-shadow:0 18px 48px rgba(0,0,0,.28);
  --v56-shadow-hover:0 26px 66px rgba(0,0,0,.38);
  --v56-surface:rgba(8,13,20,.86);
  --v56-surface-strong:rgba(6,10,16,.94);
  --v56-line:rgba(255,255,255,.105);
  --v56-accent:#adff2f;
  --v56-muted:#a9b5c0;
}

/* Navigation: logo is home, primary nav stays intentionally short. */
body > header .dsw-nav-row{height:72px!important;min-height:72px!important}
body > header .dsw-primary-nav{gap:8px!important}
body > header .dsw-primary-nav>a,
body > header .dsw-primary-nav>details>summary{
  min-height:42px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:12px;
  text-decoration:none!important;
}
body > header .dsw-primary-nav>a:hover,
body > header .dsw-primary-nav>details>summary:hover{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.08);
}
body > header.dsw-nav-scrolled .dsw-primary-nav>a,
body > header.dsw-nav-scrolled .dsw-primary-nav>details>summary{min-height:40px}

/* Consistent premium surfaces and focus states. */
.dsw-home .dsw-card,
.dsw-home .v51-card{
  border-radius:var(--v56-radius-lg);
  border-color:var(--v56-line);
  box-shadow:var(--v56-shadow);
}
.dsw-home a:focus-visible,
.dsw-home button:focus-visible,
.dsw-home input:focus-visible,
.v54-bottom a:focus-visible{
  outline:2px solid var(--v56-accent)!important;
  outline-offset:3px!important;
}
.dsw-section{padding:50px 0}
.dsw-section-head{margin-bottom:22px}
.dsw-section-head p{max-width:760px;line-height:1.65}
.dsw-section-eyebrow,.v51-kicker{letter-spacing:.13em!important}

/* Hero: calmer hierarchy, no extra overlay on the user's background media. */
.dsw-hero-grid{gap:42px;padding-top:76px;padding-bottom:96px}
.dsw-main-title-final{max-width:900px}
.dsw-hero-copy>p{max-width:720px!important;font-size:1.04rem!important}
.dsw-main-actions .dsw-btn{min-height:48px;padding-inline:19px}
.dsw-userbox{border-color:rgba(255,255,255,.12)!important}
.dsw-mini-actions{gap:10px!important}
.dsw-mini{transition:transform .18s ease,border-color .18s ease,background .18s ease!important}
.dsw-mini:hover{transform:translateY(-2px);border-color:rgba(173,255,47,.25)!important;background:rgba(13,21,30,.97)!important}

/* Useful activity instead of vanity/zero counters. */
.dsw-homepulse-pro{
  display:grid!important;
  grid-template-columns:auto repeat(4,minmax(0,1fr)) auto;
  align-items:stretch!important;
  gap:8px!important;
  padding:10px!important;
}
.dsw-homepulse-pro .dsw-homepulse-title{
  align-self:center;
  padding:10px 12px!important;
}
.dsw-pulse-feature{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.028);
  color:#fff!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.dsw-pulse-feature:hover{
  transform:translateY(-2px);
  border-color:rgba(173,255,47,.26);
  background:rgba(173,255,47,.045);
}
.dsw-pulse-kicker{font-size:.66rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase;color:#9caab6}
.dsw-pulse-feature strong{font-size:.8rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dsw-pulse-actions{display:flex;align-items:center;gap:7px}
.dsw-pulse-actions .dsw-pulse-link{height:100%;justify-content:center}

/* Forum feed: information-first and easier to scan. */
.dsw-forum-feed{gap:14px!important}
.dsw-forum-topic-card{
  min-height:172px;
  padding:19px 20px 18px!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,rgba(12,19,28,.91),rgba(6,11,17,.95))!important;
}
.dsw-forum-topic-card:after{top:20px!important;bottom:20px!important}
.dsw-forum-topic-card:hover{transform:translateY(-3px)!important;box-shadow:var(--v56-shadow-hover)!important}
.dsw-forum-topic-title{font-size:1.08rem!important;line-height:1.42!important}
.dsw-forum-category{max-width:72%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dsw-forum-now-foot{padding-top:16px}

/* Premium game discovery: larger featured cards + calmer second row. */
.dsw-games{grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:16px!important}
.dsw-game{
  grid-column:span 4;
  min-height:285px!important;
  padding:22px!important;
  border-radius:24px!important;
  box-shadow:0 20px 50px rgba(0,0,0,.30)!important;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
.dsw-game.g1,.dsw-game.g2{grid-column:span 6;min-height:330px!important}
.dsw-game:before{background:linear-gradient(180deg,rgba(3,6,10,.02),rgba(4,7,11,.16) 35%,rgba(4,8,13,.88) 72%,rgba(4,8,13,.985))!important}
.dsw-game:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 22%,transparent 72%,rgba(173,255,47,.045));
  opacity:.55;
  transition:opacity .22s ease;
}
.dsw-game:hover{transform:translateY(-4px)!important;box-shadow:var(--v56-shadow-hover)!important}
.dsw-game:hover:after{opacity:.9}
.dsw-game-icon{
  width:48px;height:48px;display:grid;place-items:center;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.11);
  background:rgba(4,8,13,.48);
  backdrop-filter:blur(8px);
  font-size:1.55rem!important;
}
.dsw-game small{font-size:.7rem!important}
.dsw-game h3{font-size:1.28rem!important;letter-spacing:-.02em}
.dsw-game p{max-width:390px;font-size:.82rem!important}

/* Community cards: slightly quieter and more consistent. */
.dsw-community-pulse{gap:16px!important}
.dsw-community-pulse>.dsw-card{padding:22px}
.dsw-online-stat{background:rgba(173,255,47,.055)!important;border-color:rgba(173,255,47,.13)!important}
.dsw-online-stat-soft b{font-size:.85rem!important;letter-spacing:.12em}
.dsw-serverbar{border-radius:18px!important}

/* Videos / media */
.dsw-video-grid{gap:16px!important}
.dsw-video{border-radius:20px!important;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.dsw-video:hover{transform:translateY(-3px);border-color:rgba(173,255,47,.24)!important;box-shadow:var(--v56-shadow-hover)!important}

/* Mobile app-like navigation: exactly four primary destinations. */
@media(max-width:780px){
  body{padding-bottom:78px!important}
  .v56-bottom{grid-template-columns:repeat(4,1fr)!important;left:12px!important;right:12px!important;bottom:10px!important;padding:7px!important;border-radius:19px!important}
  .v56-bottom a{min-height:50px!important;font-size:.66rem!important;border-radius:13px}
}

/* Responsive homepage */
@media(max-width:1180px){
  .dsw-homepulse-pro{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dsw-homepulse-pro .dsw-homepulse-title,.dsw-pulse-actions{grid-column:1/-1}
  .dsw-pulse-actions .dsw-pulse-link{flex:1}
  .dsw-game.g1,.dsw-game.g2,.dsw-game{grid-column:span 6}
}
@media(max-width:900px){
  .dsw-hero-grid{padding-top:54px;padding-bottom:78px}
  .dsw-section{padding:42px 0}
  .dsw-games{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dsw-game.g1,.dsw-game.g2,.dsw-game{grid-column:span 1!important;min-height:270px!important}
}
@media(max-width:720px){
  .dsw-homepulse-pro{grid-template-columns:1fr!important}
  .dsw-homepulse-pro .dsw-homepulse-title,.dsw-pulse-actions{grid-column:auto}
  .dsw-pulse-feature strong{white-space:normal}
  .dsw-games{grid-template-columns:1fr!important}
  .dsw-game{min-height:245px!important}
  .dsw-section{padding:36px 0}
  .dsw-section h2{font-size:clamp(1.65rem,8vw,2.35rem)!important}
}

/* Subtle motion only. No blinking or large movement. */
html.v56-motion-ready .v56-reveal{opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .45s ease}
html.v56-motion-ready .v56-reveal.v56-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  html.v56-motion-ready .v56-reveal{opacity:1!important;transform:none!important}
}
