@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Noto+Sans+SC:wght@300;400;500;600;700&family=Courier+Prime:wght@400;700&display=swap";.app-shell{min-height:100vh;position:relative;overflow-x:hidden}.app-shell:before{content:"";pointer-events:none;z-index:0;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#a8d8ea0a 3px 4px);position:fixed;inset:0}.recorder[data-v-6c502cf6]{flex-direction:column;align-items:center;max-width:560px;margin:0 auto;display:flex;position:relative}.booth-top[data-v-6c502cf6]{z-index:2;flex-direction:column;align-items:center;display:flex}.booth-antenna[data-v-6c502cf6]{background:linear-gradient(to bottom, var(--primary-400), var(--primary-300));border-radius:2px;width:4px;height:24px;position:relative}.booth-antenna[data-v-6c502cf6]:after{content:"";background:var(--primary-400);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.booth-dome[data-v-6c502cf6]{background:linear-gradient(180deg, var(--primary-400), var(--primary-500));text-align:center;border-radius:40px 40px 0 0;width:100%;margin-top:-2px;padding:10px 0;position:relative}.dome-label[data-v-6c502cf6]{font-family:var(--font-display);color:#fff;letter-spacing:8px;text-shadow:0 1px 3px #0003;font-size:22px;font-weight:700}.booth-body[data-v-6c502cf6]{background:var(--bg-card);border:3px solid var(--primary-300);width:100%;box-shadow:var(--shadow-lg);border-top:none;flex-direction:column;align-items:center;gap:28px;padding:40px 36px;display:flex;position:relative}.booth-body[data-v-6c502cf6]:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff1a 0%,#0000 50%),repeating-linear-gradient(0deg,#0000,#0000 2px,#a8d8ea08 2px 4px);border-radius:0 0 16px 16px;position:absolute;inset:0}.status-lights[data-v-6c502cf6]{align-items:center;gap:10px;display:flex}.light[data-v-6c502cf6]{background:var(--neutral-300);border-radius:50%;width:10px;height:10px;transition:all .3s}.light.active[data-v-6c502cf6]{background:var(--accent-red);animation:1s ease-in-out infinite led-blink-6c502cf6;box-shadow:0 0 8px #e53e3e99}@keyframes led-blink-6c502cf6{0%,to{opacity:1}50%{opacity:.5}}.light-label[data-v-6c502cf6]{color:var(--neutral-500);letter-spacing:1px;font-size:13px;font-weight:500}.recorder-visual[data-v-6c502cf6]{justify-content:center;align-items:center;width:100%;min-height:140px;display:flex}.pulse-container[data-v-6c502cf6]{justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative}.pulse-ring[data-v-6c502cf6]{background:#fc818133;border-radius:50%;animation:2s ease-out infinite pulse-expand-6c502cf6;position:absolute;inset:0}.pulse-ring.delay-1[data-v-6c502cf6]{animation-delay:.6s}.pulse-ring.delay-2[data-v-6c502cf6]{animation-delay:1.2s}@keyframes pulse-expand-6c502cf6{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(2.5)}}.mic-icon[data-v-6c502cf6]{width:56px;height:56px;color:var(--primary-500);z-index:1}.mic-icon.idle[data-v-6c502cf6]{width:76px;height:76px;color:var(--primary-400);animation:3s ease-in-out infinite mic-float-6c502cf6}.mic-icon.recording[data-v-6c502cf6]{color:var(--accent-red);animation:1s ease-in-out infinite mic-pulse-6c502cf6}@keyframes mic-float-6c502cf6{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes mic-pulse-6c502cf6{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.idle-visual[data-v-6c502cf6]{flex-direction:column;align-items:center;gap:12px;display:flex}.idle-hint[data-v-6c502cf6]{color:var(--neutral-600);font-size:15px;font-weight:500}.idle-duration[data-v-6c502cf6]{color:var(--neutral-400);font-size:12px;font-family:var(--font-mono);letter-spacing:1px}.playback-container[data-v-6c502cf6]{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.playback-icon[data-v-6c502cf6]{width:40px;height:40px;color:var(--primary-500)}.audio-preview[data-v-6c502cf6]{border-radius:22px;width:100%;max-width:440px;height:44px}.timer-section[data-v-6c502cf6]{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.timer-display[data-v-6c502cf6]{font-family:var(--font-mono);color:var(--primary-600);letter-spacing:4px;text-shadow:0 2px 4px #4a90d926;font-size:52px;font-weight:700}.timer-bar[data-v-6c502cf6]{background:var(--neutral-200);border-radius:2px;width:100%;max-width:280px;height:4px;overflow:hidden}.timer-progress[data-v-6c502cf6]{background:linear-gradient(90deg, var(--primary-400), var(--accent-coral));border-radius:2px;height:100%;transition:width 1s linear}.timer-limit[data-v-6c502cf6]{font-family:var(--font-mono);color:var(--neutral-400);font-size:12px}.recorder-controls[data-v-6c502cf6]{justify-content:center;gap:16px;width:100%;display:flex}.record-btn[data-v-6c502cf6],.stop-btn[data-v-6c502cf6],.upload-btn[data-v-6c502cf6],.reset-btn[data-v-6c502cf6]{border-radius:var(--radius-full);cursor:pointer;border:none;align-items:center;gap:10px;padding:16px 36px;font-size:16px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.btn-icon[data-v-6c502cf6]{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.btn-icon svg[data-v-6c502cf6]{width:100%;height:100%}.record-btn[data-v-6c502cf6]{background:linear-gradient(145deg, var(--accent-coral), var(--accent-red));color:#fff;box-shadow:0 4px 16px #e53e3e59}.record-btn[data-v-6c502cf6]:hover{transform:translateY(-2px);box-shadow:0 6px 24px #e53e3e73}.record-btn[data-v-6c502cf6]:active{transform:translateY(0)}.stop-btn[data-v-6c502cf6]{background:linear-gradient(145deg, var(--neutral-600), var(--neutral-700));color:#fff;box-shadow:0 4px 16px #2d37484d}.stop-btn[data-v-6c502cf6]:hover{transform:translateY(-2px);box-shadow:0 6px 24px #2d374866}.upload-btn[data-v-6c502cf6]{background:linear-gradient(145deg, var(--primary-400), var(--primary-600));color:#fff;box-shadow:0 4px 16px #5ab4d959}.upload-btn[data-v-6c502cf6]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px #5ab4d973}.upload-btn[data-v-6c502cf6]:disabled{opacity:.6;cursor:not-allowed;transform:none}.reset-btn[data-v-6c502cf6]{background:var(--neutral-100);color:var(--neutral-600);border:1.5px solid var(--neutral-200)}.reset-btn[data-v-6c502cf6]:hover:not(:disabled){background:var(--neutral-200);transform:translateY(-1px)}.reset-btn[data-v-6c502cf6]:disabled{opacity:.6;cursor:not-allowed}.spin[data-v-6c502cf6]{animation:1s linear infinite spin-6c502cf6}@keyframes spin-6c502cf6{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.recorder-error[data-v-6c502cf6]{color:var(--accent-red);border-radius:var(--radius-sm);background:#e53e3e0f;border:1px solid #e53e3e26;align-items:center;gap:8px;padding:10px 16px;font-size:13px;display:flex}.booth-base[data-v-6c502cf6]{flex-direction:column;align-items:center;width:100%;display:flex}.base-detail[data-v-6c502cf6]{background:linear-gradient(180deg, var(--primary-300), var(--primary-200));border-radius:0 0 var(--radius-lg) var(--radius-lg);width:100%;height:12px;margin-top:-2px}@media (width<=480px){.recorder[data-v-6c502cf6]{max-width:420px}.booth-body[data-v-6c502cf6]{gap:24px;padding:24px 16px}.dome-label[data-v-6c502cf6]{letter-spacing:4px;font-size:15px}.pulse-container[data-v-6c502cf6]{width:100px;height:100px}.mic-icon[data-v-6c502cf6]{width:48px;height:48px}.mic-icon.idle[data-v-6c502cf6]{width:64px;height:64px}.timer-display[data-v-6c502cf6]{font-size:32px}.audio-preview[data-v-6c502cf6]{max-width:340px;height:40px}.record-btn[data-v-6c502cf6],.stop-btn[data-v-6c502cf6],.upload-btn[data-v-6c502cf6],.reset-btn[data-v-6c502cf6]{padding:12px 20px;font-size:14px}}.camera-capture[data-v-d3478598]{flex-direction:column;align-items:center;gap:12px;display:flex}.hidden-canvas[data-v-d3478598]{display:none}.camera-preview[data-v-d3478598]{border-radius:var(--radius-md);border:2px solid var(--primary-200);background:#000;width:200px;height:150px;overflow:hidden}.camera-preview video[data-v-d3478598]{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.camera-placeholder[data-v-d3478598]{background:var(--neutral-100);border:2px dashed var(--neutral-300);border-radius:var(--radius-md);width:200px;height:150px;color:var(--neutral-400);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.placeholder-text[data-v-d3478598]{text-align:center;margin:0;padding:0 12px;font-size:13px}.spinner[data-v-d3478598]{border:3px solid var(--neutral-200);border-top-color:var(--primary-400);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin-d3478598}@keyframes spin-d3478598{to{transform:rotate(360deg)}}.capture-btn[data-v-d3478598]{background:linear-gradient(145deg, var(--primary-400), var(--primary-600));color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 28px;font-size:14px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 12px #5ab4d94d}.capture-btn[data-v-d3478598]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #5ab4d966}.capture-btn[data-v-d3478598]:disabled{opacity:.7;cursor:not-allowed}.capture-error[data-v-d3478598]{color:var(--accent-red);align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.waveform-canvas[data-v-fe3d6a14]{border-radius:var(--radius-sm,8px);width:100%;max-width:100%;height:auto}.postcard-wrapper[data-v-8a90578e]{flex-direction:column;align-items:center;display:flex}.postcard[data-v-8a90578e]{background:url(/mingxinpian.jpg) 50%/100% 100% no-repeat;width:148mm;position:relative;overflow:hidden;box-shadow:0 4px 16px #0000001f}.postcard-image[data-v-8a90578e],.postcard-waveform[data-v-8a90578e],.postcard-qr[data-v-8a90578e]{justify-content:center;align-items:center;display:flex;position:absolute;overflow:hidden}.postcard-qr[data-v-8a90578e]{background:#fff;padding:4%}.postcard-image img[data-v-8a90578e]{object-fit:contain;width:100%;height:100%}.postcard-waveform[data-v-8a90578e] .waveform-canvas{border-radius:0;width:100%;height:100%}.postcard-qr img[data-v-8a90578e]{object-fit:contain;width:100%;height:100%}.print-btn[data-v-8a90578e]{background:linear-gradient(145deg, var(--primary-400), var(--primary-600));color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;align-items:center;gap:8px;margin-top:20px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 12px #5ab4d94d}.print-btn[data-v-8a90578e]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #5ab4d966}@media print{.no-print[data-v-8a90578e]{display:none!important}}.site-footer[data-v-08a9046b]{z-index:2;border-radius:var(--radius-full);font-family:var(--font-mono);letter-spacing:1px;color:var(--neutral-400);white-space:nowrap;pointer-events:none;background:#fff9;align-items:center;gap:8px;padding:4px 10px;font-size:12px;display:flex;position:fixed;bottom:12px;left:50%;transform:translate(-50%)}.site-footer a[data-v-08a9046b]{color:inherit;pointer-events:auto;text-decoration:none}.site-footer a[data-v-08a9046b]:hover{color:var(--primary-500);text-decoration:underline}.sep[data-v-08a9046b]{opacity:.7}@media (width<=480px){.site-footer[data-v-08a9046b]{letter-spacing:0;font-size:11px}}.home[data-v-2ff39733]{--pane-content-width:560px;--pane-gap:300px;padding:0 16px;position:fixed;inset:0;overflow:hidden}.bg-building[data-v-2ff39733]{z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;max-width:none;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.bg-text[data-v-2ff39733]{pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.bg-col[data-v-2ff39733]{width:200px;font-family:var(--font-brush);background:linear-gradient(#2f6fc4 0%,#4a90d9 38%,#a98a3c 72%,#c9a227 100%);opacity:.42;-webkit-background-clip:text;background-clip:text;flex-direction:column;align-items:center;font-size:clamp(96px,7.2vw,138px);line-height:1.1;display:flex;position:absolute}.bg-col span[data-v-2ff39733]{color:#0000}.bg-col-left[data-v-2ff39733]{top:7vh;left:2%}.bg-col-right[data-v-2ff39733]{top:calc(7vh + 110px);right:2%}.bg-decor[data-v-2ff39733]{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.bg-circle[data-v-2ff39733]{opacity:.08;border-radius:50%;position:absolute}.bg-circle-1[data-v-2ff39733]{background:var(--primary-400);width:500px;height:500px;animation:20s ease-in-out infinite float-slow-2ff39733;top:-150px;right:-100px}.bg-circle-2[data-v-2ff39733]{background:var(--accent-coral);width:300px;height:300px;animation:15s ease-in-out infinite reverse float-slow-2ff39733;bottom:10%;left:-80px}.bg-circle-3[data-v-2ff39733]{background:var(--primary-300);width:200px;height:200px;animation:25s ease-in-out infinite float-slow-2ff39733;top:40%;right:5%}@keyframes float-slow-2ff39733{0%,to{transform:translate(0)}25%{transform:translate(20px,-15px)}50%{transform:translate(-10px,20px)}75%{transform:translate(15px,10px)}}.hero-badge[data-v-2ff39733]{z-index:2;background:var(--primary-100);border:1px solid var(--primary-200);border-radius:var(--radius-full);color:var(--primary-600);align-items:center;gap:6px;padding:6px 16px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;top:24px;left:50%;transform:translate(-50%)}.stage[data-v-2ff39733]{z-index:1;transform-origin:50%;position:absolute;inset:0}.split[data-v-2ff39733]{align-items:center;width:100%;height:100%;transition:transform .5s cubic-bezier(.22,1,.36,1);display:flex}.split.step-record[data-v-2ff39733]{transform:translateX(calc(var(--pane-content-width) / 2 + var(--pane-gap) / 2))}.split.step-image[data-v-2ff39733],.split.step-card[data-v-2ff39733]{transform:translate(0)}.pane[data-v-2ff39733]{flex-shrink:0;align-items:center;width:50%;height:100%;transition:opacity .4s,transform .5s cubic-bezier(.22,1,.36,1);display:flex}.pane-left[data-v-2ff39733]{padding-right:calc(var(--pane-gap) / 2);justify-content:flex-end}.pane-right[data-v-2ff39733]{padding-left:calc(var(--pane-gap) / 2);justify-content:flex-start}.split.step-record .pane-right[data-v-2ff39733]{opacity:0;pointer-events:none;transform:translate(30%)}.pane-content[data-v-2ff39733]{width:100%;max-width:var(--pane-content-width);flex-direction:column;align-items:center;display:flex}.pane-content-left[data-v-2ff39733] .recorder{width:100%;margin:0}.pane-swap-enter-active[data-v-2ff39733]{animation:.45s cubic-bezier(.22,1,.36,1) pane-in-2ff39733}.pane-swap-leave-active[data-v-2ff39733]{animation:.3s ease-in pane-out-2ff39733}@keyframes pane-in-2ff39733{0%{opacity:0;transform:translate(48px)}to{opacity:1;transform:translate(0)}}@keyframes pane-out-2ff39733{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-48px)}}.section-header[data-v-2ff39733]{align-items:center;gap:14px;margin-bottom:16px;display:flex}.section-header.center[data-v-2ff39733]{text-align:center;justify-content:center}.section-icon[data-v-2ff39733]{background:var(--primary-100);border-radius:var(--radius-md);width:40px;height:40px;color:var(--primary-500);flex-shrink:0;justify-content:center;align-items:center;display:flex}.section-title[data-v-2ff39733]{color:var(--neutral-700);margin:0 0 2px;font-size:17px;font-weight:600}.section-desc[data-v-2ff39733]{color:var(--neutral-400);margin:0;font-size:13px}.upload-options[data-v-2ff39733]{align-items:stretch;gap:20px;display:flex}.upload-option[data-v-2ff39733]{border:2px dashed var(--primary-200);border-radius:var(--radius-md);background:#fff;flex-direction:column;flex:1;align-items:center;padding:20px 16px;display:flex}.option-title[data-v-2ff39733]{color:var(--neutral-600);align-items:center;gap:6px;margin:0 0 14px;font-size:14px;font-weight:600;display:flex}.upload-option-divider[data-v-2ff39733]{flex-shrink:0;justify-content:center;align-self:center;align-items:center;width:48px;display:flex}.divider-text[data-v-2ff39733]{background:linear-gradient(145deg, var(--primary-100), var(--primary-200));border:1px solid var(--primary-300);color:#000;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:600;display:flex;box-shadow:0 2px 8px #5ab4d940}.qr-upload[data-v-2ff39733]{flex-direction:column;align-items:center;gap:12px;display:flex}.qr-frame[data-v-2ff39733]{border:2px solid var(--primary-200);border-radius:var(--radius-sm);background:#fff;width:200px;height:150px;padding:8px}.qr-frame img[data-v-2ff39733]{object-fit:contain;width:100%;height:100%}.qr-hint[data-v-2ff39733]{color:var(--neutral-500);text-align:center;margin:0;font-size:13px}.play-view[data-v-f667c6df]{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px 44px;display:flex;position:relative;overflow:hidden}.bg-decor[data-v-f667c6df]{pointer-events:none;position:fixed;inset:0}.bg-ring[data-v-f667c6df]{border:2px solid var(--primary-200);opacity:.3;border-radius:50%;position:absolute}.bg-ring-1[data-v-f667c6df]{width:600px;height:600px;animation:30s linear infinite ring-rotate-f667c6df;top:-200px;right:-150px}.bg-ring-2[data-v-f667c6df]{width:400px;height:400px;animation:20s linear infinite reverse ring-rotate-f667c6df;bottom:-100px;left:-100px}@keyframes ring-rotate-f667c6df{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page-enter-enter-active[data-v-f667c6df]{animation:.6s cubic-bezier(.22,1,.36,1) page-in-f667c6df}@keyframes page-in-f667c6df{0%{opacity:0;transform:translateY(40px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.play-main[data-v-f667c6df]{z-index:1;flex-direction:column;align-items:center;width:100%;max-width:520px;display:flex;position:relative}.brand-badge[data-v-f667c6df]{background:var(--bg-card);border:1.5px solid var(--primary-200);border-radius:var(--radius-full);color:var(--primary-600);font-size:14px;font-weight:600;font-family:var(--font-display);box-shadow:var(--shadow-sm);align-items:center;gap:8px;margin-bottom:24px;padding:8px 18px;display:flex}.player-card[data-v-f667c6df]{background:var(--bg-card);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg);border:1px solid var(--primary-200);overflow:hidden}.card-header[data-v-f667c6df]{text-align:center;background:linear-gradient(135deg, var(--primary-100), var(--primary-200));border-bottom:1px dashed var(--primary-300);padding:28px 32px 20px}.header-line[data-v-f667c6df]{background:var(--primary-300);border-radius:1px;width:40px;height:2px;margin:0 auto 12px}.card-header .header-line[data-v-f667c6df]:last-child{margin:12px auto 0}.card-title[data-v-f667c6df]{font-family:var(--font-display);color:var(--neutral-700);letter-spacing:4px;margin:0;font-size:28px;font-weight:700}.card-subtitle[data-v-f667c6df]{font-family:var(--font-mono);color:var(--neutral-400);letter-spacing:3px;text-transform:uppercase;margin:6px 0 0;font-size:12px}.vinyl-container[data-v-f667c6df]{justify-content:center;padding:28px 0 16px;display:flex}.vinyl[data-v-f667c6df]{background:conic-gradient(from 0deg, var(--neutral-700) 0deg, var(--neutral-800) 45deg, var(--neutral-700) 90deg, var(--neutral-800) 135deg, var(--neutral-700) 180deg, var(--neutral-800) 225deg, var(--neutral-700) 270deg, var(--neutral-800) 315deg, var(--neutral-700) 360deg);width:100px;height:100px;box-shadow:0 4px 20px #0003, inset 0 0 0 3px var(--neutral-600);border-radius:50%;justify-content:center;align-items:center;animation:4s linear infinite vinyl-spin-f667c6df;display:flex}.vinyl-inner[data-v-f667c6df]{background:var(--primary-400);width:40px;height:40px;box-shadow:inset 0 0 0 3px var(--primary-300);border-radius:50%;justify-content:center;align-items:center;display:flex}.vinyl-label[data-v-f667c6df]{color:#fff;justify-content:center;align-items:center;display:flex}@keyframes vinyl-spin-f667c6df{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.waveform-section[data-v-f667c6df]{padding:0 24px}.audio-player[data-v-f667c6df]{padding:20px 24px}.listener-login[data-v-f667c6df],.listener-session[data-v-f667c6df]{border-radius:var(--radius-md);background:var(--primary-100);text-align:center;margin:0 24px;padding:14px}.listener-login p[data-v-f667c6df]{color:var(--neutral-600);margin:0 0 10px}.listener-login div[data-v-f667c6df]{gap:8px;display:flex}.listener-login input[data-v-f667c6df]{border:1px solid var(--primary-300);border-radius:var(--radius-md);flex:1;min-width:0;padding:9px 12px}.listener-login button[data-v-f667c6df],.listener-session button[data-v-f667c6df],.listener-session a[data-v-f667c6df]{border-radius:var(--radius-md);background:var(--primary-500);color:#fff;border:0;padding:8px 14px}.listener-session a[data-v-f667c6df]{text-decoration:none}.listener-session[data-v-f667c6df]{color:var(--neutral-600);justify-content:space-between;align-items:center;display:flex}.listener-actions[data-v-f667c6df]{gap:8px;display:flex}.audio-element[data-v-f667c6df]{border-radius:24px;width:100%;height:48px}.listen-count[data-v-f667c6df]{text-align:center;color:var(--primary-600);margin:-8px 24px 16px;font-size:14px}.play-hint[data-v-f667c6df]{color:var(--neutral-400);justify-content:center;align-items:center;gap:8px;padding:0 24px 16px;font-size:13px;display:flex}.card-footer[data-v-f667c6df]{text-align:center;background:var(--primary-100);border-top:1px dashed var(--primary-300);padding:16px 24px}.footer-text[data-v-f667c6df]{font-family:var(--font-display);color:var(--primary-500);letter-spacing:2px;margin:0;font-size:13px}@media (width<=480px){.card-header[data-v-f667c6df]{padding:20px 20px 16px}.card-title[data-v-f667c6df]{font-size:24px}.waveform-section[data-v-f667c6df]{padding:0 16px}.audio-player[data-v-f667c6df]{padding:16px}.listener-session[data-v-f667c6df],.listener-login div[data-v-f667c6df]{flex-direction:column;align-items:stretch}.listener-actions[data-v-f667c6df]{justify-content:center}}.image-upload-view[data-v-bf7471c1]{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex;position:relative;overflow:hidden}.bg-decor[data-v-bf7471c1]{pointer-events:none;position:fixed;inset:0}.bg-circle[data-v-bf7471c1]{opacity:.06;border-radius:50%;position:absolute}.bg-circle-1[data-v-bf7471c1]{background:var(--primary-400);width:400px;height:400px;animation:20s ease-in-out infinite float-slow-bf7471c1;top:-100px;right:-80px}.bg-circle-2[data-v-bf7471c1]{background:var(--accent-coral);width:300px;height:300px;animation:15s ease-in-out infinite reverse float-slow-bf7471c1;bottom:-50px;left:-80px}@keyframes float-slow-bf7471c1{0%,to{transform:translate(0)}50%{transform:translate(15px,-10px)}}.page-enter-enter-active[data-v-bf7471c1]{animation:.6s cubic-bezier(.22,1,.36,1) page-in-bf7471c1}@keyframes page-in-bf7471c1{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.upload-main[data-v-bf7471c1]{z-index:1;flex-direction:column;align-items:center;width:100%;max-width:480px;display:flex;position:relative}.brand-badge[data-v-bf7471c1]{background:var(--bg-card);border:1.5px solid var(--primary-200);border-radius:var(--radius-full);color:var(--primary-600);font-size:14px;font-weight:600;font-family:var(--font-display);box-shadow:var(--shadow-sm);align-items:center;gap:8px;margin-bottom:24px;padding:8px 18px;display:flex}.upload-card[data-v-bf7471c1]{background:var(--bg-card);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg);border:1px solid var(--primary-200);overflow:hidden}.card-header[data-v-bf7471c1]{text-align:center;background:linear-gradient(135deg, var(--primary-100), var(--primary-200));border-bottom:1px dashed var(--primary-300);padding:28px 24px 20px}.card-title[data-v-bf7471c1]{font-family:var(--font-display);color:var(--neutral-700);margin:0 0 4px;font-size:24px;font-weight:700}.card-subtitle[data-v-bf7471c1]{color:var(--neutral-500);margin:0;font-size:13px}.card-body[data-v-bf7471c1]{padding:24px}.upload-area[data-v-bf7471c1]{border:2px dashed var(--primary-300);border-radius:var(--radius-md);text-align:center;background:#e8f4fc33;padding:40px 20px;transition:all .3s;position:relative}.upload-area[data-v-bf7471c1]:hover{border-color:var(--primary-400);background:#e8f4fc66}.file-input[data-v-bf7471c1]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.upload-label[data-v-bf7471c1]{cursor:pointer;flex-direction:column;align-items:center;gap:12px;display:flex}.upload-icon[data-v-bf7471c1]{border-radius:var(--radius-md);background:var(--primary-100);width:72px;height:72px;color:var(--primary-400);justify-content:center;align-items:center;transition:all .3s;display:flex}.upload-area:hover .upload-icon[data-v-bf7471c1]{background:var(--primary-200);color:var(--primary-500);transform:translateY(-2px)}.upload-text[data-v-bf7471c1]{color:var(--neutral-600);font-size:16px;font-weight:600}.upload-hint[data-v-bf7471c1]{color:var(--neutral-400);font-size:12px}.preview-section[data-v-bf7471c1]{flex-direction:column;align-items:center;gap:20px;display:flex}.preview-frame[data-v-bf7471c1]{border-radius:var(--radius-md);border:3px solid #fff;width:100%;max-width:300px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.preview-image[data-v-bf7471c1]{width:100%;height:auto;display:block}.action-buttons[data-v-bf7471c1]{justify-content:center;gap:12px;width:100%;display:flex}.upload-btn[data-v-bf7471c1],.reset-btn[data-v-bf7471c1]{border-radius:var(--radius-full);cursor:pointer;border:none;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:600;transition:all .3s;display:flex}.upload-btn[data-v-bf7471c1]{background:linear-gradient(145deg, var(--primary-400), var(--primary-600));color:#fff;box-shadow:0 4px 14px #5ab4d94d}.upload-btn[data-v-bf7471c1]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #5ab4d966}.upload-btn[data-v-bf7471c1]:disabled{opacity:.6;cursor:not-allowed;transform:none}.reset-btn[data-v-bf7471c1]{background:var(--neutral-100);color:var(--neutral-600);border:1.5px solid var(--neutral-200)}.reset-btn[data-v-bf7471c1]:hover:not(:disabled){background:var(--neutral-200);transform:translateY(-1px)}.reset-btn[data-v-bf7471c1]:disabled{opacity:.6;cursor:not-allowed}.error-message[data-v-bf7471c1]{color:var(--accent-red);justify-content:center;align-items:center;gap:8px;margin:16px 0 0;font-size:13px;display:flex}.success-section[data-v-bf7471c1]{text-align:center;padding:20px 0}.success-icon[data-v-bf7471c1]{color:#fff;background:linear-gradient(145deg,#48bb78,#38a169);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 20px;animation:.5s cubic-bezier(.22,1,.36,1) success-pop-bf7471c1;display:flex;box-shadow:0 4px 20px #48bb784d}@keyframes success-pop-bf7471c1{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.success-title[data-v-bf7471c1]{color:#38a169;margin:0 0 8px;font-size:20px;font-weight:600}.success-desc[data-v-bf7471c1]{color:var(--neutral-500);margin:0 0 24px;font-size:14px}.card-footer[data-v-bf7471c1]{text-align:center;background:var(--primary-100);border-top:1px dashed var(--primary-300);padding:16px 24px}.footer-text[data-v-bf7471c1]{font-family:var(--font-display);color:var(--primary-500);letter-spacing:2px;margin:0;font-size:13px}@media (width<=480px){.card-header[data-v-bf7471c1]{padding:20px 16px 16px}.card-body[data-v-bf7471c1]{padding:20px 16px}.upload-area[data-v-bf7471c1]{padding:32px 16px}.action-buttons[data-v-bf7471c1]{flex-direction:column;align-items:center}}.stats-page[data-v-3ac652ea]{width:min(640px,100% - 32px);margin:0 auto;padding:32px 0 64px}.back-button[data-v-3ac652ea],.switch-button[data-v-3ac652ea]{color:var(--primary-600);background:0 0;border:0}.stats-card[data-v-3ac652ea],.credential-section[data-v-3ac652ea]{border:1px solid var(--primary-200);border-radius:var(--radius-lg);background:var(--bg-card);box-shadow:var(--shadow-sm);margin-top:20px;padding:24px}.stats-card h1[data-v-3ac652ea]{color:var(--neutral-700);margin:0}.stats-card p[data-v-3ac652ea]{color:var(--neutral-500)}.stats-header[data-v-3ac652ea]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.username-form[data-v-3ac652ea]{gap:10px;margin-top:20px;display:flex}.username-form input[data-v-3ac652ea]{border:1px solid var(--primary-300);border-radius:var(--radius-md);flex:1;min-width:0;padding:10px 12px}.username-form button[data-v-3ac652ea],.generate-button[data-v-3ac652ea]{border-radius:var(--radius-full);background:var(--primary-500);color:#fff;border:0;padding:10px 18px}.count[data-v-3ac652ea]{text-align:center;margin:32px 0;font-size:24px}.count strong[data-v-3ac652ea]{color:var(--primary-600);font-size:48px}.generate-button[data-v-3ac652ea]{margin:0 auto;display:block}.status[data-v-3ac652ea],.credential-section[data-v-3ac652ea]{text-align:center}.error[data-v-3ac652ea]{color:var(--accent-red)}.credential-section img[data-v-3ac652ea]{border-radius:var(--radius-md);-webkit-touch-callout:default;width:100%;margin-top:16px;display:block}@media (width<=480px){.stats-header[data-v-3ac652ea],.username-form[data-v-3ac652ea]{flex-direction:column}.username-form input[data-v-3ac652ea],.username-form button[data-v-3ac652ea]{width:100%}}@font-face{font-family:Ma Shan Zheng Subset;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/mashanzheng-8chars.ttf)format("truetype")}:root{--primary-100:#e8f4fc;--primary-200:#c5e4f7;--primary-300:#a8d8ea;--primary-400:#7cc4e0;--primary-500:#5ab4d9;--primary-600:#4a90d9;--neutral-50:#fafbfc;--neutral-100:#f5f7fa;--neutral-200:#e8ecf1;--neutral-300:#d1d9e6;--neutral-400:#a0aec0;--neutral-500:#718096;--neutral-600:#4a5568;--neutral-700:#2d3748;--neutral-800:#1a202c;--accent-coral:#fc8181;--accent-red:#e53e3e;--accent-warm:#f6ad55;--bg-gradient:linear-gradient(135deg, #e8f4fc 0%, #d6edf9 50%, #c5e4f7 100%);--bg-card:#fffffff2;--shadow-sm:0 2px 8px #5ab4d91a;--shadow-md:0 4px 16px #5ab4d926;--shadow-lg:0 8px 32px #5ab4d933;--shadow-glow:0 0 20px #a8d8ea4d, 0 0 40px #a8d8ea26;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px;--font-display:"Playfair Display", "Georgia", serif;--font-brush:"Ma Shan Zheng Subset", "Ma Shan Zheng", var(--font-display);--font-body:"Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"Courier Prime", "Courier New", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);color:var(--neutral-700);background:var(--bg-gradient);min-height:100vh;line-height:1.6}button{font-family:var(--font-body);cursor:pointer}input,textarea{font-family:var(--font-body)}::selection{background:var(--primary-300);color:var(--neutral-800)}
