:root{color:#3d2817;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;--pickup-success:#4f6b30;--pickup-success-dark:#36481f;--pickup-success-tint:#dfe5cb;--pickup-warning:#c4a040;--pickup-warning-dark:#8e7228;--pickup-warning-tint:#f0e5c8;--pickup-error:#8b4530;--pickup-error-dark:#5f2e1f;--pickup-error-tint:#efd6cd;--pickup-streak:#8a5f1f;--pickup-streak-dark:#5e3f0f;--pickup-streak-tint:#efe0c2;--pickup-xp:#b08838;--pickup-xp-dark:#7a5e25;--pickup-info:#4a6678;--pickup-info-dark:#2e4554;--pickup-info-tint:#d8dfe5;--pickup-bg:#faf5ed;--pickup-bg-outer:#ede2c8;--pickup-surface:#fbf8f1;--pickup-accent:#b88660;--pickup-accent-dark:#7a4f1f;--pickup-accent-tint:#e8d4b8;--pickup-text:#2e2520;--pickup-text-muted:#6b5848;--pickup-text-soft:#8a7864;--pickup-outline:#2a2520;--pickup-border:#ddd0b3;--pickup-border-dark:#c2b08c;--font-family:"Noto Sans TC", system-ui, -apple-system, "Segoe UI", Roboto, "PingFang TC", "Microsoft JhengHei", sans-serif;--font-display:"Nunito", "Noto Sans TC", system-ui, sans-serif;--font-body:"Noto Sans TC", system-ui, -apple-system, "Segoe UI", Roboto, "PingFang TC", "Microsoft JhengHei", sans-serif;--font-display-size:36px;--font-display-weight:900;--font-display-tracking:-.5px;--font-body-size:16px;--font-body-weight:600;--font-button-size:17px;--font-button-weight:800;--font-button-tracking:.6px;--font-stat-size:28px;--font-stat-weight:900;--font-microcopy-size:13px;--font-microcopy-weight:600;--pickup-pad-xs:4px;--pickup-pad-sm:8px;--pickup-pad-md:14px;--pickup-pad-lg:20px;--pickup-spring:cubic-bezier(.34, 1.56, .64, 1);--pickup-snap:cubic-bezier(.2, .8, .4, 1);--ww-green:var(--pickup-success);--ww-green-dark:var(--pickup-success-dark);--ww-green-tint:var(--pickup-success-tint);--ww-blue:var(--pickup-info);--ww-yellow:var(--pickup-warning);--ww-red:var(--pickup-error);--ww-cream:var(--pickup-bg);--ww-amber:var(--pickup-accent);--ww-amber-dark:var(--pickup-accent-dark);--ww-sepia:#3c2a1c;--ww-text:var(--pickup-text);--ww-muted:var(--pickup-text-muted);--ww-border:var(--pickup-border);--ww-border-dark:var(--pickup-border-dark);background:#fef8ed;font-family:Noto Sans TC,system-ui,-apple-system,Segoe UI,Roboto,PingFang TC,Microsoft JhengHei,sans-serif}html,body{background:var(--pickup-bg);min-height:100dvh;font-family:var(--font-body);margin:0;padding:0}.skip-link{background:var(--pickup-accent-dark);color:#fff;z-index:1000;border-radius:6px;padding:8px 16px;font-weight:700;text-decoration:none;position:absolute;left:-999px}.skip-link:focus{top:8px;left:8px}#app{background:var(--pickup-bg);width:100vw;max-width:480px;min-height:100dvh;padding:12px 16px max(16px, env(safe-area-inset-bottom));padding-top:max(12px, env(safe-area-inset-top));box-sizing:border-box;flex-direction:column;gap:10px;margin:0 auto;display:flex;position:relative}#app canvas{display:none!important}@media (width>=520px){body{background:var(--pickup-bg-outer)}#app{border-radius:22px;min-height:calc(100dvh - 24px);margin-top:12px;margin-bottom:12px;box-shadow:0 8px 36px #785a281f}}:focus{outline:none}:focus-visible{outline:3px solid var(--pickup-info);outline-offset:2px;border-radius:6px}button:focus-visible{outline-offset:3px}.pickup-btn{--pbg:var(--pickup-success);--pbg-dark:var(--pickup-success-dark);--pfg:#fff;background:var(--pbg);color:var(--pfg);border:none;border-bottom:4px solid var(--pbg-dark);font-family:inherit;font-size:var(--font-button-size);font-weight:var(--font-button-weight);letter-spacing:var(--font-button-tracking);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;min-height:44px;transition:transform .1s var(--pickup-snap), border-bottom-width .1s var(--pickup-snap), box-shadow .2s ease-out, opacity .16s ease-out;border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:14px 22px;display:inline-flex}.pickup-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #0000001a}.pickup-btn:active:not(:disabled),.pickup-btn.is-pressed:not(:disabled){box-shadow:none;border-bottom-width:2px;transform:translateY(2px)}.pickup-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@keyframes pickup-shake{0%,to{transform:translate(0)}15%{transform:translate(-1.5px,.5px)}30%{transform:translate(1.5px,-.5px)}45%{transform:translate(-1px,1px)}60%{transform:translate(1px,-1px)}75%{transform:translate(-.5px,.5px)}90%{transform:translate(.5px)}}.pickup-shake{animation:.2s ease-in-out pickup-shake}#pickup-flash{pointer-events:none;opacity:0;z-index:25;position:fixed;inset:0}@keyframes pickup-flash-anim{0%{opacity:var(--flash-peak,.18)}to{opacity:0}}#pickup-flash.pickup-flash-on{animation:.32s ease-out pickup-flash-anim}@keyframes pickup-blink{0%{opacity:1}to{opacity:.4}}@keyframes pickup-banner-pop{0%{opacity:0;transform:scale(.7)}60%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes pickup-stat-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pickup-bounce{0%{transform:scale(1)}35%{transform:scale(1.14)}60%{transform:scale(.96)}to{transform:scale(1)}}.pickup-bounce{animation:pickup-bounce .4s var(--pickup-spring)}@keyframes pickup-pulse{0%,to{transform:scale(1);box-shadow:0 0 #e7a44a80}50%{transform:scale(1.025);box-shadow:0 0 0 10px #e7a44a00}}.pickup-pulse{animation:1.6s ease-in-out infinite pickup-pulse}@keyframes pickup-wobble{0%,to{transform:translate(0)rotate(0)}20%{transform:translate(-4px)rotate(-1deg)}40%{transform:translate(4px)rotate(1deg)}60%{transform:translate(-3px)rotate(-.5deg)}80%{transform:translate(2px)rotate(.5deg)}}.pickup-wobble{animation:.35s ease-in-out pickup-wobble}@keyframes pickup-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pickup-fade-up{animation:pickup-fade-up .28s var(--pickup-snap) both}@keyframes pickup-streak-pop{0%{color:var(--pickup-streak);text-shadow:0 0 #ff960000;transform:scale(1)}40%{color:var(--pickup-streak);text-shadow:0 0 12px #ff9600cc;transform:scale(1.5)}to{color:var(--pickup-streak);text-shadow:0 0 #ff960000;transform:scale(1)}}.pickup-streak-pop{animation:pickup-streak-pop .5s var(--pickup-spring)}@keyframes pickup-confetti-burst{0%{opacity:0;transform:scale(.5)rotate(0)}40%{opacity:1;transform:scale(1.15)rotate(180deg)}to{opacity:0;transform:scale(1)rotate(360deg)translateY(-40px)}}.pickup-confetti-burst{animation:.6s ease-out forwards pickup-confetti-burst}@keyframes pickup-glow{0%,to{filter:drop-shadow(0 0 4px #1cb0f64d)}50%{filter:drop-shadow(0 0 12px #1cb0f699)}}.pickup-glow{animation:1.6s ease-in-out infinite pickup-glow}.mascot-wrap{transform-origin:50% 100%;will-change:transform}.mascot-wrap svg{width:100%;height:100%;display:block}.mascot-idle{animation:2.6s ease-in-out infinite mascot-idle-bob}@keyframes mascot-idle-bob{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-4px)scale(1.015)}}.mascot-happy{animation:.7s cubic-bezier(.34,1.56,.64,1) mascot-happy-bounce}@keyframes mascot-happy-bounce{0%{transform:translateY(0)scale(1)rotate(0)}20%{transform:translateY(-14px)scale(1.08)rotate(-3deg)}45%{transform:translateY(0)scale(1.04)rotate(3deg)}65%{transform:translateY(-7px)scale(1.06)rotate(-2deg)}85%{transform:translateY(0)scale(1.02)rotate(1deg)}to{transform:translateY(0)scale(1)rotate(0)}}.mascot-sad{animation:.7s ease-in-out mascot-sad-shake}@keyframes mascot-sad-shake{0%{transform:translateY(0)rotate(0)}15%{transform:translateY(2px)rotate(-4deg)}30%{transform:translateY(4px)rotate(4deg)}45%{transform:translateY(6px)rotate(-3deg)}60%{transform:translateY(7px)rotate(2deg)}80%{transform:translateY(4px)rotate(0)}to{transform:translateY(0)rotate(0)}}.mascot-happy .mascot-pupil{transform-origin:50%;transform-box:fill-box;transform:translateY(-1px)scale(1.15)}.mascot-sad .mascot-pupil{transform-origin:50%;transform-box:fill-box;transform:translateY(2px)scale(.85)}.mascot-wrap .mascot-eye{transform-origin:50%;transform-box:fill-box;animation:4.2s ease-in-out infinite mascot-blink}.mascot-wrap .mascot-eye-right{animation-delay:40ms}@keyframes mascot-blink{0%,92%,to{transform:scaleY(1)}94%,97%{transform:scaleY(.1)}}.pickup-cat-loader{z-index:11;pointer-events:none;flex-direction:column;align-items:center;gap:14px;font-family:Nunito,Noto Sans TC,system-ui,sans-serif;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.pickup-cat-loader svg{filter:drop-shadow(0 6px 10px #e7a44a40);transform-origin:50%;width:96px;height:96px;animation:1.6s linear infinite pickup-loader-spin;display:block}.pickup-cat-loader .label{color:var(--pickup-text-muted,#8b6f4a);letter-spacing:.4px;font-size:14px;font-weight:700;animation:1.6s ease-in-out infinite pickup-loader-label}@keyframes pickup-loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pickup-loader-label{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.pickup-cat-loader svg,.pickup-cat-loader .label{animation:none!important}}.pickup-pov-scene{z-index:0;pointer-events:none;transform-origin:50%;will-change:transform;background-color:#2b1b0f;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:background-image .6s ease-in-out;animation:18s ease-in-out infinite alternate pickup-ken-burns;position:fixed;inset:0}.pickup-pov-scene:before{content:"";background:linear-gradient(#fef8ed59 0%,#fef8edb8 55%,#fef8edf2 100%);position:absolute;inset:0}.pickup-pov-scene:after{content:"";opacity:0;background-image:repeating-linear-gradient(100deg,#0000 0 18px,#b4c8dc4d 18px 19px),repeating-linear-gradient(100deg,#0000 0 36px,#8ca0b42e 36px 37px);background-size:100% 200%;transition:opacity .6s;animation:.7s linear infinite pickup-rain-fall;position:absolute;inset:0}.pickup-pov-scene[data-rain=true]:after{opacity:1}@keyframes pickup-ken-burns{0%{transform:scale(1)translate(0)}to{transform:scale(1.08)translate(-1.5%,-1%)}}@keyframes pickup-rain-fall{0%{transform:translateY(-50%)}to{transform:translateY(0)}}.pickup-pov-scene[data-pov-scene=ch1-q1]{background-image:url(/pov/ch1-q1.png)}.pickup-pov-scene[data-pov-scene=ch1-q2]{background-image:url(/pov/ch1-q2.png)}.pickup-pov-scene[data-pov-scene=ch1-q3]{background-image:url(/pov/ch1-q3.png)}.pickup-pov-scene[data-pov-scene=ch1-q4]{background-image:url(/pov/ch1-q4.png)}.pickup-pov-scene[data-pov-scene=ch1-q5]{background-image:url(/pov/ch1-q5.png)}.pickup-pov-scene[data-pov-scene=ch1-q6]{background-image:url(/pov/ch1-q6.png)}@media (prefers-reduced-motion:reduce){.pickup-pov-scene,.pickup-pov-scene:after{animation:none!important}}@keyframes pickup-idle-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}@keyframes pickup-idle-sway{0%,to{transform:rotate(0)translateY(0)}25%{transform:rotate(-.4deg)translateY(-1px)}75%{transform:rotate(.4deg)translateY(-.5px)}}.pickup-breathing{transform-origin:50%;will-change:transform;animation:3.2s ease-in-out infinite pickup-breathing}@keyframes pickup-breathing{0%,to{transform:scale(1)}50%{transform:scale(1.006)}}.pickup-ambient{pointer-events:none;opacity:0;will-change:transform, opacity;z-index:0;border-radius:50%;position:absolute}#pickup-hud{z-index:1;position:relative}.pickup-ambient-1{background:#c8eba0;width:44px;height:44px;animation:9s ease-in-out infinite pickup-drift-a;top:18%;left:8%}.pickup-ambient-2{background:#ffe48a;width:28px;height:28px;animation:11s ease-in-out -3s infinite pickup-drift-b;top:26%;right:10%}.pickup-ambient-3{background:#b8e0ff;border-radius:8px;width:36px;height:36px;animation:13s ease-in-out -6s infinite pickup-drift-c;top:12%;right:32%;transform:rotate(12deg)}@keyframes pickup-drift-a{0%,to{opacity:.16;transform:translate(0)}50%{opacity:.22;transform:translate(14px,-10px)}}@keyframes pickup-drift-b{0%,to{opacity:.14;transform:translate(0)}50%{opacity:.2;transform:translate(-12px,8px)}}@keyframes pickup-drift-c{0%,to{opacity:.12;transform:rotate(12deg)translate(0)}50%{opacity:.18;transform:rotate(-6deg)translate(10px,14px)}}#pickup-preboot{background:var(--pickup-bg);z-index:50;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-family:Noto Sans TC,Nunito,system-ui,sans-serif;transition:opacity .32s ease-out;display:flex;position:fixed;inset:0}#pickup-preboot.is-hidden{opacity:0}#pickup-preboot-mark{color:var(--pickup-accent);letter-spacing:-1px;font-size:48px;font-weight:900;animation:1.2s ease-in-out infinite pickup-preboot-pulse}#pickup-preboot-dots{gap:6px;display:flex}#pickup-preboot-dots span{background:var(--pickup-accent);opacity:.3;border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite pickup-preboot-dot}#pickup-preboot-dots span:nth-child(2){animation-delay:.18s}#pickup-preboot-dots span:nth-child(3){animation-delay:.36s}@keyframes pickup-preboot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.97)}}@keyframes pickup-preboot-dot{0%,80%,to{opacity:.3;transform:scale(.85)}40%{opacity:1;transform:scale(1.15)}}#pickup-splash{background:var(--pickup-bg);z-index:15;font-family:var(--font-family);color:var(--pickup-text);box-sizing:border-box;text-align:center;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:32px 24px;animation:.36s ease-out forwards pickup-splash-in;display:flex;position:fixed;inset:0}@keyframes pickup-splash-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}#pickup-splash *{text-align:center}.pickup-splash-mascot{transform-origin:50% 100%;will-change:transform;justify-content:center;align-items:center;width:180px;height:200px;margin:0 auto;animation:6.4s ease-in-out infinite pickup-idle-sway;display:flex}.pickup-splash-mascot svg{filter:drop-shadow(0 8px 14px #e7a44a47);transform-origin:50% 80%;will-change:transform;width:100%;height:100%;animation:3.2s ease-in-out infinite pickup-idle-breathe;display:block}.pickup-splash-title{font-family:var(--font-display);letter-spacing:-1px;color:var(--pickup-accent);text-shadow:0 2px 0 var(--pickup-accent-dark);margin:0 auto;font-size:40px;font-weight:900;line-height:1}h1,h2{font-family:var(--font-display)}.pickup-splash-subtitle{color:var(--pickup-text-muted);letter-spacing:.5px;margin-top:6px;font-size:15px}.pickup-difficulty-hint{color:var(--pickup-text-muted);letter-spacing:.4px;margin-top:6px;font-size:12px;font-weight:600}.pickup-splash-cta{background:var(--pickup-success);color:#fff;border:none;border-bottom:5px solid var(--pickup-success-dark);letter-spacing:2px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:min(280px,75%);min-height:64px;transition:transform .1s var(--pickup-snap), border-bottom-width .1s var(--pickup-snap), box-shadow .2s ease-out;border-radius:18px;margin:8px auto 0;padding:18px 28px;font-family:inherit;font-size:22px;font-weight:900;animation:2.2s ease-in-out infinite pickup-pulse;box-shadow:0 4px 14px #58cc0247}.pickup-splash-cta:hover{transform:translateY(-1px);box-shadow:0 6px 20px #58cc0261}.pickup-splash-cta:active{box-shadow:none;border-bottom-width:2px;animation:none;transform:translateY(3px)}.pickup-splash-footer{bottom:max(20px, env(safe-area-inset-bottom));color:var(--pickup-text-soft);text-align:center;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11px;position:absolute;left:0;right:0}.pickup-difficulty{text-align:center;width:min(280px,75%);margin:4px auto 0}.pickup-difficulty-summary{color:var(--pickup-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:500;list-style:none;transition:color .16s ease-out,background .16s ease-out;display:inline-flex}.pickup-difficulty-summary::-webkit-details-marker{display:none}.pickup-difficulty-summary:hover{color:var(--pickup-text);background:#e7a44a14}.pickup-difficulty-current{color:var(--pickup-accent);font-weight:700}.pickup-difficulty-caret{transition:transform .22s var(--pickup-snap);color:var(--pickup-text-soft);font-size:12px;line-height:1;display:inline-block}.pickup-difficulty[open] .pickup-difficulty-caret{transform:rotate(180deg)}.pickup-difficulty-opts{animation:pickup-difficulty-reveal .22s var(--pickup-snap);justify-content:center;gap:8px;margin-top:10px;display:flex}@keyframes pickup-difficulty-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pickup-difficulty-opt{border:1.5px solid var(--pickup-border);min-width:60px;color:var(--pickup-text-muted);cursor:pointer;text-align:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .14s ease-out, color .14s ease-out, border-color .14s ease-out, transform .1s var(--pickup-snap);background:#fff;border-radius:10px;flex:none;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600}.pickup-difficulty-opt:hover{border-color:var(--pickup-accent);color:var(--pickup-text)}.pickup-difficulty-opt:active{transform:translateY(1px)}.pickup-difficulty-opt.is-active{background:var(--pickup-accent);border-color:var(--pickup-accent);color:var(--pickup-text);font-weight:700}.pickup-scenario-chip{background:var(--pickup-accent);color:var(--pickup-text)}.pickup-reveal-error-text{color:#a82020;background:#ffd6d6}.word{cursor:help;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;border-bottom:1px dashed #0000;transition:border-color .12s ease-out,background-color .12s ease-out;display:inline}.word:hover{border-bottom-color:var(--pickup-accent)}.word.is-hinted{border-bottom-color:var(--pickup-accent);background:var(--pickup-accent-tint);border-radius:4px;margin:0 -3px;padding:0 3px}.pickup-word-tooltip{z-index:200;background:var(--pickup-text);color:var(--pickup-bg);pointer-events:none;word-wrap:break-word;text-align:center;opacity:0;border-radius:10px;flex-direction:column;align-items:center;gap:2px;max-width:min(280px,84vw);padding:8px 14px;font-size:15px;font-weight:600;line-height:1.25;display:none;position:fixed;box-shadow:0 6px 18px #0000002e,0 2px 6px #0000001a}.pickup-word-tooltip.pickup-word-tooltip-show{animation:pickup-word-tip-up .18s var(--pickup-snap) forwards}.pickup-word-tooltip.below.pickup-word-tooltip-show{animation:pickup-word-tip-down .18s var(--pickup-snap) forwards}.pickup-word-tooltip-en{letter-spacing:.4px;opacity:.72;text-transform:lowercase;font-family:Nunito,system-ui,sans-serif;font-size:11px;font-weight:700}.pickup-word-tooltip-zh{letter-spacing:.5px;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,sans-serif;font-size:16px;font-weight:700}.pickup-word-tooltip:after{content:"";bottom:-6px;left:var(--pickup-tip-arrow,50%);border-left:7px solid #0000;border-right:7px solid #0000;border-top:7px solid var(--pickup-text);width:0;height:0;position:absolute;transform:translate(-50%)}.pickup-word-tooltip.below:after{border-top:none;border-bottom:7px solid var(--pickup-text);top:-6px;bottom:auto}@keyframes pickup-word-tip-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes pickup-word-tip-down{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.mascot-idle,.mascot-happy,.mascot-sad,.mascot-wrap .mascot-eye,.pickup-breathing,.pickup-ambient,.pickup-splash-mascot,.pickup-splash-mascot svg,.pickup-splash-cta,.pickup-bounce,.pickup-pulse,.pickup-wobble,.pickup-fade-up,.pickup-streak-pop,.pickup-confetti-burst,.pickup-glow,#pickup-preboot-mark,#pickup-preboot-dots span,#pickup-splash,.pickup-difficulty-opts,.pickup-word-tooltip.pickup-word-tooltip-show{animation:none!important}.pickup-word-tooltip.pickup-word-tooltip-show{opacity:1!important}.pickup-difficulty-caret{transition:none!important}#boot-overlay *{animation:none!important}.pickup-shake,#pickup-flash.pickup-flash-on{animation:none}}
