/* スマホの下部案内。上部メニューと併用し、設定から非表示にできる。 */
.app-dock { position:fixed; z-index:1000; bottom:0; left:50%; transform:translateX(-50%); width:min(100%,760px); display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:3px; padding:8px 6px calc(8px + env(safe-area-inset-bottom)); background:#fffdf8; border:1px solid #d9c3a7; border-radius:16px 16px 0 0; box-shadow:0 -3px 14px #38220e18; }
.app-dock a { display:grid; place-items:center; min-width:0; min-height:48px; padding:5px 2px; font-size:clamp(10px,2.9vw,12px); line-height:1.4; text-align:center; font-weight:800; border-radius:10px; color:#4a2c1a; }
.app-dock a[aria-current="page"] { background:#f5dfb5; }
body.app-view { padding-bottom:calc(var(--bottom-nav-height,82px) + 16px); }
body.app-view .to-top { bottom:calc(var(--bottom-nav-height,82px) + 14px); }
body.app-view .fab { display:none; }
.app-dock a.dock-vote { background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#4e3410; }
body.nav-open .app-dock,body.modal-open .app-dock,body.gallery-open .app-dock { visibility:hidden; pointer-events:none; }
@media print { .app-dock { display:none; } body.app-view { padding-bottom:0; } }
