.cap-mask[data-v-126714cd]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;overflow-y:auto;padding:var(--s-5) var(--s-4);background:var(--veil);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel[data-v-126714cd]{margin:auto;padding:var(--s-5) var(--s-5) var(--s-4);background:var(--bg);border:1px solid var(--line);border-radius:var(--r-3);box-shadow:0 30px 80px var(--shadow-pop)}.head[data-v-126714cd]{display:flex;align-items:center;justify-content:space-between}.head__title[data-v-126714cd]{font-size:17px;font-weight:700}.head__refresh[data-v-126714cd]{display:grid;place-items:center;width:30px;height:30px;border:none;border-radius:var(--r-1);background:transparent;color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.head__refresh[data-v-126714cd]:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.head__refresh[data-v-126714cd]:disabled{opacity:.5;cursor:default}.tip[data-v-126714cd]{margin-top:var(--s-1);font-size:var(--t-cap);color:var(--text-muted)}.canvas[data-v-126714cd]{position:relative;margin-top:var(--s-3);border-radius:var(--r-2);overflow:hidden;background:var(--surface-2)}.canvas--empty[data-v-126714cd]{display:grid;place-items:center;width:280px;height:150px;color:var(--text-faint);font-size:var(--t-cap)}.canvas__bg[data-v-126714cd]{display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none}.canvas__piece[data-v-126714cd]{position:absolute;-webkit-user-select:none;user-select:none;pointer-events:none}.slider[data-v-126714cd]{display:block;margin-top:var(--s-3);accent-color:var(--accent-strong);cursor:pointer}.slider[data-v-126714cd]:disabled{cursor:default}.err[data-v-126714cd]{margin-top:var(--s-2);font-size:var(--t-cap);color:var(--danger)}.foot[data-v-126714cd]{display:flex;justify-content:flex-end;margin-top:var(--s-2)}.foot__cancel[data-v-126714cd]{border:none;background:transparent;color:var(--text-muted);font-size:var(--t-sm);cursor:pointer;padding:var(--s-1) var(--s-2);border-radius:var(--r-1);transition:color var(--dur-fast) var(--ease)}.foot__cancel[data-v-126714cd]:hover{color:var(--text)}.cap-mask-enter-active[data-v-126714cd],.cap-mask-leave-active[data-v-126714cd]{transition:opacity var(--dur) var(--ease)}.cap-mask-enter-from[data-v-126714cd],.cap-mask-leave-to[data-v-126714cd]{opacity:0}.cap-mask-enter-active .panel[data-v-126714cd],.cap-mask-leave-active .panel[data-v-126714cd]{transition:transform var(--dur-slow) var(--ease),opacity var(--dur) var(--ease)}.cap-mask-enter-from .panel[data-v-126714cd],.cap-mask-leave-to .panel[data-v-126714cd]{transform:translateY(10px);opacity:0}.mask[data-v-8adfd6db]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;overflow-y:auto;overscroll-behavior:contain;padding:var(--s-5) var(--s-4);background:var(--veil);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel[data-v-8adfd6db]{position:relative;width:100%;max-width:420px;margin:auto;padding:var(--s-7) var(--s-6) var(--s-6);background:var(--bg);border:1px solid var(--line);border-radius:var(--r-3);box-shadow:0 30px 80px var(--shadow-pop)}.panel__close[data-v-8adfd6db]{position:absolute;top:var(--s-4);right:var(--s-4);display:grid;place-items:center;width:32px;height:32px;border:none;border-radius:var(--r-1);background:transparent;color:var(--text-muted);cursor:pointer;transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.panel__close[data-v-8adfd6db]:hover{color:var(--text);background:var(--surface-2)}.panel__rule[data-v-8adfd6db]{display:block;width:40px;height:3px;border-radius:var(--r-full);background:var(--accent-strong);margin-bottom:var(--s-4)}.panel__title[data-v-8adfd6db]{font-size:30px;font-weight:800;letter-spacing:-.02em}.panel__slogan[data-v-8adfd6db]{margin-top:var(--s-2);color:var(--text-muted);font-size:var(--t-body)}.form[data-v-8adfd6db]{display:grid;gap:var(--s-4);margin-top:var(--s-6)}.field__head[data-v-8adfd6db]{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-3)}.field__switch[data-v-8adfd6db]{border:none;background:transparent;padding:0;color:var(--accent);font-size:var(--t-cap);font-weight:600;cursor:pointer}.field__switch[data-v-8adfd6db]:hover{text-decoration:underline;text-underline-offset:3px}.field__note[data-v-8adfd6db]{font-size:var(--t-cap);color:var(--text-faint)}.field__note--test[data-v-8adfd6db]{color:var(--warn)}.field__note--test b[data-v-8adfd6db]{font-family:var(--font-mono);letter-spacing:.08em}.form-error--block[data-v-8adfd6db]{margin-top:calc(var(--s-1) * -1)}.hint[data-v-8adfd6db]{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--line-accent);border-radius:var(--r-2);background:var(--accent-soft);color:var(--text-muted);font-size:var(--t-sm)}.btn--auth[data-v-8adfd6db]{height:52px;border-radius:var(--r-1);font-size:var(--t-lead)}.missing[data-v-8adfd6db]{margin-top:calc(var(--s-2) * -1);text-align:center;font-size:var(--t-cap);color:var(--text-faint)}.consent[data-v-8adfd6db]{margin-top:calc(var(--s-2) * -1);font-size:var(--t-cap);color:var(--text-faint);line-height:1.6}.consent__link[data-v-8adfd6db]{color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent-line);text-underline-offset:3px}.consent__link[data-v-8adfd6db]:hover{text-decoration-color:var(--accent)}.divider[data-v-8adfd6db]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--s-4);margin:var(--s-5) 0;color:var(--text-faint);font-size:var(--t-sm)}.divider[data-v-8adfd6db]:before,.divider[data-v-8adfd6db]:after{content:"";height:1px;background:var(--line)}.switches[data-v-8adfd6db]{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3)}.switches .btn[data-v-8adfd6db]{border-radius:var(--r-1);font-weight:500}.mask-enter-active[data-v-8adfd6db],.mask-leave-active[data-v-8adfd6db]{transition:opacity var(--dur) var(--ease)}.mask-enter-from[data-v-8adfd6db],.mask-leave-to[data-v-8adfd6db]{opacity:0}.mask-enter-active .panel[data-v-8adfd6db],.mask-leave-active .panel[data-v-8adfd6db]{transition:transform var(--dur-slow) var(--ease),opacity var(--dur) var(--ease)}.mask-enter-from .panel[data-v-8adfd6db],.mask-leave-to .panel[data-v-8adfd6db]{transform:translateY(10px);opacity:0}@media(max-width:480px){.panel[data-v-8adfd6db]{padding:var(--s-6) var(--s-5) var(--s-5)}.panel__title[data-v-8adfd6db]{font-size:26px}.form[data-v-8adfd6db]{gap:var(--s-3);margin-top:var(--s-5)}}@media(max-height:760px){.mask[data-v-8adfd6db]{padding-block:var(--s-3)}.panel[data-v-8adfd6db]{padding:var(--s-5) var(--s-5) var(--s-4)}.panel__title[data-v-8adfd6db]{font-size:25px}.panel__rule[data-v-8adfd6db]{margin-bottom:var(--s-3)}.form[data-v-8adfd6db]{gap:var(--s-3);margin-top:var(--s-4)}.divider[data-v-8adfd6db]{margin:var(--s-4) 0}.btn--auth[data-v-8adfd6db]{height:46px}}.toast-host[data-v-39c520b6]{position:fixed;top:var(--s-5);left:50%;transform:translate(-50%);z-index:200;display:grid;gap:var(--s-2);justify-items:center;pointer-events:none}.toast[data-v-39c520b6]{pointer-events:auto;max-width:min(90vw,420px);padding:10px 18px;border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--toast-bg);color:var(--text);font-size:var(--t-sm);line-height:1.5;cursor:pointer;box-shadow:0 10px 30px var(--shadow-toast)}.toast--ok[data-v-39c520b6]{border-color:var(--ok-line-strong)}.toast--error[data-v-39c520b6]{border-color:var(--danger-line-strong)}.toast-enter-active[data-v-39c520b6],.toast-leave-active[data-v-39c520b6]{transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease)}.toast-enter-from[data-v-39c520b6],.toast-leave-to[data-v-39c520b6]{opacity:0;transform:translateY(-8px)}.wechat-login-notice[data-v-f7a3c507]{position:fixed;z-index:300;top:70px;left:12px;right:12px;max-width:640px;margin:auto;padding:12px 16px;border-radius:12px;background:var(--bg-card, #242034);color:var(--text-primary, #fff);box-shadow:0 4px 20px #0004;font-size:14px}.wechat-login-notice button[data-v-f7a3c507]{margin-left:10px;cursor:pointer;text-decoration:underline}:root{--ok: oklch(.723 .127 180);--ok-soft: oklch(.723 .127 180 / .12);--ok-line: oklch(.723 .127 180 / .35);--ok-line-strong: oklch(.723 .127 180 / .5);--warn: oklch(.767 .154 71);--warn-soft: oklch(.767 .154 71 / .12);--warn-line: oklch(.767 .154 71 / .3);--warn-line-strong: oklch(.767 .154 71 / .4);--warn-ink: oklch(.24 .03 71);--danger: oklch(.66 .19 22);--danger-soft: oklch(.66 .19 22 / .12);--danger-line: oklch(.66 .19 22 / .45);--danger-line-strong: oklch(.66 .19 22 / .55);--pal-violet: oklch(.581 .198 300);--pal-blue: oklch(.559 .15 248);--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--s-9: 96px;--s-10: 128px;--r-1: 6px;--r-2: 10px;--r-3: 14px;--r-4: 20px;--r-full: 999px;--font-sans: "PingFang SC", "HarmonyOS Sans SC", "Source Han Sans SC", "Noto Sans SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--t-cap: 12px;--t-sm: 13px;--t-body: 15px;--t-lead: 17px;--t-h4: 20px;--t-h3: 25px;--t-h2: clamp(28px, 3.4vw, 40px);--t-h1: clamp(38px, 5.6vw, 68px);--ease: cubic-bezier(.16, 1, .3, 1);--dur-fast: .14s;--dur: .22s;--dur-slow: .38s;--page-max: 1200px;--page-pad: clamp(20px, 4vw, 40px);--measure: 62ch}:root,:root[data-palette=violet]{--bg: oklch(.155 .018 295);--bg-deep: oklch(.125 .016 295);--surface: oklch(.195 .02 295);--surface-2: oklch(.235 .022 295);--surface-3: oklch(.275 .024 295);--line: oklch(.3 .022 295);--line-strong: oklch(.38 .026 295);--line-accent: oklch(.74 .155 300 / .45);--text: oklch(.97 .006 295);--text-muted: oklch(.72 .018 295);--text-faint: oklch(.565 .018 295);--text-on-accent: oklch(.99 .005 300);--accent: oklch(.74 .155 300);--accent-bright: oklch(.84 .093 300);--accent-strong: oklch(.581 .198 300);--accent-hover: oklch(.609 .198 300);--accent-deep: oklch(.5 .185 300);--accent-soft: oklch(.74 .155 300 / .14);--accent-soft-hover: oklch(.74 .155 300 / .2);--accent-line: oklch(.74 .155 300 / .34);--accent-mask: oklch(.7 .17 300 / .5);--select-bg: oklch(.74 .155 300 / .32);--glow-1: oklch(.55 .2 300 / .3);--glow-2: oklch(.45 .16 285 / .22);--grad-1: oklch(.66 .17 300);--grad-2: oklch(.46 .15 292);--bg-veil: oklch(.155 .018 295 / .78);--veil: oklch(.115 .016 295 / .72);--shadow-pop: oklch(.09 .015 295 / .7);--shadow-toast: oklch(.09 .015 295 / .6);--toast-bg: oklch(.235 .022 295)}:root[data-palette=blue]{--bg: oklch(.191 .027 261);--bg-deep: oklch(.163 .024 261);--surface: oklch(.241 .031 257);--surface-2: oklch(.272 .033 257);--surface-3: oklch(.31 .036 254);--line: oklch(.334 .039 251);--line-strong: oklch(.42 .046 251);--line-accent: oklch(.665 .163 245 / .45);--text: oklch(.954 .013 244);--text-muted: oklch(.76 .036 246);--text-faint: oklch(.611 .048 251);--text-on-accent: oklch(.99 .004 244);--accent: oklch(.665 .163 245);--accent-bright: oklch(.78 .12 245);--accent-strong: oklch(.559 .15 248);--accent-hover: oklch(.588 .153 248);--accent-deep: oklch(.48 .129 248);--accent-soft: oklch(.665 .163 245 / .14);--accent-soft-hover: oklch(.665 .163 245 / .2);--accent-line: oklch(.665 .163 245 / .34);--accent-mask: oklch(.6 .151 245 / .5);--select-bg: oklch(.665 .163 245 / .32);--glow-1: oklch(.55 .155 250 / .26);--glow-2: oklch(.48 .09 225 / .2);--grad-1: oklch(.6 .151 245);--grad-2: oklch(.42 .118 250);--bg-veil: oklch(.191 .027 261 / .78);--veil: oklch(.147 .024 261 / .72);--shadow-pop: oklch(.1 .02 261 / .7);--shadow-toast: oklch(.1 .02 261 / .6);--toast-bg: oklch(.272 .033 257)}@media(prefers-reduced-motion:no-preference){html[data-palette-anim] *,html[data-palette-anim] *:before,html[data-palette-anim] *:after{transition:background-color .24s var(--ease),border-color .24s var(--ease),color .24s var(--ease),box-shadow .24s var(--ease)!important}}@media(prefers-reduced-motion:reduce){:root{--dur-fast: 1ms;--dur: 1ms;--dur-slow: 1ms}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px;color-scheme:dark}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--t-body);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0;font-weight:700;line-height:1.18;letter-spacing:-.015em;text-wrap:balance}p{margin:0}a{color:inherit;text-decoration:none;transition:color var(--dur-fast) var(--ease)}img,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}.num,.stat-value{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-1)}::selection{background:var(--select-bg);color:var(--text)}.wrap{width:100%;max-width:var(--page-max);margin-inline:auto;padding-inline:max(var(--page-pad),env(safe-area-inset-left)) max(var(--page-pad),env(safe-area-inset-right))}.section{padding-block:var(--s-10)}@media(max-width:760px){.section{padding-block:var(--s-8)}.btn--sm{height:40px;padding-inline:var(--s-4)}}.section--hairline{border-top:1px solid var(--line)}.section--deep{background:var(--bg-deep)}.lead{color:var(--text-muted);font-size:var(--t-lead);line-height:1.8;max-width:var(--measure)}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.cap{font-size:var(--t-cap);color:var(--text-faint)}.eyebrow{display:inline-flex;align-items:center;gap:var(--s-2);padding:6px 12px;border:1px solid var(--line-accent);border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent);font-size:var(--t-cap);font-weight:600;letter-spacing:.04em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);height:44px;padding-inline:var(--s-5);border:1px solid transparent;border-radius:var(--r-2);font-size:var(--t-body);font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;transform:none}.btn--primary{background:var(--accent-strong);color:var(--text-on-accent);border-color:transparent}.btn--primary:hover:not(:disabled){background:var(--accent-hover)}.btn--primary:active:not(:disabled){background:var(--accent-deep)}.btn--primary:disabled{background:var(--surface-2);color:var(--text-faint)}.btn--ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}.btn--ghost:hover{border-color:var(--accent);color:var(--accent)}.btn--plain{background:transparent;color:var(--text-muted);padding-inline:var(--s-3);height:36px}.btn--plain:hover{color:var(--accent)}.btn--lg{height:52px;padding-inline:var(--s-6);font-size:var(--t-lead)}.btn--block{width:100%}.btn--sm{height:32px;padding-inline:var(--s-3);font-size:var(--t-cap);border-radius:var(--r-1)}.field{display:grid;gap:var(--s-2)}.field>label{font-size:var(--t-sm);color:var(--text-muted);font-weight:500}.input{width:100%;height:48px;padding-inline:var(--s-4);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-2);color:var(--text);transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.input::placeholder{color:var(--text-faint)}.input:hover:not(:disabled){border-color:var(--line-strong)}.input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.input--invalid{border-color:var(--danger)}.input--invalid:focus{box-shadow:0 0 0 3px var(--danger-soft)}.input:disabled{color:var(--text-faint);cursor:not-allowed}.input-group{display:grid;grid-template-columns:1fr auto;align-items:stretch;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-2);transition:border-color var(--dur-fast) var(--ease)}.input-group:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input-group>.input{border:none;background:transparent;box-shadow:none}.input-group>.input:focus{box-shadow:none}.input-group__action{display:inline-flex;align-items:center;padding-inline:var(--s-4);border-left:1px solid var(--line);margin:8px 0;background:none;border-block:none;border-right:none;color:var(--accent);font-size:var(--t-sm);font-weight:600;cursor:pointer;white-space:nowrap;transition:color var(--dur-fast) var(--ease)}.input-group__action:hover:not(:disabled){color:var(--accent-bright)}.input-group__action:disabled{color:var(--text-faint);cursor:not-allowed}.form-error{display:flex;align-items:flex-start;gap:var(--s-2);color:var(--danger);font-size:var(--t-sm);line-height:1.6}html.reveal-ready [data-reveal]{opacity:0;transform:translateY(14px)}html.reveal-ready [data-reveal].is-in{opacity:1;transform:none;transition:opacity var(--dur-slow) var(--ease),transform var(--dur-slow) var(--ease)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-3);transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease),transform var(--dur) var(--ease)}.skeleton{background:linear-gradient(90deg,var(--surface) 0%,var(--surface-2) 50%,var(--surface) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s linear infinite;border-radius:var(--r-2)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.seo-nav{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:24px;border-bottom:1px solid var(--line)}.seo-nav>a:first-child{font-size:22px;font-weight:750}.seo-hero{padding-block:72px 40px}.seo-hero h1{font-size:clamp(36px,7vw,64px)}.seo-hero h2{margin-block:24px;font-size:clamp(20px,3vw,28px);line-height:1.5}.seo-hero p{margin-top:16px;max-width:800px;color:var(--text-muted)}.seo-section{padding-block:64px}.seo-section h2,.seo-article h2{font-size:clamp(22px,3vw,28px);line-height:1.5}.seo-lead{margin-block:20px 28px;color:var(--text-muted);line-height:1.9}.seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.seo-card{padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.seo-card h3{font-size:20px}.seo-card p{margin-block:16px;color:var(--text-muted)}.seo-link,.seo-related a,.seo-article nav a{color:var(--accent)}.seo-section a:hover,.seo-article a:hover,.seo-footer a:hover{text-decoration:underline}.seo-faq{margin-top:48px}.seo-faq details{padding-block:20px;border-bottom:1px solid var(--line)}.seo-faq summary{cursor:pointer;font-weight:600}.seo-faq details p{margin-top:16px;color:var(--text-muted)}.seo-article{max-width:960px;padding-block:32px 64px}.seo-article h1{margin-top:40px;font-size:clamp(32px,6vw,56px)}.seo-subtitle{margin-top:20px;font-size:clamp(20px,3vw,28px)}.seo-article section{margin-top:40px}.seo-article section p{margin-top:16px}.seo-note{padding:24px;border:1px solid var(--line);background:var(--surface);border-radius:16px}.seo-related{display:flex;flex-wrap:wrap;gap:16px 28px;padding:0;list-style:none}.seo-footer{padding-block:32px;border-top:1px solid var(--line);color:var(--text-muted)}.seo-footer p+p{margin-top:12px}@media(max-width:900px){.seo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.seo-grid{grid-template-columns:1fr}.seo-nav{gap:16px}.seo-nav>a:first-child{font-size:18px}.seo-section{padding-block:40px}}
