:root{--bg:#030309;--panel:#0c0914;--purple:#a83dff;--purple2:#c25cff;--gold:#f4c542;--green:#00f083;--text:#fff;--dim:rgba(255,255,255,.58)}
*{box-sizing:border-box}html,body{min-height:100%;margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{overflow-x:hidden;background:radial-gradient(circle at 50% 38%,rgba(130,28,220,.18),transparent 42%),linear-gradient(180deg,#05030a,#020207)}
.dc-shell{min-height:100vh;padding:env(safe-area-inset-top) 20px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column}.dc-header{display:grid;grid-template-columns:72px 1fr 72px;align-items:start;padding-top:16px}.dc-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#17101f;border:3px solid var(--purple);box-shadow:0 0 18px rgba(168,61,255,.65);font-weight:900;font-size:22px}.dc-avatar img{width:100%;height:100%;object-fit:cover}.dc-title{text-align:center}.dc-title h1{margin:0;color:var(--gold);font-size:clamp(25px,6vw,38px);line-height:1;font-weight:900;letter-spacing:.08em;white-space:nowrap}.dc-title p{margin:10px 0 0;color:var(--gold);font-size:clamp(15px,4vw,22px);letter-spacing:.15em}.dc-menu{justify-self:end;width:54px;height:54px;border:1px solid rgba(244,197,66,.6);border-radius:50%;background:#08070d;color:var(--gold);font-size:28px}.dc-rule{width:54%;max-width:330px;height:1px;margin:14px auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.dc-state{text-align:center;padding:28px 0 18px}.dc-state-line{display:flex;justify-content:center;align-items:center;gap:10px;color:var(--green);font-weight:800;font-size:18px}.dc-state-dot{width:12px;height:12px;border-radius:50%;background:currentColor;box-shadow:0 0 14px currentColor}.dc-peer{margin:8px 0 4px;font-size:34px}.dc-secure{color:var(--dim);font-size:14px;letter-spacing:.06em}.dc-secure b{color:var(--purple2);margin-right:7px}.dc-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0}.dc-ptt{position:relative;width:min(82vw,430px);aspect-ratio:1;border-radius:50%;border:4px solid var(--purple2);background:radial-gradient(circle at 50% 42%,rgba(85,24,126,.46),rgba(8,5,14,.98) 68%);box-shadow:0 0 20px rgba(168,61,255,.9),0 0 54px rgba(168,61,255,.55),inset 0 0 35px rgba(168,61,255,.18);color:#fff;touch-action:none;user-select:none;-webkit-user-select:none}.dc-ptt:before{content:"";position:absolute;inset:17px;border:3px solid var(--gold);border-radius:50%;box-shadow:inset 0 0 24px rgba(244,197,66,.12)}.dc-ptt[disabled]{opacity:.72}.dc-ptt.is-waiting{animation:dcPulse 1.4s ease-in-out infinite}.dc-ptt.vwrt-live{transform:scale(.985);box-shadow:0 0 28px rgba(0,240,131,.8),0 0 68px rgba(168,61,255,.7)}@keyframes dcPulse{50%{box-shadow:0 0 28px rgba(168,61,255,1),0 0 76px rgba(168,61,255,.85)}}
.dc-radio{position:relative;z-index:2;width:112px;height:148px;margin:0 auto 18px;color:var(--gold);filter:drop-shadow(0 0 12px rgba(244,197,66,.6))}.dc-radio svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}.dc-ptt-copy{position:relative;z-index:2;text-align:center}.dc-ptt-copy strong,.dc-ptt-copy span{display:block;font-size:22px;letter-spacing:.06em}.dc-ptt-copy span{margin-top:4px;color:var(--purple2)}.dc-waves{position:absolute;left:12%;right:12%;top:45%;display:flex;justify-content:space-between}.dc-wave{display:flex;gap:6px;align-items:center}.dc-wave i{display:block;width:5px;border-radius:999px;background:linear-gradient(var(--purple2),#4d176d)}.dc-wave i:nth-child(1),.dc-wave i:nth-child(5){height:28px}.dc-wave i:nth-child(2),.dc-wave i:nth-child(4){height:58px}.dc-wave i:nth-child(3){height:88px}.dc-floor{margin:24px 0 0;min-height:28px;text-align:center;color:var(--purple2);font-size:17px;font-weight:800}.dc-sub{margin-top:5px;text-align:center;color:var(--dim);font-size:12px}.dc-viz{width:100%;height:78px;margin:8px 0 4px;display:flex;align-items:center;justify-content:center;gap:2px;overflow:hidden}.dc-viz i{width:2px;border-radius:999px;background:linear-gradient(var(--purple2),#5e198a)}.dc-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:620px;margin:8px auto 0}.dc-control{min-height:82px;border:1px solid rgba(168,61,255,.45);border-radius:28px;background:linear-gradient(145deg,#100c19,#05050b);color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;font-size:16px}.dc-control .icon{font-size:28px;color:var(--purple2)}.dc-control strong,.dc-control span{display:block}.dc-control span span{margin-top:3px;color:var(--purple2)}.dc-gate{display:none}
@media(max-height:760px){.dc-shell{padding-left:14px;padding-right:14px}.dc-header{grid-template-columns:58px 1fr 58px}.dc-avatar{width:52px;height:52px}.dc-menu{width:48px;height:48px}.dc-state{padding:15px 0 10px}.dc-ptt{width:min(64vh,78vw)}.dc-radio{width:82px;height:108px;margin-bottom:8px}.dc-ptt-copy strong,.dc-ptt-copy span{font-size:17px}.dc-viz{height:48px}.dc-control{min-height:64px}}

/* R19E1C embedded shell layout adapter 20260812
   Direct Connect standalone remains untouched.
   In the Velvet Wayz shell:
   - the injected Back button gets its own safe zone and is removed from header flow,
   - avatar/title/menu retain the canonical three-column composition,
   - duplicate standalone navigation/promo are hidden because the shell owns navigation,
   - the Direct Connect surface accounts for the persistent shell bottom nav.
*/
body.vw-c1-secondary-page.vw-c1-has-nav .dc-shell{
  min-height:calc(100dvh - 94px - env(safe-area-inset-bottom,0px));
  padding-bottom:12px;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-header{
  position:relative;
  padding-top:72px;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-header > #vwCanonicalPageBackC1.vw-c1-back-control{
  position:absolute !important;
  inset:auto !important;
  top:12px !important;
  left:0 !important;
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  margin:0 !important;
  z-index:20 !important;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-header > .dc-avatar{
  grid-column:1;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-header > .dc-title{
  grid-column:2;
  min-width:0;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-header > .dc-menu{
  grid-column:3;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-standalone-nav,
body.vw-c1-secondary-page.vw-c1-has-nav .dc-promo{
  display:none !important;
}

@media(max-height:760px){
  body.vw-c1-secondary-page.vw-c1-has-nav .dc-header{
    padding-top:62px;
  }

  body.vw-c1-secondary-page.vw-c1-has-nav .dc-header > #vwCanonicalPageBackC1.vw-c1-back-control{
    top:8px !important;
  }
}

/* R19E1C-R1 embedded scroll restoration 20260812
   Keep the R19E1C header safe-zone repair.
   Restore all Direct Connect lower-page content inside Velvet Wayz and
   guarantee enough vertical scroll runway above the fixed shell nav.
*/
body.vw-c1-secondary-page.vw-c1-has-nav{
  overflow-y:auto !important;
  overscroll-behavior-y:auto;
  scroll-padding-bottom:calc(118px + env(safe-area-inset-bottom,0px));
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-shell{
  min-height:100dvh;
  height:auto;
  overflow:visible;
  padding-bottom:calc(118px + env(safe-area-inset-bottom,0px));
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-standalone-nav{
  display:grid !important;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-promo{
  display:block !important;
}

body.vw-c1-secondary-page.vw-c1-has-nav .dc-controls,
body.vw-c1-secondary-page.vw-c1-has-nav .dc-standalone-nav,
body.vw-c1-secondary-page.vw-c1-has-nav .dc-promo{
  flex:0 0 auto;
}

@media(max-height:760px){
  body.vw-c1-secondary-page.vw-c1-has-nav .dc-shell{
    padding-bottom:calc(112px + env(safe-area-inset-bottom,0px));
  }
}
