/* LinSuMi V4 mobile-only floating navigation.
   Desktop, auth, conversations, and WebSocket remain unchanged. */
.mobile-quick-nav{display:none}
@media(max-width:559px){
  #linsumi-app .page .app-topbar{display:none!important}
  #linsumi-app>.bottom-bar{display:none!important}
  #page-chat .conversation-strip{
    height:calc(35px + env(safe-area-inset-top,0px));
    flex:0 0 calc(35px + env(safe-area-inset-top,0px));
    padding-top:env(safe-area-inset-top,0px);
    box-sizing:border-box
  }
  #page-chat .chat-layout{
    min-height:0;flex:1 1 auto;overflow:hidden;
    padding-bottom:0!important
  }
  #page-chat .messages{
    min-height:0;flex:1 1 auto;padding-top:13px;padding-bottom:8px;
    overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch
  }
  #page-chat .composer{
    flex:0 0 auto;min-height:52px;padding:5px 8px;
    margin-bottom:calc(7px + env(safe-area-inset-bottom,0px))!important
  }
  #page-chat .composer textarea{font-size:16px}
  #page-desktop .desktop-content{
    padding-top:calc(8px + env(safe-area-inset-top,0px));
    padding-bottom:calc(22px + env(safe-area-inset-bottom,0px))!important
  }
  #page-settings .settings-content,#page-logs .settings-content{
    padding-top:calc(8px + env(safe-area-inset-top,0px));
    padding-bottom:calc(22px + env(safe-area-inset-bottom,0px))!important
  }
  #linsumi-app .mobile-quick-overlay{
    position:absolute;inset:0;z-index:59;display:block;
    background:rgba(2,8,24,.47);
    backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
    touch-action:manipulation;
  }
  #linsumi-app .mobile-quick-overlay[hidden]{display:none!important}
  #linsumi-app .mobile-quick-nav{
    display:flex;position:absolute;z-index:60;
    top:0;left:0;right:auto;transform:none;
    width:52px;height:52px;flex-direction:column;align-items:flex-end;
    pointer-events:none;will-change:transform
  }
  #linsumi-app .mobile-quick-toggle,
  #linsumi-app .mobile-quick-panel{pointer-events:auto}
  #linsumi-app .mobile-quick-toggle{
    display:grid;place-items:center;width:52px;height:52px;padding:0;
    border-radius:9999px;border:1px solid rgba(103,187,255,.75);
    color:var(--blue,#2373f8);
    background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(223,238,255,.9));
    box-shadow:0 8px 24px rgba(12,58,120,.2),0 0 15px rgba(34,152,255,.22),
               inset 0 1px 0 rgba(255,255,255,.9);
    backdrop-filter:blur(18px) saturate(1.4);
    -webkit-backdrop-filter:blur(18px) saturate(1.4);
    touch-action:none;user-select:none;-webkit-user-select:none;
    -webkit-touch-callout:none
  }
  #linsumi-app .mobile-quick-toggle .icon{width:23px;height:23px}
  #linsumi-app .mobile-quick-toggle .mobile-quick-close{display:none}
  #linsumi-app .mobile-quick-nav.is-open .mobile-quick-launch{display:none}
  #linsumi-app .mobile-quick-nav.is-open .mobile-quick-close{display:block}
  #linsumi-app .mobile-quick-nav.is-typing{opacity:0;pointer-events:none}
  #linsumi-app .mobile-quick-panel{
    position:absolute;right:calc(100% + 10px);left:auto;top:0;
    transform:none;max-width:calc(100vw - 24px);
    max-height:calc(100dvh - 16px);overflow-y:auto;
    display:flex;flex-direction:column;gap:7px;padding:0;
    background:transparent;animation:linsumi-bubble-enter .2s ease-out both
  }
  #linsumi-app .mobile-quick-panel.is-right{
    right:auto;left:calc(100% + 10px)
  }
  #linsumi-app .mobile-quick-panel[hidden]{display:none!important}
  #linsumi-app .mobile-quick-item{
    display:flex;align-items:center;gap:10px;width:100%;min-height:43px;
    padding:8px 12px;text-align:left;border-radius:9999px;
    border:1px solid rgba(119,164,221,.5);color:var(--ink,#16233d);
    background:rgba(245,249,255,.94);
    box-shadow:0 6px 17px rgba(6,33,74,.2);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    font-family:inherit;font-size:12px;font-weight:600;line-height:1.2;
    cursor:pointer;touch-action:manipulation
  }
  #linsumi-app .mobile-quick-item .icon{
    width:18px;height:18px;flex:0 0 18px;color:var(--blue,#2373f8)
  }
  #linsumi-app .mobile-quick-item.is-selected{
    border-color:rgba(36,151,255,.88);background:rgba(225,240,255,.97)
  }
  #linsumi-app .mobile-quick-item:disabled{opacity:.6;cursor:not-allowed}
  #linsumi-app .mobile-quick-item small{
    display:block;font-size:10px;font-weight:450;color:var(--muted,#8a9bb2)
  }
  body[data-theme=dark] #linsumi-app .mobile-quick-toggle,
  body[data-theme=dark] #linsumi-app .mobile-quick-item{
    color:#e6f1ff;background:linear-gradient(145deg,#263b5d,#1a2945);
    border-color:rgba(132,170,224,.52)
  }
  body[data-theme=neon] #linsumi-app .mobile-quick-toggle{
    color:#e8d6ff;background:radial-gradient(circle at 45% 40%,#2c236b,#101b49 75%);
    border:1px solid #a94dff;
    box-shadow:0 0 0 1px rgba(41,171,251,.72),0 0 14px rgba(162,41,255,.86),
               0 0 25px rgba(16,142,255,.54)
  }
  body[data-theme=neon] #linsumi-app .mobile-quick-item{
    color:#ebf7ff;border-color:rgba(46,162,238,.72);
    background:linear-gradient(135deg,rgba(9,30,67,.96),rgba(24,18,65,.96));
    box-shadow:0 0 11px rgba(36,108,255,.24),0 8px 16px rgba(1,5,25,.56)
  }
  body[data-theme=neon] #linsumi-app .mobile-quick-item .icon{color:#32e8ff}
  body[data-theme=neon] #linsumi-app .mobile-quick-item.is-selected{
    border-color:#a844ff;
    box-shadow:0 0 14px rgba(178,54,255,.53),inset 0 0 10px rgba(108,26,201,.18)
  }
  @keyframes linsumi-bubble-enter{
    from{opacity:0}to{opacity:1}
  }
}
@media(prefers-reduced-motion:reduce){
  #linsumi-app .mobile-quick-panel{animation:none!important}
}
