*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.form-page{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;-webkit-tap-highlight-color:transparent}.form-page-inner{padding-top:max(12px,env(safe-area-inset-top,0px));padding-bottom:max(24px,env(safe-area-inset-bottom,0px))}.page-transition-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;background-color:var(--form-bg);will-change:transform}.form-card{border-radius:0;background:var(--form-card);border:1px solid var(--form-border);padding:20px 16px}.form-label{display:block;margin-left:0;margin-bottom:6px;font-size:13px;font-weight:400;color:#555}.form-label--required:after{content:"*";margin-left:4px;font-size:14px;font-weight:700;color:var(--form-error);vertical-align:middle}.form-field{width:100%;padding:10px 12px;font-size:16px;color:var(--form-text);border:1px solid #ddd;border-radius:0;background:#fff;outline:none}.form-field::-moz-placeholder{color:#999}.form-field::placeholder{color:#999}.form-field:focus{border-color:var(--form-primary);background:#fff}.form-field--error,.form-field--error:focus{border-color:var(--form-error);background:#fff}.form-btn-primary{width:100%;margin-top:10px;height:42px;padding:0 16px;font-size:15px;font-weight:600;color:#fff;background:var(--form-primary);border:1px solid var(--form-primary);border-radius:0;cursor:pointer}.form-btn-primary:active{opacity:.9}.form-btn-primary:disabled{opacity:.5;cursor:not-allowed}.form-textarea{display:block;width:100%;min-height:100px;height:100px;padding:10px 12px;border:1px solid #ddd;border-radius:0;resize:none;font:inherit;font-size:16px;color:var(--form-text);line-height:1.5;background:#fff;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-textarea::-moz-placeholder{color:#999}.form-textarea::placeholder{color:#999}.form-textarea:focus{border-color:var(--form-primary);background:#fff}.form-textarea--error,.form-textarea--error:focus{border-color:var(--form-error)}.form-radio-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-radio-item{position:relative}.form-radio-item input[type=radio]{position:absolute;opacity:0;width:0;height:0}.form-radio-pill{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;background:#fff;border:1px solid #ddd;border-radius:0;cursor:pointer;font-size:14px;color:var(--form-text)}.form-radio-pill:before{content:"";width:14px;height:14px;border:1px solid #bbb;background:#fff;flex-shrink:0}.form-radio-item input[type=radio]:focus-visible+.form-radio-pill{border-color:var(--form-primary)}.form-radio-item input[type=radio]:checked+.form-radio-pill{background:#f4f1ff;border-color:var(--form-primary);color:var(--form-primary)}.form-radio-item input[type=radio]:checked+.form-radio-pill:before{border-color:var(--form-primary);background:var(--form-primary);box-shadow:inset 0 0 0 2px #fff}.form-segment{display:grid;grid-template-columns:1fr 1fr;gap:8px}.form-segment-item{padding:10px 12px;font-size:14px;color:var(--form-text);background:#fff;border:1px solid #ddd;border-radius:0;cursor:pointer}.form-segment-item--active{background:#f4f1ff;border-color:var(--form-primary);color:var(--form-primary)}.form-segment-item--disabled,.form-segment-item:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.form-btn-link{padding:0;font-size:13px;font-weight:600;color:var(--form-primary);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.form-btn-back{padding:0;font-size:14px;font-weight:600;color:var(--form-primary);background:none;border:none;cursor:pointer}.form-upload-zone{display:flex;align-items:center;justify-content:center;min-height:88px;padding:16px;border:1px dashed #ddd;border-radius:0;background:#fafafa;cursor:pointer}.form-upload-zone:active{opacity:.85}.form-upload-zone-text{font-size:15px;font-weight:500;color:var(--form-primary)}.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}.form-field--compact{padding:10px 8px;font-size:14px;text-align:center}.form-measure-table-wrap{background:var(--form-card);border:1px solid var(--form-border)}.form-measure-table{width:100%;border-collapse:collapse;table-layout:fixed}.form-measure-table th,.form-measure-table td{border-bottom:1px solid var(--form-border);vertical-align:middle}.form-measure-table thead th{padding:10px 6px;font-size:12px;font-weight:600;color:var(--form-secondary);background:var(--form-input-bg);text-align:center}.form-measure-table thead th:nth-child(1),.form-measure-table thead th:nth-child(3){width:34%}.form-measure-table thead th:nth-child(2){width:32%}.form-measure-table tbody tr:last-child td{border-bottom:none}.form-measure-table tbody td{padding:8px 6px}.form-measure-table-label{text-align:center;font-size:13px;font-weight:600;color:var(--form-text);white-space:nowrap;background:#442ee50a}.form-empty{margin:0;padding:40px 16px;text-align:center;font-size:13px;color:var(--form-secondary);background:#fff;border:1px solid var(--form-border)}.form-result-wrap{max-height:min(42vh,380px);overflow-x:hidden;overflow-y:auto;border:1px solid var(--form-border);background:#fff;-webkit-overflow-scrolling:touch}.form-result-list{margin:0;padding:0;list-style:none}.form-result-item{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-bottom:1px solid #eee}.form-result-item:last-child{border-bottom:none}.form-result-item.is-clickable{cursor:pointer}.form-result-item.is-clickable:hover{background:#fafafa}.form-result-item.is-on{background:#f4f1ff}.form-result-main{min-width:0;flex:1}.form-result-title{margin:0;font-size:14px;color:var(--form-text);line-height:1.4;word-break:break-word}.form-result-meta,.form-result-summary,.form-result-muted{margin:4px 0 0;font-size:12px;line-height:1.5;color:var(--form-secondary);word-break:break-word}.form-result-summary{color:var(--form-text)}.form-result-action{flex-shrink:0;font-size:13px;color:var(--form-secondary)}.form-result-item.is-on .form-result-action{color:var(--form-primary)}.form-result-more{padding:8px 12px;text-align:center;font-size:12px;color:var(--form-secondary);border-top:1px solid #eee}.form-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;overflow:hidden;overscroll-behavior:none;touch-action:none;background:#0000005c}.form-preview-panel{display:flex;flex-direction:column;width:100%;max-width:520px;max-height:min(88vh,720px);background:var(--form-card);border:1px solid var(--form-border);border-radius:0;overflow:hidden;touch-action:auto}.form-preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--form-border)}.form-preview-title{font-size:14px;font-weight:600;color:var(--form-text)}.form-preview-body{flex:1;min-height:0;padding:12px;overflow:auto}.form-preview-pdf{width:100%;height:min(70vh,560px);border:none;border-radius:0;background:#fff}.form-model-viewer{position:relative;width:100%;height:min(60vh,420px);border-radius:0;overflow:hidden;background:#fafafa;border:1px solid var(--form-border)}.form-model-viewer-canvas{width:100%;height:100%}.form-model-viewer-canvas canvas{display:block;width:100%!important;height:100%!important;touch-action:none}.form-model-viewer-tip{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px;font-size:14px;color:var(--form-secondary);pointer-events:none;text-align:center}.form-model-viewer-tip--error{color:var(--form-error)}.form-model-viewer-legend{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 20px);padding:6px 10px;border-radius:0;font-size:10px;font-weight:700;letter-spacing:.02em;background:#ffffffeb;border:1px solid var(--form-border);pointer-events:none}.form-model-viewer-legend-item--x{color:#ff3b30}.form-model-viewer-legend-item--y{color:#34c759}.form-model-viewer-legend-item--z{color:#007aff}.form-model-requirements{margin-bottom:12px;border-radius:0;border:1px solid var(--form-border);background:#fafafa;overflow:hidden}.form-model-requirements-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border:none;background:transparent;font-size:13px;font-weight:600;color:var(--form-primary);text-align:left;cursor:pointer}.form-model-requirements-chevron{display:inline-block;font-size:12px;transition:transform .2s ease}.form-model-requirements-chevron[data-open=true]{transform:rotate(180deg)}.form-model-requirements-body{padding:0 14px 14px}.form-model-requirements-carousel{margin-bottom:14px;border-radius:0;overflow:hidden;background:#0d1528;border:1px solid var(--form-border)}.form-model-requirements-carousel-viewport{position:relative;aspect-ratio:4 / 3;background:#0d1528}.form-model-requirements-carousel-img-btn{position:relative;display:block;width:100%;height:100%;padding:0;border:none;background:transparent;cursor:zoom-in;-webkit-tap-highlight-color:transparent}.form-model-requirements-carousel-img{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.form-model-requirements-carousel-zoom-hint{position:absolute;right:10px;bottom:10px;z-index:1;padding:4px 8px;border-radius:0;font-size:10px;color:#fff;background:#00000080;pointer-events:none}.form-model-requirements-carousel-arrow{position:absolute;top:50%;z-index:2;display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-top:-16px;border:none;border-radius:0;font-size:22px;line-height:1;color:#fff;background:#00000073;cursor:pointer;-webkit-tap-highlight-color:transparent}.form-model-requirements-carousel-arrow--prev{left:8px}.form-model-requirements-carousel-arrow--next{right:8px}.form-model-requirements-carousel-dots{display:flex;justify-content:center;gap:8px;padding:10px 12px 0;background:var(--form-card)}.form-model-requirements-carousel-dot{width:8px;height:8px;padding:0;border:none;border-radius:0;background:var(--form-border);cursor:pointer;transition:transform .2s ease,background-color .2s ease}.form-model-requirements-carousel-dot[data-active=true]{background:var(--form-primary);transform:scale(1.15)}.form-model-requirements-carousel-caption{padding:12px 14px 14px;background:var(--form-card);border-top:1px solid var(--form-border)}.form-model-requirements-carousel-caption-title{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--form-text)}.form-model-requirements-carousel-caption-text{margin:0;font-size:12px;line-height:1.55;color:var(--form-secondary)}.form-diagram-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));overflow:auto;overscroll-behavior:none;touch-action:none;background:#0d1528f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.form-diagram-lightbox-inner{display:flex;flex-direction:column;width:100%;max-width:520px;max-height:100%;touch-action:auto}.form-diagram-lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-shrink:0}.form-diagram-lightbox-title{font-size:14px;font-weight:600;color:#fff}.form-diagram-lightbox-close{color:#fff!important;flex-shrink:0}.form-diagram-lightbox-img{display:block;width:100%;max-height:min(72dvh,640px);-o-object-fit:contain;object-fit:contain;border-radius:0;background:#0d1528;flex-shrink:1;min-height:0}.form-diagram-lightbox-caption{margin:10px 0 0;font-size:12px;line-height:1.55;color:#ffffffbf;flex-shrink:0}.form-model-requirements-sections{margin:0;padding-left:1.35rem;list-style:decimal}.form-model-requirements-section{margin-bottom:12px;font-size:12px;line-height:1.55;color:var(--form-secondary)}.form-model-requirements-section:last-child{margin-bottom:0}.form-model-requirements-section::marker{font-weight:600;color:var(--form-primary)}.form-model-requirements-section-title{margin:0 0 6px;font-size:12px;font-weight:600;color:var(--form-text);list-style:none}.form-model-requirements-list{margin:0;padding-left:0;list-style:none;font-size:12px;line-height:1.55;color:var(--form-secondary)}.form-model-requirements-list li{position:relative;padding-left:.9rem}.form-model-requirements-list li:before{content:"·";position:absolute;left:0;font-weight:700;color:var(--form-primary)}.form-model-requirements-list li+li{margin-top:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.relative{position:relative}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-5{margin-top:1.25rem}.block{display:block}.flex{display:flex}.table{display:table}.grid{display:grid}.h-full{height:100%}.min-h-full{min-height:100%}.w-40{width:10rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-\[720px\]{max-width:720px}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.justify-self-center{justify-self:center}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0px}.bg-\[rgba\(0\,0\,0\,\.5\)\]{background-color:#00000080}.p-0{padding:0}.px-3{padding-left:.75rem;padding-right:.75rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.pb-4{padding-bottom:1rem}.text-6xl{font-size:3.75rem;line-height:1}.text-\[22px\]{font-size:22px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--form-primary: #442ee5;--form-bg: #ededed;--form-card: #ffffff;--form-text: #1c1c1e;--form-secondary: #888;--form-border: #e6e6e6;--form-error: #d33;--form-input-bg: #ffffff}.global-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.global-loading-panel{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:120px;padding:20px 24px;border-radius:0;background:var(--form-card);border:1px solid var(--form-border)}.global-loading-spinner{width:36px;height:36px;border:3px solid var(--form-border);border-top-color:var(--form-primary);border-radius:50%;animation:global-loading-spin .75s linear infinite}.global-loading-text{font-size:14px;font-weight:500;color:var(--form-secondary)}.app-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000005c;-webkit-user-select:text;-moz-user-select:text;user-select:text;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.app-dialog-panel{width:100%;max-width:360px;background:#fff;border:1px solid #e6e6e6}.app-dialog-title{padding:16px 16px 0;font-size:15px;font-weight:600;color:#1c1c1e}.app-dialog-message{margin:0;padding:10px 16px 16px;font-size:14px;line-height:1.55;color:#333;white-space:pre-wrap;word-break:break-word}.app-dialog-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid #eee}.app-toast{position:fixed;left:50%;z-index:10001;display:flex;align-items:center;gap:10px;min-width:132px;max-width:min(78vw,280px);padding:12px 16px 12px 14px;background:#fff;border:1px solid #e6e6e6;color:#1c1c1e;font-size:14px;line-height:1.4;text-align:left;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0;transition:opacity .18s ease,transform .18s ease;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.app-toast.is-center{top:50%;transform:translate(-50%,calc(-50% + 10px))}.app-toast.is-center.is-on{opacity:1;transform:translate(-50%,-50%)}.app-toast.is-top{top:calc(env(safe-area-inset-top,0px) + 56px);transform:translate(-50%,-8px)}.app-toast.is-top.is-on{opacity:1;transform:translate(-50%)}.app-toast-mark{width:8px;height:8px;flex-shrink:0;background:#442ee5}@keyframes global-loading-spin{to{transform:rotate(360deg)}}html,body,#root{min-height:100%;min-height:100dvh;background-color:var(--form-bg)}.app-shell{position:relative;width:100%;height:100dvh;overflow:hidden;background-color:var(--form-bg)}.admin-shell{height:100dvh;display:flex;flex-direction:column;background:#ededed;overflow:hidden;-webkit-user-select:text;-moz-user-select:text;user-select:text;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.admin-login{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:48px 24px}.admin-login-form{width:100%;max-width:360px;padding:32px 28px 28px;background:#fff;border:1px solid #e6e6e6}.admin-login-brand{margin:0 0 6px;font-size:13px;font-weight:600;color:#442ee5}.admin-login-title{margin:0 0 28px;font-size:22px;font-weight:650;color:#1c1c1e}.admin-login-btn{display:block;width:100%;margin-top:8px;height:42px;border:none;border-radius:0;background:#442ee5;color:#fff;font-size:15px;font-weight:600;cursor:pointer}.admin-login-btn:hover:not(:disabled){opacity:.9}.admin-login-btn:active:not(:disabled){opacity:.82}.admin-login-btn:disabled{opacity:.5;cursor:default}.admin-page{flex:1;min-height:0;display:flex;flex-direction:column}.admin-bar{flex-shrink:0;background:#fff;border-bottom:1px solid #e6e6e6}.admin-bar-inner{display:flex;align-items:center;gap:28px;width:100%;padding:0 20px;height:52px}.admin-bar-brand{font-size:16px;font-weight:650;color:#442ee5;flex-shrink:0}.admin-bar-user{font-size:13px;color:#888;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-bar-actions{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0}.admin-tabs{display:flex;align-items:stretch;gap:4px;height:100%}.admin-tab{display:flex;align-items:center;height:100%;padding:0 14px;font-size:14px;color:#666;text-decoration:none;border-bottom:2px solid transparent}.admin-tab:hover{color:#442ee5}.admin-tab.is-on{color:#442ee5;font-weight:600;border-bottom-color:#442ee5}.admin-main{flex:1;min-height:0;display:flex;flex-direction:column;width:100%;padding:12px}.admin-panel{flex:1;min-height:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e6e6e6;overflow:hidden}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #eee}.admin-count{font-size:14px;font-weight:600;color:#1c1c1e}.admin-toolbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.admin-hint{margin:0;padding:10px 16px 0;font-size:12px;line-height:1.5;color:#888}.admin-text-btn{padding:0;border:none;background:none;color:#442ee5;font-size:14px;cursor:pointer}.admin-text-btn:hover:not(:disabled){opacity:.78}.admin-text-btn:disabled{color:#bbb;cursor:default}.admin-solid-btn{height:32px;padding:0 14px;border:1px solid #442ee5;border-radius:0;background:#442ee5;color:#fff;font-size:13px;cursor:pointer}.admin-solid-btn:hover:not(:disabled){opacity:.9}.admin-solid-btn:disabled{opacity:.5;cursor:default}.admin-ghost-btn{height:32px;padding:0 14px;border:1px solid #ddd;border-radius:0;background:#fff;color:#333;font-size:13px;cursor:pointer}.admin-ghost-btn:hover:not(:disabled){border-color:#442ee5;color:#442ee5}.admin-ghost-btn:disabled{color:#bbb;cursor:default}.admin-danger-btn{height:32px;padding:0 14px;border:1px solid #d33;border-radius:0;background:#d33;color:#fff;font-size:13px;cursor:pointer}.admin-danger-btn:hover:not(:disabled){opacity:.9}.admin-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 16px;background:#fafafa;border-bottom:1px solid #eee}.admin-filter input{width:180px;flex:none;height:32px;padding:0 10px;border:1px solid #ddd;border-radius:0;background:#fff;font-size:13px;color:#1c1c1e;outline:none}.admin-filter input::-moz-placeholder{color:#999}.admin-filter input::placeholder{color:#999}.admin-filter input:focus{border-color:#442ee5}.admin-empty{margin:0;padding:56px 16px;text-align:center;font-size:13px;color:#999}.admin-err{margin:8px 16px;font-size:13px;color:#d33}.admin-login-form .admin-err{margin:0 0 12px}.admin-table-wrap{flex:1;min-height:0;overflow:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{padding:10px 16px;text-align:left;border-bottom:1px solid #eee;white-space:nowrap;color:#1c1c1e}.admin-table th{position:sticky;top:0;z-index:1;background:#fafafa;font-weight:600;color:#555;border-bottom:1px solid #e6e6e6}.admin-table tbody tr:hover{background:#fafafa}.admin-table .is-off{color:#999}.admin-table .admin-cell-wrap{white-space:normal;max-width:360px;line-height:1.4}.admin-id-cell{display:inline-flex;align-items:center;gap:6px;max-width:140px}.admin-id-text{overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;color:#555}.admin-copy-btn{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;padding:2px;border:none;background:none;color:#999;cursor:pointer;line-height:0}.admin-copy-btn:hover{color:#442ee5}.admin-field-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;max-width:460px}.admin-field-count{flex-shrink:0;font-size:12px;color:#888}.admin-field-tag{max-width:140px;overflow:hidden;padding:2px 6px;border:1px solid #e6e6e6;background:#fafafa;font-size:12px;color:#555;white-space:nowrap;text-overflow:ellipsis}.admin-field-more{font-size:12px;color:#888}.admin-empty-cell{text-align:center!important;color:#999;padding:48px 16px!important}.admin-row-ops{display:flex;gap:14px}.admin-row-ops button{padding:0;border:none;background:none;font-size:13px;color:#442ee5;cursor:pointer}.admin-row-ops button:hover{opacity:.78}.admin-row-ops .admin-danger{color:#d33}.admin-pick-grid{display:flex;flex-wrap:wrap;gap:8px}.admin-pick{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #ddd;background:#fff;color:#333;font-size:13px;line-height:1.2;cursor:pointer}.admin-pick:hover{border-color:#442ee5}.admin-pick.is-on{border-color:#442ee5;color:#442ee5;background:#f4f1ff}.admin-pick-box{display:block;width:14px;height:14px;border:1px solid #bbb;background:#fff;flex-shrink:0;font-style:normal}.admin-pick.is-on .admin-pick-box{border-color:#442ee5;background:#442ee5;box-shadow:inset 0 0 0 2px #fff}.admin-pager{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:10px 16px;border-top:1px solid #eee}.admin-pager-total{margin-right:8px;font-size:13px;color:#888}.admin-pager-ellipsis{min-width:24px;text-align:center;font-size:13px;color:#888}.admin-page-btn{min-width:32px;height:32px;padding:0 8px;border:1px solid #ddd;border-radius:0;background:#fff;color:#333;font-size:13px;cursor:pointer}.admin-page-btn:hover:not(:disabled):not(.is-on){border-color:#442ee5;color:#442ee5}.admin-page-btn.is-on{border-color:#442ee5;background:#442ee5;color:#fff;cursor:default}.admin-page-btn:disabled{color:#bbb;cursor:default}.admin-field{display:block;margin-bottom:14px}.admin-field span{display:block;margin-bottom:6px;font-size:13px;color:#555}.admin-field input,.admin-field select{width:100%;height:36px;padding:0 10px;border:1px solid #ddd;border-radius:0;background:#fff;font-size:14px;color:#1c1c1e;outline:none}.admin-field input::-moz-placeholder{color:#999}.admin-field input::placeholder{color:#999}.admin-field input:focus,.admin-field select:focus{border-color:#442ee5}.admin-field input:disabled{background:#f5f5f5;color:#888}.admin-field-hint{margin:0;font-size:13px;color:#888}.admin-field-hint a{color:#442ee5;text-decoration:none}.admin-field-editor{display:flex;flex-direction:column;gap:8px}.admin-field-row{display:flex;align-items:center;gap:8px}.admin-field-row input{flex:1;min-width:0;height:36px;padding:0 10px;border:1px solid #ddd;border-radius:0;background:#fff;font-size:14px;color:#1c1c1e;outline:none}.admin-field-row input:focus{border-color:#442ee5}.admin-field-row .admin-danger{flex-shrink:0;padding:0;border:none;background:none;font-size:13px;color:#d33;cursor:pointer}.admin-check-list{display:flex;flex-direction:column;gap:8px}.admin-check{display:flex;align-items:center;gap:8px;font-size:14px;color:#333}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000005c}.admin-modal-panel{display:flex;flex-direction:column;width:100%;max-width:520px;max-height:86vh;background:#fff;border:1px solid #e6e6e6;overflow:hidden}.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #eee}.admin-modal-title{font-size:15px;font-weight:600;color:#1c1c1e}.admin-modal-body{flex:1;min-height:0;overflow:auto;padding:16px}.admin-modal-body.is-fields{display:flex;flex-direction:column;overflow:hidden;padding:0}.admin-fields-form{display:flex;flex-direction:column;flex:1;min-height:0}.admin-fields-scroll{flex:1;min-height:0;overflow:auto;padding:16px}.admin-fields-sticky{flex-shrink:0;padding:12px 16px;border-top:1px solid #eee;background:#fff}.admin-fields-sticky .admin-ghost-btn{width:100%}.admin-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:16px;padding:12px 16px;border-top:1px solid #eee}@media (max-width: 768px){.admin-login{align-items:flex-start;padding:max(48px,env(safe-area-inset-top,0px)) 16px 24px}.admin-login-form{max-width:none;padding:24px 20px 20px}.admin-bar-inner{flex-wrap:wrap;height:auto;gap:0;padding:env(safe-area-inset-top,0px) 12px 0}.admin-bar-brand{display:flex;align-items:center;height:44px;font-size:15px}.admin-bar-actions{height:44px}.admin-bar-user{max-width:96px}.admin-tabs{width:100%;height:40px;border-top:1px solid #f0f0f0}.admin-tab{flex:1;justify-content:center;padding:0 8px;font-size:14px}.admin-main{padding:8px;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}.admin-toolbar,.admin-filter,.admin-pager{padding-left:12px;padding-right:12px}.admin-filter input{width:100%;min-width:0;flex:1 1 100%;height:40px;font-size:16px}.admin-filter .admin-ghost-btn,.admin-filter .admin-solid-btn{width:100%;height:40px}.admin-table{min-width:640px}.admin-table th,.admin-table td{padding:10px 12px}.admin-row-ops{gap:12px}.admin-row-ops button{min-height:32px;font-size:14px}.admin-field-tags{max-width:240px}.admin-pager{flex-wrap:wrap;justify-content:center;gap:6px}.admin-pager-total{width:100%;margin:0 0 4px;text-align:center}.admin-page-btn{min-width:36px;height:36px}.admin-field input,.admin-field select,.admin-field-row input{height:40px;font-size:16px}.admin-pick{padding:10px 12px}.admin-modal-overlay{padding:0;align-items:flex-end}.admin-modal-panel{max-width:none;max-height:92dvh;border-bottom:none}.app-dialog-overlay{padding:16px;align-items:center}.app-dialog-panel{max-width:none}}.page-transition-layer.is-scroll-locked,body.is-scroll-locked{overflow:hidden!important;overscroll-behavior:none}body{-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:VINCENT}*::-webkit-scrollbar{width:4px;height:4px}*::-webkit-scrollbar-track{background:#e4e4e4}*::-webkit-scrollbar-thumb{background-color:#b0b0b0;border-radius:10px}@media (min-width: 1280px){.xl\:w-56{width:14rem}.xl\:text-8xl{font-size:6rem;line-height:1}}
