/* The site, workspace and reader share one dock geometry. Context supplies actions. */
.qiwam-dock,.home-site .bottom-nav[data-context-dock]{position:fixed;z-index:320;inset-inline:auto;left:50%;right:auto;bottom:calc(10px + max(env(safe-area-inset-bottom),var(--matn-keyboard,0px)));transform:translateX(-50%);display:flex;align-items:center;justify-content:safe center;gap:10px;width:max-content;height:auto;max-width:calc(100vw - 24px);padding:8px 14px;border:1px solid var(--border,#ccd1d5);border-radius:18px;background:var(--surface,#fff);color:var(--text,#27313b);box-shadow:0 4px 20px #0000000d;overflow-x:auto;scrollbar-width:none;transition:transform .16s ease,opacity .16s ease}
[data-context-dock]::-webkit-scrollbar{display:none}[data-context-dock][hidden],[data-context-dock] [hidden]{display:none!important}
.qiwam-dock>:is(a,button),.home-site .bottom-nav[data-context-dock]>:is(a,button){position:relative;display:inline-grid;place-items:center;flex:0 0 44px;min-width:44px;width:44px;height:44px;min-height:44px;margin:0;padding:10px;border:0;border-radius:8px;background:transparent;color:inherit;line-height:1;text-decoration:none;cursor:pointer}
.qiwam-dock>:is(a,button):is(:hover,[aria-expanded=true],[aria-current=page]),.home-site .bottom-nav[data-context-dock] .bottom-nav-current{background:color-mix(in srgb,currentColor 7%,transparent)}
[data-context-dock]>:is(a,button):focus-visible{outline:2px solid currentColor;outline-offset:-2px}
[data-context-dock] svg{width:21px;height:21px;flex-shrink:0}[data-context-dock]>:is(a,button)>span:not(.qiwam-dock-count){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.qiwam-dock .qiwam-dock-count{position:absolute;top:0;inset-inline-end:0;font:11px/1.4 system-ui;min-width:14px;padding:0 2px;border-radius:7px;background:var(--surface,#fff)}
[data-context-dock][data-hidden]{transform:translate(-50%,calc(100% + 30px));opacity:0;pointer-events:none}[data-context-dock]:focus-within{opacity:1;transform:translateX(-50%);pointer-events:auto}
@media(min-width:900px){.qiwam-dock,.home-site .bottom-nav[data-context-dock]{gap:28px;padding:9px 24px}}
@media(max-width:480px){.qiwam-dock,.home-site .bottom-nav[data-context-dock]{gap:5px;padding:6px 10px}}
@media(prefers-reduced-motion:reduce){[data-context-dock]{transition:none}}
@media print{[data-context-dock]{display:none!important}}

@media(max-width:360px){.qiwam-dock,.home-site .bottom-nav[data-context-dock]{gap:3px;padding-inline:6px}}
/* Labels are visible in every context; the icon and its name form one tap target. */
[data-context-dock]>:is(a,button)>span[data-dock-label],[data-context-dock] [data-dock-label]{position:static;width:auto;height:auto;padding:0;overflow:visible;clip-path:none;white-space:nowrap;font:12px/1.35 var(--font-interface,system-ui,sans-serif)}
.qiwam-dock>:is(a,button),.home-site .bottom-nav[data-context-dock]>:is(a,button){height:58px;min-height:58px;min-width:50px;flex-basis:50px;width:50px;padding:6px 2px;gap:4px;align-content:center}
/* Public-site labels are larger; workspace and reader keep their own scale. */
[data-frame-context="site"] [data-context-dock] [data-dock-label]{font-size:calc(var(--font-size-caption) * 7 / 6);line-height:1.4}
