.bubble-menu{pointer-events:none;z-index:99;justify-content:space-between;align-items:center;gap:16px;padding:0 2em;display:flex;top:1.5em;left:0;right:0}.bubble-menu.fixed{position:fixed}.bubble-menu.absolute{position:absolute}.bubble-menu .bubble{--bubble-size:48px;width:var(--bubble-size);height:var(--bubble-size);pointer-events:auto;background:#fbfaf7;border:1px solid #b08d5740;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;box-shadow:0 4px 16px #0f172a1f}.bubble-menu .logo-bubble,.bubble-menu .toggle-bubble{will-change:transform}.bubble-menu .logo-bubble{width:auto;min-height:var(--bubble-size);height:var(--bubble-size);border-radius:calc(var(--bubble-size) / 2);color:inherit;gap:8px;padding:0 18px;text-decoration:none}.bubble-menu .toggle-bubble{width:var(--bubble-size);height:var(--bubble-size)}.bubble-menu-actions{pointer-events:auto;align-items:center;gap:12px;display:inline-flex}.bubble-menu .lang-bubble{width:auto;min-width:var(--bubble-size);height:var(--bubble-size);border-radius:calc(var(--bubble-size) / 2);letter-spacing:.02em;padding:0 14px;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:600;text-decoration:none;transition:transform .2s,background .2s,color .2s}.bubble-menu .lang-bubble:hover{border-color:#0000;transform:scale(1.06);color:#fbfaf7!important;background:#0d9488!important}.bubble-menu .lang-bubble:active{transform:scale(.96)}.bubble-menu .lang-label{white-space:nowrap}.bubble-menu .logo-content{letter-spacing:-.01em;color:#0f172a;align-items:center;gap:8px;font-family:Noto Serif TC,serif;font-size:1rem;font-weight:700;display:inline-flex}.bubble-menu .logo-dot{background:#0d9488;border-radius:50%;width:10px;height:10px;display:inline-block}.bubble-menu .menu-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:0;display:flex}.bubble-menu .menu-line{transform-origin:50%;background:#0f172a;border-radius:2px;width:22px;height:2px;margin:0 auto;transition:transform .3s,opacity .3s;display:block}.bubble-menu .menu-line+.menu-line{margin-top:6px}.bubble-menu .menu-btn.open .menu-line:first-child{transform:translateY(4px)rotate(45deg)}.bubble-menu .menu-btn.open .menu-line:last-child{transform:translateY(-4px)rotate(-45deg)}@media (width>=768px){.bubble-menu .bubble{--bubble-size:56px}}.bubble-menu-items{pointer-events:none;z-index:98;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.bubble-menu-items.fixed{position:fixed}.bubble-menu-items.absolute{position:absolute}.bubble-menu-items .pill-list{pointer-events:auto;flex-wrap:wrap;justify-content:stretch;gap:8px 0;width:100%;max-width:1600px;margin:0 auto;padding:0 24px;list-style:none;display:flex}.bubble-menu-items .pill-list .pill-col{box-sizing:border-box;flex:0 0 50%;justify-content:center;align-items:stretch;padding:6px;display:flex}@media (width>=900px){.bubble-menu-items .pill-list .pill-col{flex:0 0 25%}}.bubble-menu-items .pill-link{--pill-bg:#fbfaf7;--pill-color:#0f172a;--item-rot:0deg;--hover-bg:#0d9488;--hover-color:#fbfaf7;background:var(--pill-bg);width:100%;min-height:120px;color:var(--pill-color);will-change:transform;box-sizing:border-box;white-space:nowrap;border:1px solid #b08d5740;border-radius:999px;justify-content:center;align-items:center;padding:clamp(1.25rem,3vw,5rem) 1rem;font-family:Noto Serif TC,serif;font-size:clamp(1.25rem,3vw,2.5rem);font-weight:500;line-height:1;text-decoration:none;transition:background .3s,color .3s,border-color .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 20px #0f172a1a}@media (width>=900px){.bubble-menu-items .pill-link{transform:rotate(var(--item-rot))}.bubble-menu-items .pill-link:hover{transform:rotate(var(--item-rot)) scale(1.06);background:var(--hover-bg);color:var(--hover-color);border-color:#0000}.bubble-menu-items .pill-link:active{transform:rotate(var(--item-rot)) scale(.96)}}.bubble-menu-items .pill-link .pill-label{will-change:transform, opacity;line-height:1.2;display:inline-block}@media (width<=899px){.bubble-menu-items{align-items:flex-start;padding-top:110px}.bubble-menu-items .pill-list{row-gap:12px}.bubble-menu-items .pill-link:hover{background:var(--hover-bg);color:var(--hover-color);border-color:#0000}}
