.mobile-nav{display:none}
.phone-install{display:flex;gap:14px;align-items:flex-start;padding:18px;margin-top:22px;border:1px solid var(--border);border-radius:14px;background:var(--bg)}
.phone-install img{border-radius:12px;flex-shrink:0}.phone-install strong{display:block}.phone-install p{font-size:.875rem;color:var(--muted);margin:5px 0 10px}.phone-install button{font-size:.8125rem}
.connection-banner{position:sticky;top:0;z-index:1100;padding:10px 18px;display:flex;gap:12px;justify-content:center;align-items:center;background:#fff0d1;color:#684603;border-bottom:1px solid #e5c47a;font-size:.875rem;flex-wrap:wrap}.connection-banner button{background:#fff9eb;color:#684603;border-color:#b68b32}
.mobile-menu{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-menu button{text-align:left;min-height:52px}.install-steps{padding-left:24px;line-height:1.6}.install-steps li{margin-bottom:12px}
@media(max-width:760px){
  .sidebar{display:none}.mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;z-index:1000;gap:3px;padding:6px max(6px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));border-top:1px solid var(--border);background:#fff;box-shadow:0 -5px 20px #1021370a}
  .mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:55px;padding:5px 1px;border:0;border-radius:10px;font-size:.66rem;font-weight:600;overflow-wrap:anywhere;line-height:1.2;background:transparent;color:var(--muted)}
  .mobile-nav button span{font-size:1.25rem;line-height:1}.mobile-nav button[aria-current=page],.mobile-nav button.active{color:var(--blue);background:#e9f2ff}
  .workspace{padding-bottom:calc(86px + env(safe-area-inset-bottom))}.topbar{padding:calc(10px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left));flex-wrap:wrap;gap:8px}.topbar .crumb{flex:1 1 120px}.account{gap:5px}.account button{padding:8px}.account select{min-height:44px}
  .content{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.map{height:clamp(270px,44dvh,440px)}.page-head{flex-wrap:wrap;gap:12px}.history-controls{grid-template-columns:minmax(0,1fr)}.history-controls .field:first-child{grid-column:auto}.history-controls input{min-width:0}
  .login-page{min-height:100dvh}.login-story{padding-top:calc(22px + env(safe-area-inset-top))}.login-form{padding:24px 18px calc(24px + env(safe-area-inset-bottom))}.phone-install{padding:14px;gap:10px}.phone-install img{width:40px;height:40px}
  dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-width:600px}.modal-body{padding-bottom:max(20px,env(safe-area-inset-bottom))}.modal-actions{position:sticky;bottom:0;background:var(--bg);padding:12px 0 0;gap:8px}.modal-actions button{flex:1;min-width:0}
  #toast{bottom:calc(85px + env(safe-area-inset-bottom));max-width:calc(100% - 28px)}
}
[data-theme=dark] .mobile-nav{background:#132239}[data-theme=dark] .mobile-nav button[aria-current=page],[data-theme=dark] .mobile-nav button.active{background:#203a5d;color:#8fc2ff}
@media print{.mobile-nav,.phone-install,.connection-banner{display:none!important}.workspace{padding-bottom:0}}
