/* Public welcome owns its palette and layout; shared app styles stop at this boundary. */
.auth-landing.dxl.dxw.public-welcome {
  --dxw-paper:#0d0f14; --dxw-ink:#eceef4; --dxw-lime:#8da6ff; --dxw-hair:#282c38;
  --dxl-bg:#0d0f14; --dxl-surface:#15171e; --dxl-raised:#1b1e27; --dxl-raised-2:#222632;
  --dxl-border:#282c38; --dxl-border-2:#363c4b; --dxl-text:#eceef4; --dxl-sec:#a0a6b5; --dxl-muted:#8992a3;
  --dxw-gut:max(24px,calc((100vw - 1180px)/2));
  background:#0d0f14; color:#eceef4; font-family:Inter,"Segoe UI",system-ui,sans-serif;
  color-scheme:dark; font-size:14px; line-height:1.6;
}
.public-welcome *, .public-welcome *::before, .public-welcome *::after { box-sizing:border-box; }
.public-welcome button,.public-welcome input,.public-welcome select { font-family:inherit; }
.public-welcome button,.public-welcome a { -webkit-tap-highlight-color:transparent; }
.public-welcome button:focus-visible,.public-welcome a:focus-visible,.public-welcome summary:focus-visible { outline:2px solid #8da6ff; outline-offset:4px; }
.public-welcome [data-reveal] { opacity:1; transform:none; transition:none; }
.public-welcome .dxw-layer { transform:none !important; transition:none; will-change:auto; }
.public-welcome .dxw-grain,.public-welcome .dxw-hero::before,.public-welcome .dxw-stage::before,.public-welcome .dxw-nav::after { display:none; }
.public-welcome .dxw-nav { position:relative; inset:auto; height:72px; padding:0 var(--dxw-gut); gap:24px; background:#0d0f14; border-bottom:1px solid #282c38; backdrop-filter:none; }
.public-welcome .dxw-brand { padding:0; gap:9px; border:0; background:none; color:#eceef4; }
.public-welcome .dxw-brand img { width:27px; height:27px; padding:2px; background:none; }
.public-welcome .dxw-brand span { font-size:17px; font-weight:750; letter-spacing:.08em; }
.public-welcome .dxw-nav-links { gap:6px; margin:0; }
.public-welcome .dxw-nav-link { padding:8px 10px; border:0; background:none; font-size:13px; font-weight:500; color:#a0a6b5; text-decoration:none; cursor:pointer; }
.public-welcome .dxw-nav-link:hover,.public-welcome .dxw-signin:hover { color:#eceef4; border:0; }
.public-welcome .dxw-signin { color:#a0a6b5; font-size:13px; font-weight:500; padding:10px 0; }
.public-welcome .dxw-join { color:#eceef4; background:#1b1e27; border:1px solid #363c4b; border-radius:8px; padding:9px 15px; font-size:13px; font-weight:600; }
.public-welcome .dxw-join i,.public-welcome .dxw-cta i { display:none; }
.public-welcome .dxw-join:hover { background:#252a36; }
.public-welcome .dxw-hero { display:grid; grid-template-columns:minmax(0,1fr) 400px; gap:80px; padding:72px var(--dxw-gut); background:none; min-height:0; align-items:start; border-bottom:1px solid #282c38; }
.public-welcome .dxw-hero-copy { padding:38px 0 0; }
.public-welcome .dxw-eyebrow { margin:0 0 20px; color:#8da6ff; font:550 12px/1.5 Inter,"Segoe UI",system-ui,sans-serif; letter-spacing:.02em; text-transform:none; }
.public-welcome .dxw-h1 { font-size:clamp(40px,4.2vw,56px); font-weight:650; letter-spacing:-.045em; line-height:1.12; text-transform:none; color:#eceef4; margin:0 0 24px; }
.public-welcome .dxw-hero-sub { color:#a0a6b5; font-size:16px; line-height:1.75; max-width:475px; margin:0 0 28px; }
.public-welcome .dxw-cta-row { gap:10px; margin:0; display:flex; flex-wrap:wrap; }
.public-welcome .dxw-cta,.public-welcome .dxw-ghost { display:inline-flex; align-items:center; justify-content:center; gap:14px; width:auto; min-height:42px; padding:10px 17px; border-radius:8px; font:550 13px/1.5 Inter,"Segoe UI",system-ui,sans-serif; text-transform:none; letter-spacing:0; clip-path:none; transition:background .15s; box-shadow:none; transform:none; }
.public-welcome .dxw-cta { background:#536bd9; border:1px solid #536bd9; color:#fff; }
.public-welcome .dxw-cta:hover { background:#465bc0; border-color:#465bc0; }
.public-welcome .dxw-ghost { background:#15171e; border:1px solid #363c4b; color:#d5d9e3; }
.public-welcome .dxw-ghost:hover { background:#1b1e27; }
.public-welcome .dxw-hero-note { margin:15px 0 0; font:400 12px/1.6 Inter,"Segoe UI",system-ui,sans-serif; color:#8992a3; letter-spacing:0; text-transform:none; }
.public-intro-list { margin-top:40px; border-top:1px solid #282c38; max-width:475px; }
.public-intro-list a { display:flex; align-items:center; gap:14px; padding:17px 0; border-bottom:1px solid #282c38; text-decoration:none; color:#d5d9e3; }
.public-intro-icon { display:grid; place-items:center; width:32px; height:32px; flex:none; border:1px solid #363c4b; border-radius:8px; color:#a6b7f6; font-size:18px; }
.public-intro-list strong { display:block; font-size:13px; font-weight:550; }
.public-intro-list small { display:block; margin-top:2px; color:#8992a3; font-size:12px; }
.public-intro-list b { margin-left:auto; font-size:16px; font-weight:400; color:#8992a3; }
.public-intro-list a:hover strong,.public-intro-list a:hover b { color:#a7baff; }
.public-welcome .dxl-hero-right { min-width:0; scroll-margin-top:24px; }
.public-welcome .dxl-card { width:100%; max-width:none; margin:0; background:#15171e; border:1px solid #282c38; border-radius:12px; padding:26px; box-shadow:0 8px 30px #0002; backdrop-filter:none; }
.public-welcome .dxl-card::before { display:none; }
.public-welcome .dxl-card-title { font-size:21px; line-height:1.4; font-weight:600; color:#eceef4; letter-spacing:-.02em; }
.public-welcome .dxl-card-sub { font-size:13px; line-height:1.6; margin:5px 0 24px; color:#a0a6b5; }
.public-welcome .dxl-form { gap:14px; padding:0; margin:0; }
.public-welcome .dxl-form .oauth-buttons { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.public-welcome .dxl-form .oauth-btn { padding:10px; min-height:42px; background:#1b1e27; color:#eceef4; border:1px solid #363c4b; border-radius:8px; font-size:13px; font-weight:500; }
.public-welcome .dxl-form .oauth-btn:hover { background:#252a36; }
.public-welcome .dxl-form .auth-divider { color:#8992a3; font-size:11px; text-transform:none; margin:2px 0; }
.public-welcome .dxl-form .auth-divider::before,.public-welcome .dxl-form .auth-divider::after { background:#282c38; }
.public-welcome .dxl-form .auth-field { gap:6px; min-width:0; }
.public-welcome .dxl-form .auth-field label { font-size:12px; font-weight:500; color:#b8bfcc; }
.public-welcome .dxl-form .auth-field input,.public-welcome .dxl-form .auth-field select { background:#101218; border:1px solid #303542; border-radius:7px; padding:10px 12px; min-height:41px; width:100%; font-size:13px; color:#eceef4; box-shadow:none; }
.public-welcome .dxl-form .auth-field input::placeholder { color:#8992a3; opacity:1; }
.public-welcome .dxl-form .auth-field input:focus,.public-welcome .dxl-form .auth-field select:focus { border-color:#8da6ff; outline:2px solid #6385ff30; }
.public-welcome .dxl-form .auth-checkbox-label { font-size:11px; line-height:1.65; color:#a0a6b5; }
.public-welcome .dxl-form .auth-checkbox-label input { accent-color:#6385ff; }
.public-welcome .dxl-form .auth-checkbox-label a { color:#a8bbff; }
.public-welcome .dxl-submit { padding:11px; min-height:42px; margin:0; background:#536bd9; border:1px solid #536bd9; border-radius:8px; color:#fff; font-size:13px; font-weight:600; }
.public-welcome .dxl-submit:hover { background:#465bc0; border-color:#465bc0; }
.public-welcome .dxl-card-foot { font-size:12px; color:#a0a6b5; }
.public-welcome .dxl-card-foot button { padding:0; border:0; background:none; color:#a8bbff; font:inherit; font-weight:500; cursor:pointer; }
.public-welcome .dxl-more summary { color:#a0a6b5; font-size:12px; font-weight:400; }
.public-welcome .dxl-guest { color:#a0a6b5; border-color:#282c38; padding:15px 0 0; margin:18px 0 0; font-size:12px; }
.public-welcome .dxl-guest:hover { color:#eceef4; }
.public-welcome .dxw-sec { padding:72px var(--dxw-gut); border-top:0; border-bottom:1px solid #282c38; }
.public-welcome .dxw-index { padding:0; margin:0 0 10px; font:550 12px/1.5 Inter,"Segoe UI",system-ui,sans-serif; color:#8da6ff; letter-spacing:.02em; text-transform:none; }
.public-welcome .dxw-title { padding:0; margin:0; font-size:32px; line-height:1.25; font-weight:600; letter-spacing:-.035em; text-transform:none; color:#eceef4; }
.public-welcome .dxw-sub { padding:0; margin:14px 0 0; max-width:580px; font-size:14px; line-height:1.7; color:#a0a6b5; }
.public-welcome .dxw-stage { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr); gap:20px; margin:32px 0 0; perspective:none; align-items:start; }
.public-welcome .dxw-panel { border:1px solid #282c38; border-radius:10px; background:#15171e; box-shadow:none; overflow:hidden; }
.public-welcome .dxw-panel-bar { padding:12px 16px; gap:12px; flex-wrap:wrap; background:#181b23; border-color:#282c38; font:500 11px/1.5 Inter,"Segoe UI",system-ui,sans-serif; letter-spacing:.02em; color:#b8bfcc; text-transform:none; }
.public-welcome .dxw-panel-bar u { color:#8992a3; font-size:10px; }
.public-welcome .dxw-composer { border-color:#282c38; padding:14px 16px; }
.public-welcome .dxw-composer .ph { font-size:12px; color:#8992a3; }
.public-welcome .dxw-composer b { color:#cbd5f7; background:#29334f; border-radius:6px; font-size:11px; padding:6px 11px; }
.public-welcome .dxl-feed-card { padding:16px; border-color:#282c38; }
.public-welcome .dxl-feed-who b { color:#eceef4; font-size:12px; font-weight:550; }
.public-welcome .dxl-feed-who span { color:#8992a3; font-size:11px; }
.public-welcome .dxl-feed-body { color:#b8bfcc; font-size:13px; line-height:1.65; }
.public-welcome .dxl-feed-game { font:500 10px/1.5 Inter,"Segoe UI",system-ui,sans-serif; color:#a0a6b5; border:1px solid #363c4b; border-radius:5px; letter-spacing:0; text-transform:none; }
.public-welcome .dxl-pv-av,.public-welcome .dxl-pv-av.a1,.public-welcome .dxl-pv-av.a2,.public-welcome .dxl-pv-av.a3,.public-welcome .dxl-clip-av { border:1px solid #363c4b; border-radius:7px; color:#c8d5ff; background:#252d42; }
.public-welcome .dxw-feed-actions { border-color:#282c38; color:#8992a3; padding:12px 16px; font:400 11px/1.5 Inter,"Segoe UI",system-ui,sans-serif; letter-spacing:0; }
.public-welcome .dxw-feed-actions b { color:#b8bfcc; }
.public-welcome .dxl-feed-media { height:160px; border-color:#282c38; background:#101218; border-radius:7px; }
.public-welcome .dxl-pv-play { width:32px; height:32px; border-radius:50%; background:#252d42; color:#b7c8ff; }
.public-welcome .public-clip-link { display:flex; align-items:center; gap:12px; margin-top:12px; padding:12px; border:1px solid #30384a; border-radius:7px; background:#1b202d; color:#b8c8fa; text-decoration:none; font-size:12px; }
.public-welcome .public-clip-link:hover { background:#232b3d; }
.public-welcome .public-clip-link .dxl-pv-play { flex:none; }
.public-welcome .dxw-prof-banner { height:80px; background:#1b1e27; border-color:#282c38; }
.public-welcome .dxw-prof-row { padding:12px 16px 4px; }
.public-welcome .dxw-prof-av { color:#b7c8ff; background:#252d42; border-radius:9px; outline:3px solid #15171e; }
.public-welcome .dxw-prof-name { font-weight:550; color:#eceef4; }
.public-welcome .dxw-prof-name span { color:#8992a3; }
.public-welcome .dxw-prof-stats { padding:10px 16px 16px; color:#8992a3; font:400 11px/1.5 Inter,"Segoe UI",system-ui,sans-serif; }
.public-welcome .dxw-prof-stats b { color:#d5d9e3; font-weight:550; }
.public-welcome .dxl-pv-row { margin:0; padding:12px 16px; }
.public-welcome .dxl-pv-row b { font-size:12px; font-weight:500; color:#d5d9e3; }
.public-welcome .dxl-pv-tag { font:400 10px/1.5 Inter,"Segoe UI",system-ui,sans-serif; color:#8992a3; letter-spacing:0; text-transform:none; }
.public-welcome .dxw-partyjoin { display:block; width:calc(100% - 32px); margin:8px 16px 16px; border:1px solid #363c4b; border-radius:7px; color:#b8bfcc; background:#1b1e27; font-size:12px; font-weight:500; cursor:pointer; }
.public-welcome .dxw-clipcol { border:1px solid #282c38; border-radius:10px; overflow:hidden; background:#15171e; }
.public-welcome .dxl-clip-strip { display:flex; gap:1px; padding:0; overflow:auto; }
.public-welcome .dxl-clip-strip .dxl-clip-card { min-width:0; flex:1 1 0; max-width:none; border:0; border-radius:0; background:#15171e; box-shadow:none; }
.public-welcome .dxl-clip-media { height:110px; background:#101218; border-color:#282c38; }
.public-welcome .dxl-clip-foot { padding:12px; }
.public-welcome a.dxl-clip-card { text-decoration:none; }
.public-welcome button.dxl-comm-card,.public-welcome a.dxl-clip-card { pointer-events:auto !important; }
.public-welcome a.dxl-clip-card:hover { background:#1b202d; }
.public-welcome .dxl-clip-media { gap:10px; }
.public-welcome .public-clip-label { color:#8992a3; font-size:11px; }
.public-welcome .dxl-clip-meta b { color:#d5d9e3; font-size:11px; font-weight:500; }
.public-welcome .dxl-clip-meta span { color:#8992a3; }
.public-welcome .dxw-arenachip { display:none; }
.public-welcome .dxl-comm-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 28px; overflow:visible; padding:28px 0 0; }
.public-welcome .dxl-comm-card { display:flex; width:100%; min-height:0; padding:22px 0; gap:16px; border:0; border-bottom:1px solid #282c38; border-radius:0; box-shadow:none; background:none; transform:none; cursor:pointer; text-align:left; }
.public-welcome #dxl-communities-source { display:block; margin-top:16px; font-size:11px; color:#8992a3; }
.public-welcome .dxl-comm-card:hover { transform:none; box-shadow:none; }
.public-welcome .dxl-comm-top { gap:14px; }
.public-welcome .dxl-comm-ic { width:42px; height:42px; border-radius:9px; font-size:18px; font-weight:600; color:#b7c8ff; border:1px solid #363c4b; background-color:#1b1e27; }
.public-welcome .dxl-comm-name { color:#d5d9e3; font-size:14px; font-weight:550; letter-spacing:0; gap:3px; }
.public-welcome .dxl-comm-name span { color:#8992a3; font-size:11px; line-height:1.5; }
.public-welcome .dxl-comm-foot { justify-content:flex-start; gap:10px; }
.public-welcome .dxl-comm-join { color:#a8bbff; border:0; background:none; padding:0; font-size:11px; font-weight:500; }
.public-welcome .dxl-stack-av { border-color:#15171e; border-radius:50%; background:#1b1e27; color:#b7c8ff; }
.public-welcome .dxw-rail-hint { display:none; }
.public-destinations { padding:72px var(--dxw-gut); display:grid; grid-template-columns:.9fr 1fr 1fr; gap:48px; border-bottom:1px solid #282c38; }
.public-destinations-intro h2,.public-welcome .dxw-final h2 { color:#eceef4; font-size:28px; line-height:1.3; letter-spacing:-.03em; font-weight:600; margin:0; }
.public-destinations-intro p,.public-welcome .dxw-final p { color:#a0a6b5; font-size:13px; line-height:1.7; margin:12px 0 0; }
.public-destination { color:#d5d9e3; text-decoration:none; }
.public-destination-mark { display:grid; place-items:center; width:38px; height:38px; margin:0 0 22px; border:1px solid #363c4b; border-radius:9px; background:#1b1e27; }
.public-destination-mark svg { width:21px; height:21px; fill:none; stroke:#a8bbff; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.public-destination-type { color:#8992a3; font-size:11px; }
.public-destination h3 { margin:5px 0 8px; font-size:18px; font-weight:550; letter-spacing:-.02em; }
.public-destination p { font-size:13px; line-height:1.7; color:#a0a6b5; margin:0 0 18px; }
.public-destination strong { display:flex; justify-content:space-between; color:#a8bbff; font-size:12px; font-weight:500; }
.public-destination:hover h3,.public-destination:hover strong { color:#c6d2ff; }
.public-welcome .dxw-final { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:58px var(--dxw-gut); border-bottom:1px solid #282c38; background:#12141b; }
.public-welcome .dxw-final .dxw-cta-row { padding:0; flex:none; }
.public-welcome .dxw-footer { padding:48px var(--dxw-gut) 28px; border:0; }
.public-welcome .dxw-foot-grid { grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; margin-bottom:36px; }
.public-welcome .dxw-foot-brand img { padding:0; background:none; width:25px; height:25px; }
.public-welcome .dxw-foot-brand p { font-size:12px; color:#8992a3; max-width:240px; }
.public-welcome .dxw-foot-x { color:#a0a6b5; border:0; font-size:12px; font-weight:400; }
.public-welcome .dxw-foot-col u { font:500 12px/1.5 Inter,"Segoe UI",system-ui,sans-serif; text-transform:none; letter-spacing:0; color:#d5d9e3; }
.public-welcome .dxw-foot-col a,.public-welcome .dxw-foot-col button,.public-welcome .dxw-foot-col span { font-size:12px; font-weight:400; color:#8992a3; }
.public-welcome .dxw-foot-col a:hover,.public-welcome .dxw-foot-col button:hover { color:#c6d2ff; }
.public-welcome .dxw-token { background:#12141b; border:1px solid #282c38; border-radius:8px; padding:16px; gap:12px; }
.public-welcome .dxw-token-warn { color:#a0a6b5; font-size:11px; }
.public-welcome .dxw-token u { color:#b8bfcc; letter-spacing:.03em; font-size:10px; }
.public-welcome .dxw-token code { color:#8992a3; font-size:10px; min-width:0; overflow-wrap:anywhere; }
.public-welcome .dxw-token button { background:#1b1e27; color:#cbd5f7; border:1px solid #363c4b; border-radius:6px; font-weight:500; }
.public-welcome .dxw-token a { color:#a0a6b5; border:0; font-size:11px; }
.public-welcome .dxw-foot-bottom { font:400 11px/1.5 Inter,"Segoe UI",system-ui,sans-serif; letter-spacing:0; color:#8992a3; border-color:#282c38; }
@media(max-width:1100px) {
  .public-welcome .dxw-hero { gap:40px; grid-template-columns:minmax(0,1fr) 370px; }
  .public-welcome .dxw-stage { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr); }
  .public-welcome .dxw-layer { position:relative; }
  .public-welcome .dxw-profpanel { grid-column:2; grid-row:1; }
  .public-welcome .dxw-feedpanel { grid-column:1; grid-row:1 / span 2; }
  .public-welcome .dxw-partypanel { grid-column:2; grid-row:2; }
  .public-welcome .dxw-clipcol { grid-column:1 / -1; grid-row:3; }
  .public-destinations { gap:28px; }
}
@media(max-width:850px) {
  .public-welcome .dxw-nav { gap:16px; height:64px; }
  .public-welcome .dxw-nav-links { display:none; }
  .public-welcome .dxw-hero { grid-template-columns:1fr; padding-top:42px; padding-bottom:48px; gap:36px; }
  .public-welcome .dxw-hero-copy { padding:0; }
  .public-welcome .dxw-h1 { font-size:44px; }
  .public-welcome .dxw-hero-sub { max-width:540px; }
  .public-intro-list { max-width:none; margin-top:28px; }
  .public-welcome .dxl-card { max-width:540px; }
  .public-welcome .dxl-hero-right { justify-content:flex-start; }
  .public-welcome .dxw-sec { padding-top:48px; padding-bottom:48px; }
  .public-welcome .dxl-comm-grid { grid-template-columns:1fr 1fr; }
  .public-destinations { padding-top:48px; padding-bottom:48px; grid-template-columns:1fr 1fr; }
  .public-destinations-intro { grid-column:1 / -1; }
  .public-welcome .dxw-final { align-items:flex-start; flex-direction:column; padding-top:40px; padding-bottom:40px; gap:24px; }
  .public-welcome .dxw-foot-grid { grid-template-columns:1.4fr 1fr; gap:28px; }
}
@media(max-width:600px) {
  .auth-landing.dxl.dxw.public-welcome { --dxw-gut:20px; }
  .public-welcome .dxw-nav { gap:14px; }
  .public-welcome .dxw-brand span { font-size:15px; }
  .public-welcome .dxw-brand img { width:23px; height:23px; }
  .public-welcome .dxw-join { padding:8px 11px; font-size:12px; }
  .public-welcome .dxw-signin { font-size:12px; }
  .public-welcome .dxw-h1 { font-size:39px; }
  .public-welcome .dxw-hero-sub { font-size:14px; }
  .public-welcome .dxw-cta,.public-welcome .dxw-ghost { font-size:12px; padding:10px 13px; min-height:42px; }
  .public-welcome .dxl-card { padding:22px 18px; }
  .public-welcome .dxw-title { font-size:27px; }
  .public-welcome .dxw-sub { font-size:13px; }
  .public-welcome .dxw-stage { display:flex; flex-direction:column; align-items:stretch; gap:16px; margin-top:24px; }
  .public-welcome .dxw-feedpanel { order:0; }
  .public-welcome .dxw-profpanel { order:1; }
  .public-welcome .dxw-partypanel { order:2; }
  .public-welcome .dxw-clipcol { order:3; }
  .public-welcome .dxl-clip-strip .dxl-clip-card { flex:0 0 190px; }
  .public-welcome .dxl-comm-grid { grid-template-columns:1fr; padding-top:20px; }
  .public-welcome .dxl-comm-card { flex-direction:row; justify-content:space-between; align-items:center; padding:18px 0; }
  .public-welcome .dxl-comm-foot { flex:none; }
  .public-welcome .dxl-stack { display:none; }
  .public-destinations { grid-template-columns:1fr; gap:28px; }
  .public-destination { display:flex; gap:16px; }
  .public-destination-mark { flex:none; margin:3px 0 0; }
  .public-welcome .dxw-foot-grid { grid-template-columns:1fr 1fr; gap:26px; }
  .public-welcome .dxw-foot-brand { grid-column:1 / -1; }
  .public-welcome .dxw-token code { flex-basis:100%; order:1; }
  .public-welcome .dxw-token-warn { order:-1; }
}
@media(prefers-reduced-motion:reduce) { .public-welcome *, .public-welcome *::before, .public-welcome *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
