:root{--color-background:#f6f7f9;--color-surface:#fff;--color-surface-subtle:#f1f3f6;--color-text-primary:#171a1f;--color-text-secondary:#5b6472;--color-text-tertiary:#657080;--color-border:#e4e7ec;--color-border-strong:#c8cdd6;--color-primary:#04845c;--color-primary-hover:#047857;--color-primary-soft:#d1fae5;--color-primary-contrast:#fff;--color-auth-primary:#d92c50;--color-auth-primary-hover:#c02446;--color-auth-primary-soft:#fde8ed;--color-auth-primary-deep:#b42343;--color-auth-primary-contrast:#fff;--color-auth-text:#17171b;--color-auth-muted:#77777f;--color-auth-placeholder:#85858f;--color-auth-surface:#f5f5f7;--color-auth-line:#ececf0;--color-auth-overlay:#17171b42;--color-auth-keypad:#f3f3f6;--color-auth-keypad-line:#ededf1;--color-auth-handle:#d5d5dd;--color-auth-slot-line:#dedee5;--color-auth-slot-line-filled:#d2d2da;--color-auth-checkbox-line:#9999a3;--color-auth-field-check:#62626c;--color-auth-footer:#a4a4ac;--color-auth-page-backdrop:#eeeef1;--radius-auth-control:12px;--radius-auth-sheet:24px;--height-auth-control:50px;--shadow-auth-focus:0 0 0 3px #d92c501f;--shadow-auth-menu:0 8px 30px #17171b14,0 2px 6px #17171b05;--shadow-auth-sheet:0 -12px 48px #17171b17;--shadow-auth-card:0 10px 50px #17171b0d;--color-success:#15803d;--color-success-soft:#e8f6ee;--color-warning:#b45309;--color-warning-soft:#fdf4e3;--color-danger:#d92d20;--color-danger-soft:#fdeceb;--color-danger-hover:#b42318;--color-info:#2563eb;--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;--font-size-display:2rem;--font-size-title:1.5rem;--font-size-heading:1.125rem;--font-size-body:1rem;--font-size-body-small:.875rem;--font-size-caption:.75rem;--line-height-display:1.25;--line-height-title:1.3;--line-height-heading:1.4;--line-height-body:1.55;--line-height-body-small:1.45;--line-height-caption:1.4;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--space-40:40px;--radius-small:6px;--radius-medium:10px;--radius-large:16px;--radius-full:999px;--shadow-1:0 1px 2px #1018280a,0 1px 3px #1018280f;--shadow-2:0 4px 10px #1018280f,0 2px 4px #1018280a;--duration-fast:.15s;--duration-base:.2s;--ease-standard:cubic-bezier(.2,0,0,1);--touch-target:44px;--control-height:48px;--control-height-small:44px;--color-bg:var(--color-background);--color-text:var(--color-text-primary);--color-text-muted:var(--color-text-tertiary);--color-primary-light:var(--color-primary-soft);--color-error:var(--color-danger);--space-xs:var(--space-4);--space-sm:var(--space-8);--space-md:var(--space-16);--space-lg:var(--space-24);--space-xl:var(--space-32);--font-size-sm:var(--font-size-body-small);--font-size-base:var(--font-size-body);--font-size-lg:var(--font-size-heading);--font-size-xl:var(--font-size-title);--font-size-2xl:var(--font-size-display);--radius-sm:var(--radius-small);--radius-md:var(--radius-medium);--radius-lg:var(--radius-large)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}body{font-variant-numeric:tabular-nums;min-height:100dvh}::selection{background:var(--color-primary-soft)}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover)}button{cursor:pointer;font-family:inherit}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-page{background:var(--color-auth-page-backdrop);min-height:100dvh;color:var(--color-auth-text);font-size:13px;line-height:1.5}.auth-viewport{width:100%;max-width:390px;height:min(884px,100dvh - 44px);min-height:620px;box-shadow:var(--shadow-auth-card);background:#fff;border-radius:18px;flex-direction:column;margin:22px auto;display:flex;overflow:hidden}.auth-scroll{scrollbar-gutter:stable both-edges;background:#fff;flex:1;min-height:0;overflow-y:auto}.auth-top{justify-content:flex-end;align-items:center;padding:14px 20px 0;display:flex}.auth-body{padding:18px 24px 28px}.auth-brand{isolation:isolate;background-image:radial-gradient(circle closest-side,#d92c5029 0,#d92c501f 46%,#d92c500f 64%,#d92c5000 82%);background-position:50%;background-repeat:no-repeat;background-size:146% 146%;width:104px;height:104px;margin:0 auto 14px;overflow:visible}.auth-brand,.auth-brand__icon{display:block;position:relative}.auth-brand__icon{z-index:1;-o-object-fit:contain;object-fit:contain;width:100%;height:100%;animation:2.8s ease-in-out infinite auth-logo-breathe}.auth-brand:after,.auth-brand:before{content:"";z-index:0;pointer-events:none;border:2px solid #d92c50;border-radius:50%;animation:2.8s ease-out infinite auth-brand-ripple,2.8s linear infinite auth-brand-ripple-fade;position:absolute;inset:4px}.auth-brand:after{animation-delay:-1.4s}@keyframes auth-brand-ripple{0%{transform:scale(.84)}78%,to{transform:scale(1.27)}}@keyframes auth-brand-ripple-fade{0%{opacity:.5}20%{opacity:.44}78%,to{opacity:0}}@keyframes auth-logo-breathe{0%,to{transform:scale(1.1)}50%{transform:scale(1.15)}}.auth-brand-name{color:var(--color-auth-text);font-size:15px;font-weight:var(--font-weight-bold);letter-spacing:2.4px;text-align:center;margin:0 0 24px;line-height:20px}.auth-brand-name small{color:var(--color-auth-muted);font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:3.4px;line-height:16px;display:block}.auth-form-panel{animation:.18s ease-out auth-panel-enter}@keyframes auth-panel-enter{0%{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.auth-form-panel .page-title{color:var(--color-auth-text);font-size:28px;font-weight:var(--font-weight-bold);letter-spacing:-.8px;text-align:center;line-height:1.25}.auth-intro{color:var(--color-auth-muted);text-align:center;margin:8px 0 24px;font-size:13px;line-height:1.7}.auth-field{margin-bottom:16px}.auth-field>label{color:var(--color-auth-text);font-size:12px;font-weight:var(--font-weight-medium);margin-bottom:8px;line-height:20px;display:block}.auth-input-wrap{position:relative}.auth-input-wrap input{width:100%;min-width:0;min-height:var(--height-auth-control);border:1px solid var(--color-auth-line);border-radius:var(--radius-auth-control);background:var(--color-auth-surface);color:var(--color-auth-text);padding:13px 14px;font-family:inherit;font-size:16px;line-height:22px;display:block}.auth-input-wrap input::placeholder{color:var(--color-auth-placeholder);font-size:14px}.auth-input-wrap input:focus-visible{border-color:var(--color-auth-primary);box-shadow:var(--shadow-auth-focus);outline:none}.auth-input-wrap input:disabled{color:var(--color-auth-placeholder)}.auth-input-wrap input.auth-input--with-eye,.auth-input-wrap input[type=password]{padding-right:52px}.auth-eye{width:44px;height:44px;min-height:44px;color:var(--color-auth-muted);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:3px;right:4px}.auth-eye svg{width:20px;height:20px}.auth-pin-trigger{width:100%;min-height:var(--height-auth-control);border:1px solid var(--color-auth-line);border-radius:var(--radius-auth-control);background:var(--color-auth-surface);color:var(--color-auth-placeholder);text-align:left;justify-content:space-between;align-items:center;padding:13px 14px;font-family:inherit;font-size:14px;line-height:20px;display:flex}.auth-pin-trigger__value--set{color:var(--color-auth-text);letter-spacing:4px;font-size:16px}.auth-pin-trigger__check{width:20px;height:20px;color:var(--color-auth-field-check)}.auth-pin-trigger__check svg{width:20px;height:20px}.auth-error{min-height:0;color:var(--color-auth-primary);margin:6px 0 0;font-size:11px;line-height:1.6}.auth-error:empty{display:none}.auth-error-callout{color:var(--color-auth-primary-deep);background:#d92c5012;border:1px solid #d92c5029;border-radius:12px;margin:14px 0 0;padding:10px 14px;font-size:13px;line-height:1.55}.auth-agreement{color:var(--color-auth-field-check);align-items:flex-start;gap:2px;margin:14px 0 0;font-size:14px;line-height:1.65;display:flex;position:relative}.auth-agree-hit{cursor:pointer;border-radius:10px;flex:0 0 44px;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin-left:-9px;display:flex}.auth-agreement input{border:1px solid var(--color-auth-checkbox-line);cursor:pointer;appearance:none;background:#fff;border-radius:6px;width:22px;height:22px;margin:0}.auth-agreement input:checked{border-color:var(--color-auth-primary);background:var(--color-auth-primary)}.auth-agreement input:checked:after{content:"✓";color:#fff;text-align:center;font-size:16px;line-height:20px;display:block}.auth-agreement-copy{flex:1;min-width:0;padding:10px 0}.auth-agreement-copy a,.auth-agreement-copy button{min-height:0;color:var(--color-auth-primary);font-family:inherit;font-size:14px;font-weight:var(--font-weight-medium);text-underline-offset:3px;background:0 0;border:0;padding:0;line-height:1.65;text-decoration:underline;text-decoration-thickness:1px;display:inline}.auth-agreement-copy a:hover{color:var(--color-auth-primary-hover)}.auth-forgot{text-align:right;margin-top:-7px}.auth-forgot a,.auth-forgot button{min-height:44px;color:var(--color-auth-primary);background:0 0;border:0;align-items:center;padding:0;font-family:inherit;font-size:12px;display:inline-flex}.auth-submit{width:100%;min-height:var(--height-auth-control);border-radius:var(--radius-auth-control);background:var(--color-auth-primary);color:#fff;font-family:inherit;font-size:15px;font-weight:var(--font-weight-semibold);border:0;margin-top:22px;padding:13px 16px;line-height:22px;display:block}.auth-submit:hover:not(:disabled){background:var(--color-auth-primary-hover)}.auth-submit:disabled{cursor:not-allowed;opacity:.7}.auth-switch{color:var(--color-auth-muted);text-align:center;margin-top:14px;font-size:14px}.auth-switch a,.auth-switch button{min-height:44px;color:var(--color-auth-primary);background:0 0;border:0;align-items:center;padding:0 8px;font-family:inherit;font-size:14px;display:inline-flex}.auth-footer{justify-content:center;align-items:center;gap:13px;margin-top:25px;display:flex}.auth-footer small{color:var(--color-auth-footer);letter-spacing:2px;white-space:nowrap;font-size:8px}.auth-footer>span{background:var(--color-auth-line);width:28px;height:1px}.auth-language-wrap{flex:none;position:relative}.auth-language{color:#55555e;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;min-height:44px;padding:0 8px;font-family:inherit;font-size:12px;display:flex}.auth-language>svg:first-child{width:20px;height:20px}.auth-language .language-caret{color:#909098;width:16px;height:16px;transition:transform .15s}.auth-language[aria-expanded=true] .language-caret{transform:rotate(180deg)}.auth-language__code{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.auth-language-menu{z-index:20;min-width:164px;box-shadow:var(--shadow-auth-menu);background:#fff;border:1px solid #e9e9ed;border-radius:13px;padding:5px;position:absolute;top:calc(100% + 6px);right:0}.auth-language-menu[hidden]{display:none}.auth-language-menu button{width:100%;min-height:44px;color:var(--color-auth-text);text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:24px;padding:11px 12px;font-family:inherit;font-size:13px;display:flex}.auth-language-menu button:hover,.auth-language-menu button[aria-checked=true]{background:var(--color-auth-surface)}.auth-language-menu button svg{width:18px;height:18px;color:var(--color-auth-primary)}.auth-language-error{z-index:21;color:var(--color-danger);white-space:nowrap;margin-top:40px;font-size:11px;position:absolute;top:calc(100% + 6px);right:0}.pin-overlay{z-index:60;background:var(--color-auth-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.pin-sheet{border-radius:var(--radius-auth-sheet) var(--radius-auth-sheet) 0 0;width:100%;max-width:390px;max-height:92dvh;box-shadow:var(--shadow-auth-sheet);background:#fff;flex-direction:column;display:flex;position:relative;overflow:hidden}.pin-handle{background:var(--color-auth-handle);border-radius:4px;flex:none;width:34px;height:4px;margin:9px auto 0;display:block}.pin-top{border-bottom:1px solid var(--color-auth-line);justify-content:space-between;align-items:center;gap:8px;min-height:60px;padding:6px 14px 10px;display:flex}.pin-top h2{color:var(--color-auth-text);font-size:17px;font-weight:var(--font-weight-semibold);text-align:center;flex:1;line-height:24px}.pin-top button{color:#5f5f68;background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;min-height:44px;padding:0;display:grid;position:relative}.pin-top button:last-child:before{content:"";background:var(--color-auth-surface);border-radius:50%;position:absolute;inset:6px}.pin-top button svg{z-index:1;width:18px;height:18px;position:relative}.pin-top button:first-child{color:var(--color-auth-primary)}.pin-top button.is-hidden{visibility:hidden}.pin-step-copy{color:#5f5f68;text-align:center;margin:18px 20px 0;font-size:13px;line-height:20px}.auth-pin-slots{justify-content:center;gap:8px;padding:24px 20px 0;display:flex}.auth-pin-slots span{border:1px solid var(--color-auth-slot-line);background:#fff;border-radius:10px;place-items:center;width:44px;height:50px;font-size:14px;display:grid}.auth-pin-slots span.filled{border-color:var(--color-auth-slot-line-filled)}.auth-pin-slots span.current{border-color:var(--color-auth-primary);box-shadow:0 0 0 1px var(--color-auth-primary)}.pin-feedback{min-height:40px;color:var(--color-auth-primary);text-align:center;margin:0;padding:8px 20px 12px;font-size:12px}.pin-keypad{padding:12px 12px max(20px,env(safe-area-inset-bottom));border-top:1px solid var(--color-auth-keypad-line);background:var(--color-auth-keypad);grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.pin-keypad button{height:52px;min-height:52px;color:var(--color-auth-text);font-family:inherit;font-size:26px;font-weight:var(--font-weight-regular);background:#fff;border:0;border-radius:10px;place-items:center;padding:0;display:grid}.pin-keypad button:active{background:#e0e0e6}.pin-keypad button.delete{background:0 0}.pin-keypad button.delete svg{width:24px;height:24px}.pin-submit-proxy{z-index:2;min-height:0;left:8px}.pin-input-proxy,.pin-submit-proxy{opacity:0;background:0 0;border:0;width:1px;height:1px;padding:0;position:absolute;top:40px}.pin-input-proxy{pointer-events:none;left:0}@media (width>=521px) and (height<=700px){.auth-body{padding-top:14px}.auth-brand{width:88px;height:88px;margin-bottom:12px}.auth-brand-name{margin-bottom:20px;font-size:14px}.auth-form-panel .page-title{font-size:26px}.auth-intro{margin-bottom:20px}}@media (width<=520px){.auth-page{background:#fff}.auth-viewport{max-width:none;height:auto;min-height:100dvh;box-shadow:none;border-radius:0;margin:0;overflow:visible}.auth-scroll{scrollbar-gutter:auto;flex:1 0 auto;overflow-y:visible}.auth-top{padding:8px 16px 0}.auth-body{padding:10px 24px 20px}.auth-brand{width:88px;height:88px;margin-bottom:8px}.auth-brand-name{margin-bottom:15px}.auth-form-panel .page-title{font-size:26px}.auth-intro{margin:6px 0 16px}.auth-field{margin-bottom:12px}.auth-field>label{margin-bottom:6px}.auth-agreement{margin-top:8px}.auth-submit{margin-top:14px}.auth-switch{margin-top:10px}.auth-footer{margin-top:15px}}@media (width<=350px){.auth-body{padding-left:20px;padding-right:20px}.auth-pin-slots,.auth-top{padding-left:16px;padding-right:16px}.auth-pin-slots{gap:6px}.auth-pin-slots span{width:40px}}@media (prefers-reduced-motion:reduce){.auth-brand:after,.auth-brand:before,.auth-brand__icon,.auth-form-panel{animation:none!important}.auth-brand:before{opacity:.2;transform:scale(1.15)}.auth-brand:after{display:none}}.error-page[data-v-1aad96d9]{min-height:100dvh;padding:var(--space-xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.error-code[data-v-1aad96d9]{color:var(--color-text-muted);font-size:4rem;font-weight:700}.error-message[data-v-1aad96d9]{margin-top:var(--space-md);color:var(--color-text-secondary)}.error-action[data-v-1aad96d9]{margin-top:var(--space-xl);background:var(--color-primary);color:#fff;padding:var(--space-sm) var(--space-xl);border-radius:var(--radius-md);font-size:var(--font-size-base);border:none}.error-action[data-v-1aad96d9]:hover{background:var(--color-primary-hover)}
