/* Shared mobile navigation and safe content space. */
.phone-dock-bar { position:fixed; bottom:calc(12px + env(safe-area-inset-bottom,0px)); left:0; right:0; z-index:80; display:flex; justify-content:center; pointer-events:none; padding:0 10px; }
.phone-dock-bar .dock-inner { display:flex; width:max-content; max-width:100%; gap:4px; padding:6px; border-radius:26px; background:rgba(15,23,42,.96); box-shadow:0 8px 24px #0003; pointer-events:auto; }
.phone-dock-bar .dock-item { display:flex; flex:1 1 0; min-width:44px; min-height:54px; padding:6px 10px; flex-direction:column; justify-content:center; align-items:center; gap:3px; border-radius:18px; text-decoration:none; color:#dbe3ef; }
.phone-dock-bar .dock-item.active, .phone-dock-bar .dock-item:hover { background:#ffffff26; color:#fff; }
.phone-dock-bar .dock-label { font:700 .68rem system-ui,sans-serif; }
.phone-dock-bar .dock-icon-squircle { display:grid; place-items:center; width:26px; height:26px; }
.phone-dock-bar a:focus-visible { outline:3px solid #fde047; outline-offset:2px; }
body { padding-bottom:calc(110px + env(safe-area-inset-bottom,0px)); }
.app-main, .audio-main, .launcher-main-container { min-width:0; }
.menu-drawer { z-index:1200; overflow-y:auto; padding-bottom:calc(20px + env(safe-area-inset-bottom,0px)); }
.menu-drawer-backdrop { z-index:1190; }
@media(max-width:380px) { .phone-dock-bar .dock-item { padding:5px 6px; } }
@media print { .phone-dock-bar { display:none; } body { padding-bottom:0; } }
