html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}.loading-overlay[data-v-4f974260]{top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loading-overlay-global[data-v-4f974260]{position:fixed;z-index:3000;background:var(--page-background)}.loading-overlay-local[data-v-4f974260]{position:absolute;z-index:10;background:var(--surface)}.loading-dots[data-v-4f974260]{position:relative;width:94px;height:38px}.loading-dot[data-v-4f974260]{position:absolute;top:1px;width:36px;height:36px;border-radius:50%;will-change:transform}.loading-dot-primary[data-v-4f974260]{left:8px;z-index:2;background:#1f6fe5ad;animation:loading-dot-forward-4f974260 1.15s ease-in-out infinite}.loading-dot-secondary[data-v-4f974260]{right:8px;background:#1f6fe55c;animation:loading-dot-backward-4f974260 1.15s ease-in-out infinite}.loading-label[data-v-4f974260]{color:var(--text-secondary);font-size:14px}.screen-reader-only[data-v-4f974260]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes loading-dot-forward-4f974260{0%,to{transform:translate(0)}50%{transform:translate(42px)}}@keyframes loading-dot-backward-4f974260{0%,to{transform:translate(0)}50%{transform:translate(-42px)}}@media(prefers-reduced-motion:reduce){.loading-dot[data-v-4f974260]{animation:none}}.toast-host[data-v-7d41faec]{position:fixed;top:20px;left:50%;z-index:2500;width:min(480px,calc(100vw - 32px));display:flex;flex-direction:column;gap:8px;transform:translate(-50%);pointer-events:none}.app-toast[data-v-7d41faec]{min-height:44px;display:grid;grid-template-columns:20px 1fr 28px;align-items:center;gap:10px;padding:6px 8px 6px 14px;border-radius:9px;color:#fff;box-shadow:0 10px 32px #1c2c3a33;pointer-events:auto}.app-toast-info[data-v-7d41faec]{background:var(--color-info)}.app-toast-alert[data-v-7d41faec]{border:1px solid #f5cd47;background:#fff7d6;color:var(--text-primary)}.app-toast-alert .toast-icon[data-v-7d41faec]{color:var(--color-error)}.app-toast-alert .toast-close[data-v-7d41faec]{color:var(--text-secondary)}.app-toast-alert .toast-close[data-v-7d41faec]:hover,.app-toast-alert .toast-close[data-v-7d41faec]:focus-visible{background:#091e4214;color:var(--text-primary)}.toast-icon[data-v-7d41faec]{font-size:18px}.toast-message[data-v-7d41faec]{font-size:13px;line-height:20px}.toast-close[data-v-7d41faec]{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:#ffffffd1;cursor:pointer}.toast-close[data-v-7d41faec]:hover,.toast-close[data-v-7d41faec]:focus-visible{background:#ffffff24;color:#fff}.toast-list-enter-active[data-v-7d41faec],.toast-list-leave-active[data-v-7d41faec]{transition:opacity .18s ease,transform .18s ease}.toast-list-enter-from[data-v-7d41faec],.toast-list-leave-to[data-v-7d41faec]{opacity:0;transform:translateY(-12px)}.locale-trigger[data-v-48f16f57]{width:205px;height:36px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--border);border-radius:8px;background:#ffffffe6;color:var(--text-secondary);font-size:13px;white-space:nowrap;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.locale-trigger[data-v-48f16f57]:hover{border-color:var(--color-primary);background:var(--surface);color:var(--color-primary)}.locale-globe[data-v-48f16f57]{font-size:16px}.locale-purpose[data-v-48f16f57]{color:var(--text-primary);font-weight:600}.locale-separator[data-v-48f16f57]{color:var(--text-muted)}.locale-current[data-v-48f16f57]{overflow:hidden;text-overflow:ellipsis}.locale-chevron[data-v-48f16f57]{margin-left:auto;color:var(--text-tertiary);font-size:10px}.locale-options[data-v-48f16f57]{min-width:205px}.check-slot[data-v-48f16f57]{width:16px;display:inline-flex;justify-content:center;margin-right:6px}.auth-page[data-v-a5c3d141]{position:relative;min-height:100vh;overflow:hidden;display:flex;flex-direction:column;background:radial-gradient(circle at 18% 18%,rgba(12,102,228,.11),transparent 34%),linear-gradient(135deg,#f8faff,#eef4ff 52%,#f7f9fc)}.auth-header[data-v-a5c3d141]{position:relative;z-index:2;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 48px}.auth-brand-wordmark[data-v-a5c3d141]{width:auto;height:34px;object-fit:contain;margin-top:5px}.auth-main[data-v-a5c3d141]{position:relative;z-index:1;flex:1;width:min(1400px,calc(100% - 96px));margin:0 auto;display:grid;grid-template-columns:minmax(320px,1fr) minmax(580px,620px);align-items:center;gap:clamp(56px,6vw,96px);padding:30px 0 48px}.auth-card-frame[data-v-a5c3d141]{width:100%;padding:24px 64px 28px;border:1px solid rgba(179,186,197,.72);border-radius:16px;background:#fffffff0;box-shadow:0 22px 70px #091e4221;overflow:hidden;transition:height .43s cubic-bezier(.22,1,.36,1),box-shadow .43s ease;will-change:height}.auth-card-frame-login[data-v-a5c3d141]{width:calc(100% - 40px);justify-self:center;height:480px}.auth-card-frame-reset[data-v-a5c3d141]{width:calc(100% - 40px);justify-self:center;height:620px}.auth-card-frame-register[data-v-a5c3d141]{width:calc(100% - 40px);justify-self:center;height:690px}.auth-introduction[data-v-a5c3d141]{max-width:520px;padding-left:44px;transform:translateY(-8px)}.intro-eyebrow[data-v-a5c3d141]{color:var(--color-primary);font-size:12px;font-weight:700;letter-spacing:.1em}.auth-introduction h1[data-v-a5c3d141]{max-width:480px;margin:18px 0 25px;color:var(--text-primary);font-size:clamp(36px,3.4vw,48px);line-height:1.22;letter-spacing:-.025em;opacity:0;animation:title-emerge-a5c3d141 .9s .26s cubic-bezier(.22,1,.36,1) forwards}.auth-introduction p[data-v-a5c3d141]{max-width:460px;color:var(--text-secondary);font-size:15px;line-height:1.8}.auth-footer[data-v-a5c3d141]{position:relative;z-index:2;padding:16px 32px;color:var(--text-tertiary);font-size:12px;text-align:center}.auth-visuals[data-v-a5c3d141]{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.heart-pump-visual[data-v-a5c3d141],.medical-data-background[data-v-a5c3d141]{position:absolute;opacity:0;will-change:transform,opacity}.heart-pump-visual[data-v-a5c3d141]{--visual-opacity: .15;width:320px;left:clamp(-49px,calc(-1.5vw + 5px),-13px);bottom:clamp(-29px,calc(-2vw + 13px),-5px);animation:visual-rise-a5c3d141 1.1s .18s cubic-bezier(.22,1,.36,1) forwards}.heart-pump-image[data-v-a5c3d141]{width:100%;height:auto;display:block}.heart-pump-base[data-v-a5c3d141]{filter:saturate(.65) contrast(.88) brightness(1.12)}.heart-pump-highlight[data-v-a5c3d141]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;filter:brightness(1.75) contrast(.92) saturate(.75) drop-shadow(0 0 5px rgba(178,216,255,.55));mix-blend-mode:screen;-webkit-mask-image:linear-gradient(112deg,transparent 42%,rgba(0,0,0,.18) 46%,#000 50%,rgba(0,0,0,.18) 54%,transparent 58%);mask-image:linear-gradient(112deg,transparent 42%,rgba(0,0,0,.18) 46%,#000 50%,rgba(0,0,0,.18) 54%,transparent 58%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:260% 100%;mask-size:260% 100%;animation:pump-highlight-sweep-a5c3d141 3.5s linear .8s infinite;will-change:mask-position,opacity}.medical-data-background[data-v-a5c3d141]{--visual-opacity: 1;width:1014px;left:clamp(120px,12vw,230px);top:-45px;animation:background-descend-a5c3d141 1s .48s cubic-bezier(.22,1,.36,1) forwards}@keyframes visual-rise-a5c3d141{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:var(--visual-opacity);transform:translateY(0) scale(1)}}@keyframes background-descend-a5c3d141{0%{opacity:0;transform:translateY(-28px) scale(.98)}to{opacity:var(--visual-opacity);transform:translateY(0) scale(1)}}@keyframes pump-highlight-sweep-a5c3d141{0%{opacity:0;-webkit-mask-position:120% 0;mask-position:120% 0}5%{opacity:.46}95%{opacity:.46}to{opacity:0;-webkit-mask-position:-20% 0;mask-position:-20% 0}}@keyframes title-emerge-a5c3d141{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1081px){.auth-card-frame[data-v-a5c3d141]{transform:translate(-40px)}}@media(max-width:1080px){.auth-main[data-v-a5c3d141]{grid-template-columns:1fr;width:min(620px,calc(100% - 40px))}.auth-introduction[data-v-a5c3d141]{display:none}.heart-pump-visual[data-v-a5c3d141]{left:-39px;bottom:-25px}.medical-data-background[data-v-a5c3d141]{left:auto;right:-250px;top:-27px}}@media(min-width:1081px)and (max-height:800px){.auth-header[data-v-a5c3d141]{height:56px;padding:0 40px}.auth-brand-wordmark[data-v-a5c3d141]{height:34px;margin-top:4px}.auth-main[data-v-a5c3d141]{width:min(1280px,calc(100% - 80px));grid-template-columns:minmax(300px,1fr) minmax(520px,580px);gap:clamp(40px,5vw,68px);padding:4px 0 10px}.auth-card-frame[data-v-a5c3d141]{padding:24px 64px 30px}.auth-introduction[data-v-a5c3d141]{max-width:450px;transform:translateY(-4px)}.auth-introduction h1[data-v-a5c3d141]{max-width:440px;margin:12px 0;font-size:clamp(32px,3.1vw,42px);line-height:1.18}.auth-introduction p[data-v-a5c3d141]{max-width:440px;font-size:14px;line-height:1.65}.auth-footer[data-v-a5c3d141]{padding:4px 24px 6px;line-height:18px}}@media(min-width:1081px)and (max-height:640px){.auth-page[data-v-a5c3d141]{overflow-y:auto}}@media(prefers-reduced-motion:reduce){.heart-pump-visual[data-v-a5c3d141],.medical-data-background[data-v-a5c3d141]{opacity:var(--visual-opacity);animation:none}.heart-pump-highlight[data-v-a5c3d141]{opacity:0;animation:none}.auth-introduction h1[data-v-a5c3d141]{opacity:1;animation:none}.auth-card-frame[data-v-a5c3d141]{transition:none}}@media(max-width:560px){.auth-header[data-v-a5c3d141]{height:60px;padding:0 18px}.auth-brand-wordmark[data-v-a5c3d141]{height:34px}.auth-card-frame[data-v-a5c3d141]{height:auto;min-height:0;padding:24px 64px 28px;transition:none}}.auth-content-enter-active{transition:opacity .19s ease .17s,transform .28s cubic-bezier(.22,1,.36,1) .15s}.auth-content-leave-active{transition:opacity .11s ease,transform .11s ease}.auth-content-enter-from{opacity:0;transform:translateY(4px)}.auth-content-leave-to{opacity:0;transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.auth-content-enter-active,.auth-content-leave-active{transition:none}}:root{--color-primary: #0c66e4;--color-primary-hover: #0055cc;--color-primary-active: #09326c;--color-primary-soft: #e9f2ff;--color-primary-glow: rgba(12, 102, 228, .22);--color-info: #0c66e4;--color-success: #22a06b;--color-warning: #d98b18;--color-error: #d84a4a;--page-background: #f4f5f7;--surface: #ffffff;--surface-elevated: #fafbfc;--text-primary: #172b4d;--text-secondary: #44546f;--icon-secondary: #818c97;--text-tertiary: #626f86;--text-muted: #8590a2;--border: #dcdfe4;--border-subtle: rgba(9, 30, 66, .12);--radius-md: 8px;--radius-lg: 12px;--shadow-card: 0 12px 38px rgba(9, 30, 66, .1);--font-sans: "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100vh;margin:0;background:var(--page-background);color:var(--text-primary);font-family:var(--font-sans);line-height:1.6}button,input,textarea,select{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--color-info);outline-offset:2px}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover)}.mono,.numeric{font-variant-numeric:tabular-nums}#app,#app-content{min-height:100vh}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
