/* Последний слой: касания, клавиатура, safe area и установка приложения. */
:root{--wewo-vh:100dvh}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}
.pwa-install,.pwa-update{font:500 11px Onest,system-ui,sans-serif;color:#bdd0e8;border:1px solid #8daaca33;background:#131b28;border-radius:9px;padding:11px 14px;min-height:44px;cursor:pointer}
.pwa-install[hidden],.pwa-update[hidden]{display:none!important}.pwa-update{position:fixed;z-index:11000;right:20px;bottom:calc(20px + env(safe-area-inset-bottom));box-shadow:0 12px 50px #0008;max-width:calc(100vw - 40px)}
.pwa-dialog{background:#151c29;border:1px solid #95accc33;border-radius:18px;color:#e4eaf5;padding:28px;max-width:min(420px,calc(100vw - 40px));font:14px/1.8 Onest,system-ui;box-sizing:border-box}.pwa-dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}.pwa-dialog span{font-size:9px;letter-spacing:1.4px;color:#98afcd}.pwa-dialog h2{font-weight:400;line-height:1.4}.pwa-dialog button{font:inherit;padding:10px 20px;min-height:44px;background:#c7d8ec;color:#152033;border:0;border-radius:7px;cursor:pointer}
@media(pointer:coarse){
  .wx-icon-btn,.wx-send,.ws-person-voice,.lv-icon,.ac-controls .wx-icon-btn{min-width:44px;min-height:44px}
  .wx-text-btn,.cc-shortcuts button,.ax-tabs button,.ax-step,.ax-qa-chips button{min-height:44px}
  .wx-page input,.wx-page textarea,.st input,.st textarea,.pika-composer textarea{font-size:16px!important}
  .ws-root .attach-btn,.ws-root .emp-btn{min-width:40px;min-height:44px}
}
@media(max-width:850px){
  .topbar .mainnav{display:none}.topbar .top-actions{margin-left:auto}.tabbar{display:flex}
  .wx-page,.st{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
  .pwa-update{bottom:calc(76px + env(safe-area-inset-bottom))}.pwa-install{font-size:10px;padding:8px;margin-left:auto}
  body.keyboard-open .tabbar{display:none}body.keyboard-open .pwa-update{display:none}
  body.keyboard-open .ws-root #chatCard{height:var(--chat-visible,var(--wewo-vh));min-height:230px}
  body.keyboard-open .ws-context,body.keyboard-open .ws-top{display:none}
  .lv-shell{min-height:var(--wewo-vh);padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
}
@media(max-width:600px){
  .topbar{padding-top:max(12px,env(safe-area-inset-top));padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
  .cc-input-foot{gap:8px}.cc-input-foot>.wx-text-btn{white-space:normal;text-align:left}
  .ws-root .pika-composer{flex-wrap:wrap!important}.ws-root .pika-composer #input{min-width:120px;flex:1}
  .ac-controls{flex-wrap:wrap}.ac-controls .wx-button{min-width:150px}.ac-controls .wx-icon-btn{min-width:44px}
  .ax-tabs{gap:20px}.ax-tabs button{flex-shrink:0;white-space:nowrap}
  .lv-stage{height:27dvh;min-height:180px}.lv-identity{margin:18px 0 8px}.lv-speakers{margin-bottom:20px}
  .lv-transcript #lvLines{max-height:33dvh}.lv-action button{min-height:44px}.lv-hint{max-width:300px}
  .pwa-install{max-width:110px;font-size:9px;line-height:1.5}.pwa-dialog{max-height:calc(var(--wewo-vh) - 32px);overflow:auto}
}
@media(max-height:500px) and (orientation:landscape){
  .lv-shell{padding-top:14px}.lv-stage{height:150px;min-height:150px;margin-top:0}.lv-main{max-width:700px}.lv-identity{margin:8px 0}.lv-identity h2{font-size:22px;margin:5px}.lv-speakers{margin:6px 0 12px}.lv-footnote{margin-top:12px}
}
@media(prefers-reduced-motion:reduce){.lv,.lv *,.ac-demo *{animation:none!important;transition:none!important}.lv button:hover{transform:none}}
