:root{--site-header-height:72px}
.topbar{height:var(--site-header-height);z-index:100;background:#10141a;box-sizing:border-box}
.top-search{margin:0}
.top-search input{font-family:inherit;font-size:15px;line-height:1.4}
.drawer{z-index:110}
.drawer-backdrop{position:fixed;inset:0;z-index:105;border:0;border-radius:0;margin:0;padding:0;background:#0006;cursor:pointer;-webkit-tap-highlight-color:transparent}
.drawer-backdrop[hidden]{display:none}
.drawer{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;width:min(320px,88vw);box-sizing:border-box}
.drawer>div{flex:none}
.drawer #filters{display:flex;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;gap:0}
.drawer .drawer-links{display:flex;flex-direction:column;flex:none;gap:0;margin-top:16px;padding-top:12px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #ffffff18}
.drawer-links a{display:block;padding:10px 4px;border-radius:12px;color:#aeb9bd;font-size:13px;text-decoration:none}
.drawer-links a:hover{color:#c8ff3d;background:#ffffff08}
.site-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 24px;padding:22px 20px;border-top:1px solid #ffffff12;color:#899694;font:12px/1.7 'Noto Sans TC',sans-serif;text-align:center;background:#10141a}
.site-footer nav{display:flex;gap:20px;flex-wrap:wrap;justify-content:center}
.site-footer a{font-size:12px;line-height:1.7;color:#aeb9bd;text-decoration:none}
.site-footer a:hover{color:#c8ff3d}
.drawer-links a:focus-visible,.site-footer a:focus-visible{outline:2px solid #c8ff3d;outline-offset:3px}
.topbar .menu-button,.topbar .search-button,.drawer button{border-radius:999px;-webkit-tap-highlight-color:transparent}
.search-close{display:none}
@media(max-width:850px){
 :root{--site-header-height:60px}
 .topbar.searching{z-index:120;height:var(--site-header-height);padding-bottom:0}
 .topbar.searching>.top-search{display:flex;position:absolute;inset:0;width:100%;height:100%;box-sizing:border-box;margin:0;padding:8px 12px;gap:10px;border-radius:0;background:#10141a;z-index:1}
 .topbar.searching>.top-search input{flex:1;min-width:0;width:0;height:44px;padding:0 12px;border:1px solid #48565e;border-radius:999px;background:#182027;font-size:16px;outline-offset:-3px}
 .topbar.searching>.top-search input:focus-visible{outline:2px solid #c8ff3d}
 .topbar.searching>.top-search>span{display:none}
 .topbar.searching>.top-search .search-close{display:flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #48565e;border-radius:50%;background:#202b32;color:#edf1ed;font-family:inherit;font-size:28px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}
 .search-close:focus-visible{outline:2px solid #c8ff3d;outline-offset:-3px}
 .search-close:active{transform:scale(.94)}
 .topbar.searching>:not(.top-search){visibility:hidden}
}

/* Native touch highlights are rectangular on some Android browsers. Keep explicit rounded focus rings. */
:where(button,a,input,select,textarea,[role="button"],label){-webkit-tap-highlight-color:transparent}
