.mobile-home-indicator{position:fixed;bottom:8px;left:50%;transform:translateX(-50%);z-index:9999;padding:12px 40px calc(12px + env(safe-area-inset-bottom, 0px));cursor:pointer;background:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mobile-home-indicator .home-indicator-bar{display:block;width:134px;height:5px;border-radius:3px;background:var(--text-primary);opacity:.45;transition:opacity .2s ease,transform .2s ease}.mobile-home-indicator:active .home-indicator-bar,.mobile-home-indicator:hover .home-indicator-bar{opacity:.8;transform:scaleY(1.15)}.mobile-home-indicator:focus-visible{outline:none}.mobile-home-indicator:focus-visible .home-indicator-bar{opacity:1;box-shadow:0 0 0 2px var(--accent-glow)}.tablet-dock{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--bg-dock);backdrop-filter:var(--blur-dock);-webkit-backdrop-filter:var(--blur-dock);border:1px solid var(--border-glass);border-radius:var(--radius-dock);z-index:1000;box-shadow:var(--shadow-dock)}.tablet-dock:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,0) 55%);pointer-events:none}.tablet-dock-item{position:relative;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;padding:2px}.tablet-dock-item:focus-visible{outline:none}.tablet-dock-item:focus-visible .tablet-dock-tile{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.2),0 2px 6px rgba(0,0,0,.35),0 0 0 2px var(--accent-glow)}.tablet-dock-tile{position:relative;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.2),0 2px 6px rgba(0,0,0,.35);overflow:hidden;transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease-out}.tablet-dock-tile svg{position:relative;z-index:2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.tablet-dock-tile.active{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.25),0 4px 14px rgba(0,0,0,.45),0 0 18px var(--accent-glow)}.tablet-dock-tile-gloss{position:absolute;inset:0;background:linear-gradient(180deg,hsla(0,0%,100%,.22),hsla(0,0%,100%,0) 55%);pointer-events:none;z-index:1}.tablet-dock-item:hover .tablet-dock-tile{transform:translateY(-4px) scale(1.08)}.tablet-dock-item:active .tablet-dock-tile{transform:translateY(-1px) scale(1.02);transition-duration:80ms}.tablet-dock-indicator{position:absolute;bottom:-7px;width:4px;height:4px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}.dock,.tablet-dock-indicator{left:50%;transform:translateX(-50%)}.dock{position:fixed;bottom:14px;display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-dock);backdrop-filter:var(--blur-dock);-webkit-backdrop-filter:var(--blur-dock);border:1px solid var(--border-glass);border-radius:var(--radius-dock);z-index:1000;box-shadow:var(--shadow-dock)}.dock:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,0) 55%);pointer-events:none}.dock-items{gap:6px}.dock-item,.dock-items{display:flex;align-items:center}.dock-item{justify-content:center;padding:4px;border-radius:14px;text-decoration:none;color:var(--text-secondary);position:relative;background:none;border:none;cursor:pointer}.dock-item:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.dock-tile{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.2),0 2px 6px rgba(0,0,0,.35);overflow:hidden;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease-out}.dock-tile svg{position:relative;z-index:2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.dock-tile-gloss{position:absolute;inset:0;background:linear-gradient(180deg,hsla(0,0%,100%,.2),hsla(0,0%,100%,0) 55%);pointer-events:none;z-index:1}.dock-item:hover .dock-tile{transform:translateY(-6px) scale(1.12);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.25),0 12px 24px rgba(0,0,0,.45),0 0 18px var(--accent-glow-soft)}.dock-item:active .dock-tile{transform:translateY(-2px) scale(1.04);transition-duration:80ms}.dock-item.active .dock-tile{box-shadow:inset 0 1px 0 hsla(0,0%,100%,.25),0 4px 14px rgba(0,0,0,.45),0 0 20px var(--accent-glow)}.dock-label{top:-36px;transform:translateX(-50%) translateY(4px);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;opacity:0;transition:opacity .15s ease,transform .15s ease;white-space:nowrap;color:var(--text-primary);pointer-events:none;backdrop-filter:var(--blur-soft);-webkit-backdrop-filter:var(--blur-soft);padding:5px 10px;border-radius:8px;border:1px solid var(--border-glass);box-shadow:0 6px 16px rgba(0,0,0,.4)}.dock-label,.dock-label:after{position:absolute;left:50%;background:var(--bg-elevated)}.dock-label:after{content:"";bottom:-4px;transform:translateX(-50%) rotate(45deg);width:8px;height:8px;border-right:1px solid var(--border-glass);border-bottom:1px solid var(--border-glass)}.dock-item:focus-visible .dock-label,.dock-item:hover .dock-label{opacity:1;transform:translateX(-50%) translateY(0)}.dock-indicator{position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent),0 0 2px var(--accent)}.dock-divider{width:1px;height:32px;background:var(--border-glass-strong);margin:0 4px}.dock-right{gap:6px}.dock-right,.dock-social{display:flex;align-items:center}.dock-social{gap:2px}.dock-social-link{color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;transition:color .16s ease,transform .18s ease,background .16s ease;text-decoration:none}.dock-social-link:hover{color:var(--accent);background:var(--accent-bg-light);transform:translateY(-2px)}.dock-social-link:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.dock-clock{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:12px;color:var(--text-secondary);white-space:nowrap;letter-spacing:.04em;padding:0 8px}@media(max-width:1024px){.dock{display:none}}