﻿/* CableVitality mobile shell - visual only, does not alter demo logic */
:root{--cv-mobile-bg:#050908;--cv-mobile-line:rgba(245,251,248,.14);--cv-mobile-green:#42d392;--cv-mobile-cyan:#6fd6ff;}
html{background:var(--cv-mobile-bg);}
body{background-color:var(--cv-mobile-bg);}
body::before{content:"";position:fixed;inset:0;z-index:-10;pointer-events:none;background:radial-gradient(circle at 14% 8%,rgba(66,211,146,.16),transparent 30%),radial-gradient(circle at 86% 6%,rgba(111,214,255,.13),transparent 28%),linear-gradient(180deg,#07100f,#050908 70%);} 
body::after{content:"";position:fixed;left:8vw;right:8vw;top:22vh;height:30vh;z-index:-9;pointer-events:none;border-bottom:3px solid rgba(66,211,146,.42);border-radius:0 0 56% 56%;transform:rotate(-5deg);filter:drop-shadow(0 0 16px rgba(66,211,146,.22));}
.cv-mobile-orbit{position:fixed;z-index:99998;right:10px;bottom:10px;width:72px;height:48px;pointer-events:none;opacity:.58}
.cv-mobile-orbit::before{content:"";position:absolute;left:10px;top:16px;width:42px;height:18px;border:1px solid rgba(111,214,255,.72);border-radius:8px;background:rgba(111,214,255,.12)}
.cv-mobile-orbit::after{content:"";position:absolute;left:0;right:0;top:24px;border-top:2px solid rgba(245,251,248,.62)}
.cv-home-nav{max-width:calc(100vw - 20px);}
.cv-home-nav a{white-space:nowrap;}
canvas{max-width:100%;touch-action:manipulation;}
img,video,svg{max-width:100%;height:auto;}
@media(max-width:760px){
  html,body{min-width:0!important;overflow-x:hidden!important;}
  body{font-size:16px;}
  .cv-home-nav{left:8px!important;top:8px!important;right:auto!important;transform:scale(.92);transform-origin:top left;}
  #top,#toolbar,nav,.nav{max-width:100vw!important;}
  #main{min-height:calc(100vh - 96px)!important;}
  table{font-size:12px;}
  .panel,.card,.source,.article,.deepseek-card{max-width:100%;}
  [style*="width: 100%"],[style*="width:100%"]{max-width:100%;}
}
@media(max-width:520px){
  body::after{left:4vw;right:4vw;top:28vh;height:24vh;}
  .cv-mobile-orbit{width:58px;height:42px;opacity:.5}
  .cv-home-nav a{min-height:30px!important;padding:0 9px!important;font-size:12px!important;}
}

/* Legacy demo mobile fit */
@media(max-width:760px){
  [id*="canvas"], [class*="canvas"], [id*="container"], [class*="container"]{max-width:100vw!important;}
  #canvas-container,#c3,#c2d,#canvas3d,#stage,#game,#app{max-width:100vw!important;}
  #sidebar,#detail{max-width:100vw!important;}
  #main{overflow:auto!important;}
  body:has(canvas){background-attachment:fixed;}
}
