.page-fade-enter-active,.page-fade-leave-active{transition:opacity .18s,transform .18s}.page-fade-enter-from{opacity:0;transform:translateY(8px)}.page-fade-leave-to{opacity:0;transform:translateY(-6px)}:root{--c-brand:#ff6b35;--c-brand-dark:#e85520;--c-brand-soft:#fff1eb;--c-text:#2d2d2d;--c-text-2:#5a5a5a;--c-text-3:#8a8a8a;--c-text-inv:#fff;--c-bg:#f8f9fa;--c-surface:#fff;--c-border:#edeff2;--c-red-bg:#ffeceb;--c-red-fg:#d9383a;--c-yellow-bg:#fff8e1;--c-yellow-fg:#b07d00;--c-green-bg:#e8f5e9;--c-green-fg:#2e7d32;--c-neutral-bg:#f1f3f5;--c-neutral-fg:#6b7280;--fs-h1:24px;--fs-h2:20px;--fs-h3:17px;--fs-body:15px;--fs-sm:13px;--fs-xs:11px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-pill:999px;--sh-card:0 2px 12px rgba(0,0,0,.06);--sh-raised:0 6px 20px rgba(0,0,0,.1);--page-max:480px;--header-h:52px;--safe-b:env(safe-area-inset-bottom,0px);--font-sans:-apple-system, BlinkMacSystemFont, "PingFang HK", "PingFang SC", "Hiragino Sans", "Microsoft JhengHei", "Noto Sans TC", sans-serif}*,:before,:after{box-sizing:border-box}html,body,#app{height:100%}body{background:var(--c-bg);color:var(--c-text);font-family:var(--font-sans);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;line-height:1.55}h1,h2,h3,h4,p,figure{margin:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input{font:inherit;color:inherit;background:0 0;border:0;outline:none}ul{margin:0;padding:0;list-style:none}.card{background:var(--c-surface);border-radius:var(--r-lg);box-shadow:var(--sh-card)}.btn-primary{justify-content:center;align-items:center;gap:var(--sp-2);width:100%;min-height:50px;padding:0 var(--sp-5);border-radius:var(--r-pill);background:var(--c-brand);color:var(--c-text-inv);font-size:var(--fs-h3);font-weight:700;transition:transform .15s,background .15s;display:flex}.btn-primary:active{background:var(--c-brand-dark);transform:scale(.98)}.btn-primary:disabled{cursor:not-allowed;background:#d8dbe0}.btn-ghost{justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--r-pill);border:1px solid var(--c-border);width:100%;min-height:44px;color:var(--c-text-2);font-size:var(--fs-body);display:flex}.page{width:100%;max-width:var(--page-max);min-height:100%;padding:var(--sp-5) var(--sp-4) calc(var(--sp-6) + var(--safe-b));background:var(--c-bg);flex-direction:column;margin:0 auto;display:flex}.page-title{font-size:var(--fs-h1);letter-spacing:-.2px;font-weight:800}.page-subtitle{margin-top:var(--sp-1);font-size:var(--fs-sm);color:var(--c-text-3)}.rail{gap:var(--sp-3);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:var(--sp-1) var(--sp-4) var(--sp-3);margin:0 calc(var(--sp-4) * -1);display:flex;overflow-x:auto}.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:center;flex:none}.swipe-hint{align-items:center;gap:var(--sp-1);padding-top:var(--sp-5);font-size:var(--fs-sm);color:var(--c-text-3);text-align:center;flex-direction:column;margin-top:auto;display:flex}.swipe-hint__arrow{font-size:18px;animation:1.8s ease-in-out infinite nudge}@keyframes nudge{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}
