/* Mobile "pipeline dock": bottom navigation shown only where the top nav links are hidden (<= 860px). */
.dz-dock,.dz-scrim,.dz-sheet{display:none}
@media(max-width:860px){
  .dz-dock,.dz-scrim,.dz-sheet{display:flex}
  body.has-dock{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}
  .has-dock .tl-cards{bottom:calc(92px + env(safe-area-inset-bottom,0px))}
  .has-dock .tl-toast{bottom:calc(98px + env(safe-area-inset-bottom,0px))}
}

.dz-dock{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:30;align-items:stretch;gap:2px;padding:6px;border-radius:20px;background:#0f1422ee;border:1px solid #232a3d;box-shadow:0 14px 40px -12px #000c;-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);transition:transform .35s cubic-bezier(.3,.9,.3,1),opacity .3s}
.dz-dock.dz-hide{transform:translateY(calc(100% + 28px));opacity:0;pointer-events:none}
[data-theme=light] .dz-dock{background:#fffffff2;border-color:#d5dbe8;box-shadow:0 14px 40px -14px #1b2a4a66}

.dz-track{position:absolute;left:18px;right:18px;top:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#38d6f544,transparent);pointer-events:none}
.dz-packet{position:absolute;top:-4px;left:0;width:9px;height:9px;border-radius:50%;background:#38d6f5;box-shadow:0 0 12px 4px #38d6f5aa;transform:translateX(-50%);opacity:0;transition:left .45s cubic-bezier(.4,0,.2,1),opacity .25s}
.dz-packet.on{opacity:1}

.dz-tab,.dz-term{-webkit-tap-highlight-color:transparent;cursor:pointer;border:0;font-family:Inter,system-ui,sans-serif}
.dz-tab{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 2px 7px;border-radius:14px;background:none;color:var(--mut);font-size:.68rem;font-weight:500;text-decoration:none;transition:color .2s,background .2s,transform .12s}
.dz-tab svg,.dz-term svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.dz-tab[aria-current]{color:var(--cy);background:#38d6f512}
.dz-tab:active,.dz-term:active{transform:scale(.94)}
.dz-tab:focus-visible,.dz-term:focus-visible{outline:2px solid var(--cy);outline-offset:1px}
.dz-term{flex:none;width:58px;margin-left:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:14px;background:var(--grad);color:#07101c;font:700 .62rem "JetBrains Mono",ui-monospace,monospace}

.dz-scrim{position:fixed;inset:0;z-index:60;background:#05080f99;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.dz-scrim.open{opacity:1;visibility:visible}
.dz-sheet{position:fixed;left:0;right:0;bottom:0;z-index:61;flex-direction:column;gap:12px;max-height:82vh;overflow:auto;padding:8px 18px calc(22px + env(safe-area-inset-bottom,0px));background:#0c111c;color:#e7ecf3;border:1px solid #232a3d;border-bottom:0;border-radius:22px 22px 0 0;box-shadow:0 -20px 60px -20px #000;transform:translateY(105%);visibility:hidden;transition:transform .35s cubic-bezier(.3,.9,.3,1),visibility .35s}
.dz-sheet.open{transform:none;visibility:visible}
.dz-grab{align-self:center;width:46px;height:20px;padding:0;border:0;background:none;cursor:pointer;position:relative}
.dz-grab::after{content:"";position:absolute;left:0;right:0;top:8px;height:4px;border-radius:4px;background:#2a3550}
.dz-sheet h2{margin:0;font:700 1.1rem Inter,system-ui,sans-serif}
.dz-sheet p{margin:0;color:#9aa3bf;font-size:.9rem}
.dz-cmds{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dz-cmd{display:flex;align-items:center;gap:8px;padding:13px 12px;border:1px solid #2a3550;border-radius:12px;background:#111a2b;color:#38d6f5;font:500 .9rem "JetBrains Mono",ui-monospace,monospace;cursor:pointer;text-align:left;text-decoration:none;-webkit-tap-highlight-color:transparent}
.dz-cmd i{font-style:normal;color:#a78bfa}
.dz-cmd:active{background:#38d6f522}
.dz-cmd:focus-visible{outline:2px solid #38d6f5}
.dz-msg{min-height:1.3em;color:#fbbf24!important}

.dz-flash{animation:dz-flash 1.8s ease}
@keyframes dz-flash{0%{background:#38d6f522}100%{background:transparent}}

@media(prefers-reduced-motion:reduce){
  .dz-dock,.dz-packet,.dz-tab,.dz-scrim,.dz-sheet{transition:none!important}
  .dz-flash{animation:none}
}
[data-theme=light] .dz-term{color:#fff}
