.mobile-toggle{display:none}
@media(max-width:780px){
  .app:not(.signed-out){display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:60px minmax(0,1fr);height:100dvh;min-height:0;overflow:hidden;position:relative}
  .app:not(.signed-out) .topbar{grid-column:1;grid-row:1;padding:0 12px;gap:9px;z-index:8}
  .app:not(.signed-out) .wordmark{font-size:23px;margin-right:auto}
  .app:not(.signed-out) .brand-caption,.app:not(.signed-out) .connection{display:none}
  .app:not(.signed-out) .top-right{gap:8px;min-width:0}
  .app:not(.signed-out) .wallet-pill{font-size:10px;padding:8px;white-space:nowrap}
  .app:not(.signed-out) .world{grid-column:1;grid-row:2;min-width:0;min-height:0}
  .app:not(.signed-out) .statusbar{display:none}
  .app:not(.signed-out) .mobile-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;border:1px solid #bc9ae166;border-radius:14px;background:#261e39ed;color:#f6eaff;box-shadow:0 4px 18px #09041340;z-index:7;font-size:20px;flex-shrink:0;touch-action:manipulation}
  .mobile-toggle[aria-expanded=true]{background:#704da0!important;border-color:#dab7ff!important}
  #mobile-room-toggle{position:absolute;top:12px;left:max(12px,env(safe-area-inset-left))}
  #mobile-camera-toggle{position:absolute;top:12px;right:max(12px,env(safe-area-inset-right))}
  #mobile-camera-toggle[aria-expanded=true] svg{transform:rotate(45deg)}
  .app:not(.signed-out) .room-heading{display:none;top:66px;left:12px;right:70px;max-width:none;padding:14px;border:1px solid #bc9ae144;background:#21182eef;border-radius:14px;z-index:5;pointer-events:auto}
  .app.mobile-room-open:not(.signed-out) .room-heading{display:block}
  .app:not(.signed-out) .room-heading h1{font-size:22px;overflow-wrap:anywhere}
  .app:not(.signed-out) .camera-tools{display:none;flex-direction:column;top:66px;right:12px;z-index:6}
  .app:not(.signed-out) .camera-tools .tool-divider{width:26px;height:1px}
  .app.mobile-camera-open:not(.signed-out) .camera-tools{display:flex}
  .app:not(.signed-out) .rail{display:none;position:absolute;top:60px;left:0;bottom:0;height:auto;width:88px;overflow-y:auto;overscroll-behavior:contain;z-index:8;padding:10px 5px max(10px,env(safe-area-inset-bottom));box-shadow:8px 0 24px #05020d55}
  .app.mobile-nav-open:not(.signed-out) .rail{display:flex}
  .app:not(.signed-out) .rail .brand-mark{display:none}
  .app:not(.signed-out) .rail-nav{gap:5px}
  .app:not(.signed-out) .rail .nav-button{min-height:56px;font-size:10px;flex-shrink:0}
  .app:not(.signed-out) .rail-bottom{margin-top:12px}
  .app:not(.signed-out) .rail-dot{display:none}
  #mobile-chat-toggle{position:absolute;bottom:max(12px,env(safe-area-inset-bottom));left:12px;padding:0 13px;z-index:10;font-size:14px}
  .app:not(.signed-out) .side-panel{display:none;position:absolute;left:10px;right:10px;bottom:calc(66px + env(safe-area-inset-bottom));height:min(54dvh,480px);max-height:calc(100dvh - 142px);width:auto;min-height:0;grid-area:auto;z-index:9;border:1px solid #bc9ae166;border-radius:18px;box-shadow:0 10px 40px #09041388;overflow:hidden}
  .app.mobile-chat-open:not(.signed-out) .side-panel{display:flex}
  .app:not(.signed-out) .side-panel .panel-header{padding:15px 18px}
  .app:not(.signed-out) .side-panel .participants{padding:8px 18px;flex-shrink:0}
  .app:not(.signed-out) .side-panel .chat-footer{padding:10px 12px;flex-shrink:0}
  .app:not(.signed-out) .side-panel input,.app:not(.signed-out) .side-panel select{font-size:16px}
  .app:not(.signed-out) .world-bottom{left:108px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));gap:0;z-index:4}
  .app:not(.signed-out) .movement-hint,.app:not(.signed-out) .world-credit{display:none}
  .app:not(.signed-out) .world-actions{gap:5px;flex-wrap:wrap;justify-content:flex-end}
  .app:not(.signed-out) .action-button{min-width:44px;min-height:44px;padding:8px;font-size:10px}
  .app:not(.signed-out) .action-button svg{width:17px;height:17px}
  .app:not(.signed-out) .scene{inset:0;width:100%;height:100%}
  .signed-out .mobile-toggle{display:none}
}
