:root{color-scheme:light;--color-brand-50: oklch(.97 .02 238);--color-brand-100: oklch(.93 .045 238);--color-brand-200: oklch(.87 .085 238);--color-brand-400: oklch(.73 .16 242);--color-brand-500: oklch(.65 .2 248);--color-brand-600: oklch(.56 .22 253);--color-brand-700: oklch(.47 .18 256);--color-brand-900: oklch(.29 .095 258);--color-cyan: oklch(.79 .14 220);--color-cyan-soft: oklch(.93 .055 220);--color-ink-950: oklch(.2 .035 257);--color-ink-800: oklch(.3 .035 257);--color-ink-700: oklch(.38 .032 257);--color-ink-600: oklch(.44 .028 257);--color-ink-inverse: oklch(.99 .006 240);--color-surface-0: oklch(.995 .004 240);--color-surface-1: oklch(.975 .012 240);--color-surface-2: oklch(.945 .022 240);--color-surface-3: oklch(.9 .035 240);--color-shell: oklch(.25 .075 258);--color-shell-soft: oklch(.31 .09 255);--color-border: oklch(.84 .045 240);--color-border-strong: oklch(.72 .085 244);--color-success: oklch(.52 .15 158);--color-success-soft: oklch(.94 .04 158);--color-warning: oklch(.57 .14 76);--color-warning-soft: oklch(.95 .045 82);--color-danger: oklch(.54 .2 26);--color-danger-soft: oklch(.95 .035 25);--color-info: oklch(.52 .13 236);--color-info-soft: oklch(.95 .035 236);--font-ui: Inter, "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-accent: Georgia, "Times New Roman", "STKaiti", "KaiTi", serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--shadow-control: 0 2px 6px oklch(.24 .07 255 / .12);--shadow-float: 0 8px 24px oklch(.18 .06 255 / .2);--duration-fast: .15s;--duration-base: .22s;--ease-out: cubic-bezier(.16, 1, .3, 1);--z-scene: -2;--z-sticky: 20;--z-bottom-nav: 30;--z-overlay: 50;--z-dialog: 60;--z-toast: 70;--z-tooltip: 80}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--color-surface-2);color:var(--color-ink-950);font-family:var(--font-ui);font-size:16px;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{min-width:320px;min-height:100vh;margin:0;background:transparent}body,button,input,select,textarea{font:inherit}button,input,select,textarea{color:inherit}button,select{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}img,svg{display:block}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-block-start:0}h1,h2,h3{color:var(--color-ink-950);line-height:1.22;text-wrap:balance}p{text-wrap:pretty}code{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}#app{display:flow-root;min-height:100vh}:focus-visible{outline:3px solid color-mix(in oklch,var(--color-cyan) 72%,white);outline-offset:3px}::selection{background:var(--color-brand-200);color:var(--color-ink-950)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--space-3);left:var(--space-3);z-index:var(--z-toast);transform:translateY(-180%);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--color-shell);color:var(--color-ink-inverse);transition:transform var(--duration-fast) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.page-stack{display:flex;flex-direction:column;gap:var(--space-5)}.page-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-5)}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:1 / -1}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.section-heading h2,.section-heading h3{margin:0}.section-heading h2{font-size:1.12rem}.section-heading h3{font-size:1rem}.section-heading p{max-width:68ch;margin:var(--space-1) 0 0;color:var(--color-ink-600);font-size:.875rem}.action-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.muted{color:var(--color-ink-600)}@media(max-width:880px){.page-grid{grid-template-columns:1fr}.span-4,.span-5,.span-6,.span-7,.span-8,.span-12{grid-column:1}}@media(max-width:640px){.field-grid{grid-template-columns:1fr}.section-heading{align-items:stretch;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}.schale-frame{position:relative}.schale-frame:before,.schale-frame:after{content:"";position:absolute;z-index:1;pointer-events:none}.schale-frame:before{top:-1px;left:18px;width:42px;height:2px;background:var(--color-cyan)}.schale-frame:after{right:18px;bottom:-1px;width:20px;height:20px;background:linear-gradient(var(--color-brand-400),var(--color-brand-400)) right bottom / 2px 20px no-repeat,linear-gradient(var(--color-brand-400),var(--color-brand-400)) right bottom / 20px 2px no-repeat}.halo-orbit{position:relative;display:inline-grid;width:1.25rem;height:1.25rem;flex:0 0 auto;place-items:center;border:2px solid color-mix(in oklch,currentColor 24%,transparent);border-top-color:currentColor;border-radius:50%;animation:halo-rotate .9s linear infinite}.halo-orbit:after{content:"";width:.32rem;height:.32rem;border-radius:50%;background:currentColor;opacity:.72}.target-corner{position:relative}.target-corner:after{content:"";position:absolute;top:0;right:0;width:14px;height:14px;background:linear-gradient(var(--color-cyan),var(--color-cyan)) right top / 14px 2px no-repeat,linear-gradient(var(--color-cyan),var(--color-cyan)) right top / 2px 14px no-repeat;pointer-events:none}.schale-rule{display:flex;align-items:center;gap:var(--space-3);color:var(--color-brand-700);font-size:.78rem;font-weight:700}.schale-rule:after{content:"";width:min(88px,18vw);height:1px;background:linear-gradient(90deg,var(--color-brand-400),transparent)}.mission-sequence{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0;margin:0;list-style:none}.mission-sequence li{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-ink-600);font-size:.8rem;font-weight:650}.mission-sequence li:not(:last-child):after{content:"";width:18px;height:1px;background:var(--color-border-strong)}.mission-sequence .is-current{color:var(--color-brand-700)}@keyframes halo-rotate{to{transform:rotate(1turn)}}.scene-backdrop{position:fixed;inset:0;z-index:var(--z-scene);overflow:hidden;background:var(--scene-fallback, var(--color-shell))}.scene-backdrop__image{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);object-fit:cover;object-position:var(--scene-position, center);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.scene-backdrop__image.is-active{opacity:1}.scene-image-enter-active,.scene-image-leave-active{transition:opacity var(--duration-base) var(--ease-out)}.scene-image-enter-from,.scene-image-leave-to{opacity:0}@media(max-width:767px){.scene-backdrop__image{object-position:var(--scene-position-mobile, center)}}.ui-button[data-v-a9e6223a]{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--space-2);padding:.65rem 1rem;border:0;border-radius:var(--radius-sm);font-weight:720;line-height:1.1;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.ui-button[data-v-a9e6223a]:not(:disabled):active{transform:translateY(1px)}.ui-button.is-primary[data-v-a9e6223a]{background:var(--color-brand-600);box-shadow:var(--shadow-control);color:var(--color-ink-inverse)}.ui-button.is-primary[data-v-a9e6223a]:hover:not(:disabled){background:var(--color-brand-700)}.ui-button.is-secondary[data-v-a9e6223a]{border:1px solid var(--color-border-strong);background:var(--color-surface-0);color:var(--color-brand-700)}.ui-button.is-secondary[data-v-a9e6223a]:hover:not(:disabled){background:var(--color-brand-50);border-color:var(--color-brand-400)}.ui-button.is-ghost[data-v-a9e6223a]{background:transparent;color:var(--color-ink-700)}.ui-button.is-ghost[data-v-a9e6223a]:hover:not(:disabled){background:var(--color-brand-50);color:var(--color-brand-700)}.ui-button.is-danger[data-v-a9e6223a]{background:var(--color-danger);color:#fff}.ui-button.is-danger[data-v-a9e6223a]:hover:not(:disabled){background:color-mix(in oklch,var(--color-danger) 88%,black)}.ui-button.is-sm[data-v-a9e6223a]{min-height:36px;padding:.5rem .75rem;font-size:.82rem}.ui-button.is-block[data-v-a9e6223a]{width:100%}.ui-button[data-v-a9e6223a]:disabled{opacity:.52}.ui-button__icon[data-v-a9e6223a],.ui-button__loader[data-v-a9e6223a]{width:1.05rem;height:1.05rem}.ui-button__icon[data-v-a9e6223a] svg{width:100%;height:100%;stroke-width:2}.ui-button__loader[data-v-a9e6223a]{animation:ui-button-spin-a9e6223a .9s linear infinite}@keyframes ui-button-spin-a9e6223a{to{transform:rotate(1turn)}}.ui-field[data-v-ed0cabd7]{display:flex;min-width:0;flex-direction:column;gap:.42rem}.ui-field__label[data-v-ed0cabd7]{color:var(--color-ink-800);font-size:.84rem;font-weight:720}.ui-field__required[data-v-ed0cabd7]{margin-left:.25rem;color:var(--color-danger)}.ui-field__hint[data-v-ed0cabd7],.ui-field__error[data-v-ed0cabd7]{margin:0;font-size:.78rem;line-height:1.45}.ui-field__hint[data-v-ed0cabd7]{color:var(--color-ink-600)}.ui-field__error[data-v-ed0cabd7]{color:var(--color-danger);font-weight:650}.ui-input[data-v-d170c304]{width:100%;min-height:44px;padding:.65rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-0);color:var(--color-ink-950);transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.ui-input[data-v-d170c304]::placeholder{color:var(--color-ink-600);opacity:1}.ui-input[data-v-d170c304]:hover:not(:disabled){border-color:var(--color-border-strong)}.ui-input[data-v-d170c304]:focus{border-color:var(--color-brand-500);background:#fff}.ui-input.is-invalid[data-v-d170c304]{border-color:var(--color-danger);background:var(--color-danger-soft)}.ui-input[data-v-d170c304]:disabled{background:var(--color-surface-2);color:var(--color-ink-600)}.credential__overlay{position:fixed;inset:0;z-index:var(--z-overlay);background:#0109199e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.credential__content{position:fixed;top:50%;left:50%;z-index:var(--z-dialog);width:min(calc(100vw - 2rem),460px);padding:var(--space-6);transform:translate(-50%,-50%);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-0);box-shadow:var(--shadow-float)}.credential__mark{display:grid;width:48px;height:48px;margin-bottom:var(--space-4);place-items:center;border-radius:50%;background:var(--color-brand-50);color:var(--color-brand-700)}.credential__mark svg{width:1.25rem;height:1.25rem}.credential__title{color:var(--color-ink-950);font-size:1.08rem;font-weight:820}.credential__description{margin-top:var(--space-2);color:var(--color-ink-600);font-size:.85rem}.credential__form{display:flex;flex-direction:column;gap:var(--space-5);margin-top:var(--space-5)}.credential__actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.confirm__overlay{position:fixed;inset:0;z-index:var(--z-overlay);background:#01091999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm__content{position:fixed;top:50%;left:50%;z-index:var(--z-dialog);width:min(calc(100vw - 2rem),460px);padding:var(--space-6);transform:translate(-50%,-50%);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-0);box-shadow:var(--shadow-float)}.confirm__mark{display:grid;width:48px;height:48px;margin-bottom:var(--space-4);place-items:center;border-radius:50%;background:var(--color-warning-soft);color:var(--color-warning)}.confirm__mark.is-destructive{background:var(--color-danger-soft);color:var(--color-danger)}.confirm__mark svg{width:1.25rem;height:1.25rem}.confirm__title{color:var(--color-ink-950);font-size:1.12rem;font-weight:820}.confirm__description{margin-top:var(--space-2);color:var(--color-ink-600);font-size:.88rem;line-height:1.6}.confirm__actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.confirm__button{min-height:42px;padding:.6rem .9rem;border:0;border-radius:var(--radius-sm);font-weight:750}.confirm__button.is-cancel{border:1px solid var(--color-border);background:var(--color-surface-0);color:var(--color-ink-700)}.confirm__button.is-primary{background:var(--color-brand-600);color:#fff}.confirm__button.is-danger{background:var(--color-danger);color:#fff}.ui-toast__viewport{position:fixed;top:var(--space-4);right:var(--space-4);z-index:var(--z-toast);display:flex;width:min(390px,calc(100vw - 2rem));max-height:calc(100vh - 2rem);flex-direction:column;gap:var(--space-3);padding:0;margin:0;list-style:none;outline:none}.ui-toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-3);align-items:start;padding:var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-0);box-shadow:var(--shadow-float);color:var(--color-info)}.ui-toast.is-success{color:var(--color-success)}.ui-toast.is-warning{color:var(--color-warning)}.ui-toast.is-danger{color:var(--color-danger)}.ui-toast[data-state=open]{animation:toast-in var(--duration-base) var(--ease-out)}.ui-toast[data-state=closed]{animation:toast-out var(--duration-fast) ease-in forwards}.ui-toast__icon,.ui-toast__icon svg{width:1.15rem;height:1.15rem}.ui-toast__title{color:var(--color-ink-950);font-size:.88rem;font-weight:780}.ui-toast__description{margin-top:var(--space-1);color:var(--color-ink-600);font-size:.8rem;line-height:1.45}.ui-toast__close{display:grid;width:30px;height:30px;place-items:center;border:0;border-radius:6px;background:transparent;color:var(--color-ink-600)}.ui-toast__close:hover{background:var(--color-surface-2)}.ui-toast__close svg{width:.95rem;height:.95rem}@keyframes toast-in{0%{opacity:0;transform:translate(12px)}}@keyframes toast-out{to{opacity:0;transform:translate(12px)}}
