:root{--nb-bg: rgba(39, 55, 77, .92);--nb-bg-strong: #27374d;--nb-accent: #ffffff;--nb-text: #ffffff;--nb-dropdown-bg: #ffffff;--nb-height: 64px}.nb__bar{position:sticky;top:0;z-index:1000;background:linear-gradient(120deg,var(--nb-bg),var(--nb-bg-strong));height:var(--nb-height);display:flex;align-items:center;padding:0 1.4rem;box-shadow:0 14px 28px #27374d2e;border-bottom:1px solid rgba(255,255,255,.35);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-sizing:border-box}.nb__bar *,.nb__bar *:before,.nb__bar *:after{box-sizing:border-box;margin:0;padding:0}.nb__brand{font-family:var(--font-display);font-weight:700;font-size:1.03rem;color:var(--nb-text);text-decoration:none;letter-spacing:.03em;white-space:nowrap;margin-right:auto;text-shadow:none}.nb__menu{display:flex;align-items:center;list-style:none}.nb__group{position:relative}.nb__group-btn{display:flex;align-items:center;gap:5px;padding:0 1.1rem;height:var(--nb-height);background:none;border:none;border-bottom:3px solid transparent;color:var(--nb-text);font-family:var(--font-body);font-size:.93rem;font-weight:500;cursor:pointer;transition:color .2s,background .2s,border-color .2s;white-space:nowrap;line-height:1}.nb__chevron{display:inline-block;font-size:.65rem;transition:transform .22s;margin-top:1px}.nb__group:hover .nb__group-btn,.nb__group:focus-within .nb__group-btn{color:#fff;background:#ffffff29;border-bottom-color:#fff}.nb__group:hover .nb__chevron,.nb__group:focus-within .nb__chevron{transform:rotate(180deg)}.nb__dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:170px;background:var(--nb-dropdown-bg);border:1px solid rgba(221,230,237,.95);border-radius:14px;box-shadow:0 22px 42px #27374d24;overflow:hidden;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .2s,transform .2s;z-index:200}.nb__group:hover .nb__dropdown,.nb__group:focus-within .nb__dropdown{opacity:1;pointer-events:auto;transform:translateY(0)}.nb__dropdown a{display:block;padding:.72rem 1.15rem;color:#526d82;text-decoration:none;font-family:var(--font-body);font-size:.9rem;font-weight:500;transition:background .16s,color .16s;border-left:3px solid transparent}.nb__dropdown a:hover{background:#eef4f7;color:#27374d;border-left-color:#526d82}.nb__dropdown a.nb__active{color:#27374d;background:#eef4f7;border-left-color:#526d82;font-weight:700}.nb__toggle{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:6px}.nb__toggle span{display:block;width:24px;height:2px;background:#fff;border-radius:2px;transition:all .25s}.nb__group--link{display:flex;align-items:center}.nb__group-btn--link{text-decoration:none;color:#fff;display:flex;align-items:center;height:var(--nb-height);padding:0 1.1rem;border-bottom:3px solid transparent;font-size:.93rem;font-weight:500;transition:color .18s,background .18s,border-color .18s;white-space:nowrap}.nb__group-btn--link:hover,.nb__group-btn--link.nb__active-page{color:#fff;background:#ffffff29;border-bottom-color:#fff}@media(max-width:680px){.nb__bar{padding:0 1rem}.nb__toggle{display:flex}.nb__menu{position:fixed;top:var(--nb-height);left:0;right:0;background:linear-gradient(180deg,#526d82,#27374d);flex-direction:column;align-items:stretch;border-top:1px solid rgba(255,255,255,.24);box-shadow:0 18px 38px #27374d2e;max-height:0;overflow:hidden;transition:max-height .3s ease}.nb__menu.nb__open{max-height:520px}.nb__group{width:100%}.nb__group-btn{width:100%;height:auto;padding:.9rem 1.3rem;border-bottom:none;border-left:3px solid transparent;justify-content:space-between}.nb__group:hover .nb__group-btn,.nb__group.nb__open .nb__group-btn{border-left-color:#fff;border-bottom:none}.nb__dropdown{position:static;opacity:1;pointer-events:none;transform:none;box-shadow:none;border:none;border-radius:0;background:#ffffff29;max-height:0;overflow:hidden;transition:max-height .25s ease}.nb__group.nb__open .nb__dropdown{pointer-events:auto;max-height:300px}.nb__dropdown a{padding-left:2.1rem;color:#fff;border-left-color:transparent}.nb__dropdown a:hover,.nb__dropdown a.nb__active{background:#fff3;color:#fff;border-left-color:#fff}.nb__group-btn--link{height:auto;padding:.9rem 1.3rem;border-bottom:none;border-left:3px solid transparent;width:100%}.nb__group-btn--link:hover,.nb__group-btn--link.nb__active-page{border-left-color:#fff;border-bottom:none;background:#ffffff26}}:root{--font-body: "Microsoft JhengHei", "PingFang TC", "Noto Sans TC", system-ui, sans-serif;--font-display: "Microsoft JhengHei", "PingFang TC", "Noto Sans TC", system-ui, sans-serif;--navy: #27374d;--navy-soft: #526d82;--accent: #526d82;--accent-strong: #27374d;--accent-light: #eef4f7;--accent-mid: #9db2bf;--bg-body: #f7fafc;--bg-soft: #eef4f7;--white: #ffffff;--surface-soft: #f4f8fa;--border-color: #dde6ed;--text-main: #27374d;--text-muted: #526d82;--radius-xs: 10px;--radius-sm: 14px;--radius: 18px;--radius-lg: 26px;--radius-pill: 999px;--shadow-sm: 0 8px 20px rgba(39, 55, 77, .08);--shadow-md: 0 18px 36px rgba(39, 55, 77, .11);--shadow-lg: 0 30px 56px rgba(39, 55, 77, .13);--space-1: 6px;--space-2: 10px;--space-3: 14px;--space-4: 18px;--space-5: 24px;--space-6: 32px;--transition-bounce: all .24s cubic-bezier(.34, 1.56, .64, 1);--transition-smooth: all .2s ease}html{min-height:100%;scroll-behavior:smooth}body{display:flex;flex-direction:column;margin:0;min-height:100vh;font-family:var(--font-body);color:var(--text-main);background:radial-gradient(circle at 10% 0%,rgba(157,178,191,.28),transparent 42%),radial-gradient(circle at 90% 25%,rgba(82,109,130,.12),transparent 36%),linear-gradient(180deg,#ffffff 0%,var(--bg-body) 45%,#edf3f7 100%);line-height:1.6}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.4;background-image:linear-gradient(rgba(82,109,130,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(82,109,130,.06) 1px,transparent 1px);background-size:28px 28px;z-index:-1}.hidden{display:none!important}.page-title{text-align:center;font-family:var(--font-display);font-size:clamp(1.7rem,5vw,2.4rem);letter-spacing:.01em;font-weight:800;margin-bottom:36px;color:var(--navy);position:relative;display:inline-block;left:50%;transform:translate(-50%)}.page-title:after{content:"";position:absolute;bottom:-7px;left:15%;width:70%;height:6px;background:linear-gradient(90deg,#9db2bf,#526d82);border-radius:10px;opacity:.65}.badge{display:inline-block;padding:5px 14px;border-radius:12px;font-size:.8rem;font-weight:800;border:1.5px solid color-mix(in srgb,var(--navy) 40%,#ffffff);transition:var(--transition-smooth)}.badge-open{background:#dcfce7;color:#15803d}.badge-closed{background:#fee2e2;color:#dc2626}.divider{border:none;border-top:1px dashed var(--accent-mid);margin:32px 0}.footer{margin-top:auto;text-align:center;padding:48px 24px;font-size:.85rem;color:var(--text-muted);border-top:1px solid var(--accent-mid);background:linear-gradient(180deg,#ffffff8a,#dde6ed99);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.footer p+p{margin-top:6px}.footer .disclaimer{font-size:.75rem;opacity:.9;max-width:860px;margin:8px auto 0}.empty-state{text-align:center;color:var(--text-muted);padding:4rem 20px;font-size:1rem;background:var(--white);border:1.5px dashed var(--accent-mid);border-radius:var(--radius);margin:20px 0}.hover-lift{transition:var(--transition-smooth)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)!important}@keyframes checkmark-draw{0%{stroke-dashoffset:60}to{stroke-dashoffset:0}}@keyframes circle-scale{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.08);opacity:1}to{transform:scale(1)}}.success-circle{animation:circle-scale .45s cubic-bezier(.34,1.56,.64,1) forwards}.success-check{stroke-dasharray:60;stroke-dashoffset:60;animation:checkmark-draw .4s ease .3s forwards}.footer{margin-top:auto;padding:30px 20px;text-align:center;color:#526d82;font-size:.85rem;border-top:1px solid #dde6ed;line-height:1.6}.disclaimer{margin-top:8px;font-size:.75rem;color:#9db2bf}#toast-container{position:fixed;inset:24px auto auto 50%;transform:translate(-50%);z-index:99999;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;min-width:260px;max-width:380px;padding:14px 18px;background:#fff;border:2px solid #1e293b;border-radius:14px;box-shadow:4px 4px #1e293b;font-family:var(--font-body);font-size:.92rem;font-weight:600;color:#1e293b;opacity:0;transform:translateY(-120%) scale(.9);transition:opacity .32s cubic-bezier(.34,1.56,.64,1),transform .32s cubic-bezier(.34,1.56,.64,1);will-change:transform,opacity}.toast.show{opacity:1;transform:translateY(0) scale(1)}.toast.hide{opacity:0;transform:translateY(-120%) scale(.9);transition:opacity .22s ease,transform .22s ease}.toast-icon{font-size:1.2rem;flex-shrink:0;line-height:1}.toast-msg{flex:1;line-height:1.4}.toast-close{background:none;border:none;font-size:1rem;cursor:pointer;color:#94a3b8;padding:0;line-height:1;transition:color .15s;flex-shrink:0}.toast-close:hover{color:#1e293b}.toast-success{border-color:#15803d;box-shadow:4px 4px #15803d}.toast-success .toast-icon{color:#15803d}.toast-error{border-color:#dc2626;box-shadow:4px 4px #dc2626}.toast-error .toast-icon{color:#dc2626}.toast-warning{border-color:#d97706;box-shadow:4px 4px #d97706}.toast-warning .toast-icon{color:#d97706}.toast-info{border-color:#2563eb;box-shadow:4px 4px #2563eb}.toast-info .toast-icon{color:#2563eb}.ripple-host{position:relative;overflow:hidden}.ripple{position:absolute;border-radius:50%;width:10px;height:10px;transform:scale(0);animation:ripple-anim .6s ease-out forwards;pointer-events:none;background:#fff6;will-change:transform,opacity}@keyframes ripple-anim{0%{transform:scale(0);opacity:.7}to{transform:scale(20);opacity:0}}.ripple-dark{background:#1e293b26}@keyframes fadeSlideUp{0%{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;scale:.94}to{opacity:1;scale:1}}.anim-fade-up{animation:fadeSlideUp .45s cubic-bezier(.22,1,.36,1) both}.anim-fade-up-d1{animation-delay:.06s}.anim-fade-up-d2{animation-delay:.12s}.anim-fade-up-d3{animation-delay:.18s}.anim-fade-up-d4{animation-delay:.24s}.anim-scale-in{animation:scaleIn .38s cubic-bezier(.34,1.56,.64,1) both}.count-up{display:inline-block;transition:transform .1s ease}#lightbox-overlay{position:fixed;inset:0;z-index:100000;background:#0f172aeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .28s ease}#lightbox-overlay.open{opacity:1;pointer-events:auto}#lightbox-inner{position:relative;max-width:min(90vw,900px);max-height:90vh;border:2.5px solid #f59e0b;border-radius:18px;overflow:hidden;box-shadow:0 0 0 4px #f59e0b33,8px 8px #1e293b;transform:scale(.88);transition:transform .32s cubic-bezier(.34,1.56,.64,1)}#lightbox-overlay.open #lightbox-inner{transform:scale(1)}#lightbox-img{display:block;max-width:100%;max-height:88vh;object-fit:contain;border-radius:16px}#lightbox-close{position:absolute;top:12px;right:12px;width:36px;height:36px;background:#1e293b;color:#f59e0b;border:2px solid #f59e0b;border-radius:50%;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:700;transition:all .18s cubic-bezier(.34,1.56,.64,1);z-index:10}#lightbox-close:hover{transform:rotate(90deg) scale(1.15);background:#f59e0b;color:#1e293b}.menu-img-wrap img{cursor:zoom-in!important;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease!important}.menu-img-wrap img:hover{transform:scale(1.015) translateY(-3px)!important;box-shadow:6px 10px #1e293b!important}@keyframes numPop{0%{transform:scale(1)}40%{transform:scale(1.25)}70%{transform:scale(.95)}to{transform:scale(1)}}.num-pop{animation:numPop .4s cubic-bezier(.34,1.56,.64,1) both}
