[v-cloak]{display:none!important}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background-color:#f1f9ff;overflow:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-overflow-scrolling:touch;min-height:100vh;min-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0px)}.container{width:100vw;height:100dvh;height:100vh;position:relative;overflow-x:hidden;-webkit-overflow-scrolling:touch}.nav{position:fixed;top:0;left:0;width:100%;height:clamp(50px,10vh,70px);display:flex;align-items:center;background-color:#f1f9ff;z-index:1000;padding:0 clamp(12px,3vw,20px);box-shadow:0 2px 8px #0000001a}.nav_left{width:clamp(30px,8vw,50px);height:clamp(30px,8vw,50px);position:absolute;left:clamp(12px,3vw,20px);cursor:pointer;display:flex;align-items:center;justify-content:center}.nav_icon .back{width:clamp(24px,6vw,40px);height:clamp(24px,6vw,40px)}.nav_right{width:100%;text-align:center;font-weight:500;font-size:clamp(16px,4.5vw,20px)}.type-selector{position:fixed;top:clamp(50px,10vh,70px);left:0;width:100%;height:clamp(45px,8vh,60px);background:#fff;display:flex;align-items:center;justify-content:center;gap:clamp(16px,4vw,24px);z-index:999;box-shadow:0 2px 4px #0000001a;padding:0 clamp(12px,3vw,20px)}.type-btn{padding:clamp(6px,2vh,12px) clamp(16px,5vw,32px);border:2px solid #409eff;border-radius:25px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:clamp(14px,4vw,18px);font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #0000001a;min-width:clamp(70px,20vw,120px);text-align:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.type-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.type-btn.active{background:linear-gradient(135deg,#f093fb,#f5576c);border-color:#f5576c;transform:scale(1.05);box-shadow:0 4px 12px #f5576c66}.type-btn:active{transform:scale(.98)}.user-info-form{position:fixed;top:clamp(95px,18vh,130px);left:0;width:100%;height:calc(100dvh - clamp(95px,18vh,130px));height:calc(100vh - clamp(95px,18vh,130px));overflow-y:auto;padding:clamp(16px,3vh,24px) clamp(16px,5vw,24px);padding-bottom:calc(clamp(16px,3vh,24px) + max(env(safe-area-inset-bottom,0px),44px));-webkit-overflow-scrolling:touch}.form-container{background:#fff;border-radius:clamp(12px,2vh,16px);padding:clamp(20px,4vh,28px) clamp(20px,5vw,28px);box-shadow:0 4px 12px #0000001a}.form-title{font-size:clamp(17px,5vw,22px);font-weight:600;text-align:center;margin-bottom:clamp(20px,4vh,28px);color:#333}.form-content{display:flex;flex-direction:column;gap:clamp(20px,4vh,28px)}.form-item{display:flex;flex-direction:column;gap:clamp(8px,2vh,12px)}.form-label{font-size:clamp(14px,4vw,18px);font-weight:500;color:#333}.required{color:#f5576c}.form-input{width:100%;height:clamp(42px,12vh,56px);padding:0 clamp(12px,4vw,16px);border:1px solid #ddd;border-radius:clamp(6px,2vh,8px);font-size:clamp(15px,4.5vw,18px);outline:none;transition:border-color .3s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-input:focus{border-color:#409eff}.gender-group{display:flex;gap:clamp(12px,3vw,16px);justify-content:space-between}.gender-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:clamp(8px,2vh,12px);padding:clamp(12px,4vh,20px) clamp(12px,3vw,16px);border:2px solid #ddd;border-radius:clamp(10px,3vh,16px);cursor:pointer;transition:all .3s;-webkit-tap-highlight-color:rgba(64,158,255,.2);touch-action:manipulation}.gender-option.active{border-color:#409eff;background-color:#ecf5ff}.gender-icon{width:clamp(36px,10vw,50px);height:clamp(36px,10vw,50px)}.form-actions{margin-top:clamp(20px,4vh,28px)}.btn-submit{width:100%;height:clamp(44px,12vh,56px);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:clamp(20px,6vh,24px);font-size:clamp(16px,4.5vw,20px);font-weight:600;cursor:pointer;transition:all .3s;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #667eea66}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.camera-modal{position:fixed;top:clamp(50px,10vh,70px);left:0;width:100%;height:calc(100dvh - clamp(50px,10vh,70px));height:calc(100vh - clamp(50px,10vh,70px));max-height:calc(100dvh - clamp(50px,10vh,70px));max-height:calc(100vh - clamp(50px,10vh,70px));background:#000;z-index:998;display:flex;flex-direction:column;-webkit-transform:translateZ(0);transform:translateZ(0);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding-bottom:0;min-height:0;justify-content:space-between}.camera-header{display:flex;align-items:center;gap:clamp(8px,3vw,12px);padding:clamp(8px,2vh,12px) clamp(12px,4vw,16px);background:#00000080;flex-shrink:0;flex-grow:0;min-height:clamp(40px,6vh,60px);max-height:clamp(60px,8vh,75px);height:auto}.camera-header .header{width:clamp(35px,10vw,50px);height:clamp(35px,10vw,50px);border-radius:50%}.camera-title{flex:1}.camera-title .title{color:#fff;font-size:clamp(14px,4vw,18px);font-weight:500}.camera-title .t1{font-size:clamp(12px,3.5vw,16px);opacity:.8;margin-top:clamp(4px,1vh,8px);display:flex;align-items:center;gap:clamp(4px,1vw,8px)}.camera-title .t1 img{width:clamp(14px,4vw,20px);height:clamp(14px,4vw,20px)}.camera-preview{height:55vh;min-height:320px;max-height:60vh;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;pointer-events:none;z-index:1;flex-shrink:0;flex-grow:0}.camera-placeholder{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.video-element{width:100%;height:100%;object-fit:cover}.video-element.mirror{transform:scaleX(-1);-webkit-transform:scaleX(-1)}.previewUrl{width:100%;height:100%;object-fit:contain}.dashed-frame-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-webkit-transform:translate(-50%,-50%);width:clamp(240px,70vw,400px);max-width:400px;max-height:55vh;pointer-events:none;z-index:10}.dashed-frame-overlay img{width:100%;height:100%;object-fit:contain;display:block}.dashed-frame{width:100%;height:auto;aspect-ratio:1;max-width:100%;max-height:100%;object-fit:contain;display:block;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.placeholder-text{position:absolute;bottom:clamp(150px,25vh,180px);left:50%;transform:translate(-50%);-webkit-transform:translateX(-50%);color:#fff;font-size:clamp(12px,3.5vw,18px);text-align:center;background:#00000080;padding:clamp(6px,2vh,10px) clamp(12px,4vw,16px);border-radius:clamp(6px,2vh,8px);z-index:11;pointer-events:none;white-space:nowrap}.camera-tips{padding:clamp(6px,1.2vh,10px) clamp(12px,4vw,16px);background:#00000080;flex-shrink:0;flex-grow:0;margin-bottom:0;min-height:clamp(20px,2.5vh,32px);max-height:clamp(32px,4vh,44px);height:auto}.tip-text{color:#fff;font-size:clamp(12px,3.5vw,16px);text-align:center;opacity:.8}.camera-controls{display:flex;justify-content:center;align-items:center;gap:clamp(20px,5vw,36px);padding:clamp(18px,3.5vh,28px) clamp(12px,4vw,20px);padding-bottom:calc(clamp(16px,3vh,24px) + max(env(safe-area-inset-bottom,0px),50px));background:#0009;position:relative;width:100%;z-index:10000;isolation:isolate;-webkit-transform:translateZ(0);transform:translateZ(0);min-height:110px;height:auto;flex-shrink:0;flex-grow:0;will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;margin-top:auto}.camera-btn{width:clamp(60px,20vw,85px);height:clamp(60px,20vw,85px);min-width:60px;min-height:60px;border-radius:50%;background:#ffffff59;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto!important;z-index:10001;position:relative;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:transform .2s;flex-shrink:0;border:2px solid rgba(255,255,255,.2);box-shadow:0 2px 8px #0000004d}.camera-btn:active{transform:scale(.9) translateZ(0);-webkit-transform:scale(.9) translateZ(0)}.camera-btn .paizhao{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.camera-cheak{width:clamp(42px,13vw,65px);height:clamp(42px,13vw,65px);min-width:42px;min-height:42px;border-radius:clamp(8px,2.5vw,12px);background:#ffffff59;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto!important;z-index:10001;position:relative;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:transform .2s;flex-shrink:0;border:2px solid rgba(255,255,255,.2);box-shadow:0 2px 8px #0000004d}.camera-cheak:active{transform:scale(.9) translateZ(0);-webkit-transform:scale(.9) translateZ(0)}.camera-cheak .check{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:none;align-items:center;justify-content:center;z-index:10000}.loading-overlay.show{display:flex}.loading-content{background:#fff;padding:clamp(20px,4vh,28px);border-radius:clamp(10px,2vh,12px);display:flex;flex-direction:column;align-items:center;gap:clamp(12px,3vh,16px)}.loading-spinner{width:clamp(32px,8vw,40px);height:clamp(32px,8vw,40px);border:4px solid #f3f3f3;border-top:4px solid #409eff;border-radius:50%;animation:spin 1s linear infinite;-webkit-animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}.toast{position:fixed;bottom:clamp(100px,20vh,150px);left:50%;transform:translate(-50%);-webkit-transform:translateX(-50%);background:#000c;color:#fff;padding:clamp(10px,2vh,14px) clamp(20px,5vw,24px);border-radius:clamp(6px,2vh,8px);font-size:clamp(14px,4vw,18px);opacity:0;pointer-events:none;transition:opacity .3s;z-index:10001}.toast.show{opacity:1}@media (max-width: 414px){.camera-modal{top:clamp(50px,10vh,70px);height:calc(100dvh - clamp(50px,10vh,70px));height:calc(100vh - clamp(50px,10vh,70px));max-height:calc(100dvh - clamp(50px,10vh,70px));max-height:calc(100vh - clamp(50px,10vh,70px));padding-bottom:0}.camera-header{min-height:clamp(40px,6vh,55px);max-height:clamp(55px,8vh,70px);padding:clamp(8px,2vh,12px) clamp(10px,3vw,14px);flex-shrink:0}.camera-preview{height:48vh;min-height:280px;max-height:55vh;flex-shrink:0;flex-grow:0}.camera-tips{flex-shrink:0}.camera-controls{min-height:110px;flex-shrink:0}.dashed-frame-overlay{width:65vw;max-width:280px;top:50%;max-height:50vh}.placeholder-text{bottom:clamp(170px,28vh,200px);font-size:clamp(11px,3vw,14px)}.camera-tips{min-height:clamp(22px,2.5vh,32px);max-height:clamp(32px,3.5vh,42px);padding:clamp(6px,1.2vh,10px) clamp(10px,3vw,14px)}.camera-controls{gap:clamp(18px,4vw,24px);padding:clamp(20px,4vh,32px) clamp(10px,3vw,16px);padding-bottom:calc(clamp(10px,2vh,16px) + max(env(safe-area-inset-bottom,0px),50px));min-height:calc(clamp(70px,15vh,85px) + clamp(20px,4vh,32px) + max(env(safe-area-inset-bottom,0px),50px))}.camera-btn{width:clamp(60px,22vw,75px);height:clamp(60px,22vw,75px);min-width:60px;min-height:60px}.camera-cheak{width:clamp(42px,14vw,55px);height:clamp(42px,14vw,55px);min-width:42px;min-height:42px}}@media (max-width: 374px){.camera-modal{padding-bottom:0}.camera-preview{height:45vh;min-height:260px;max-height:50vh;flex-shrink:0;flex-grow:0}.camera-controls{min-height:100px}.dashed-frame-overlay{width:65vw;max-width:280px;top:52%;max-height:45vh}.placeholder-text{bottom:clamp(180px,30vh,210px);font-size:clamp(11px,3vw,14px)}.camera-tips{min-height:clamp(20px,2vh,28px);max-height:clamp(28px,3vh,38px);padding:clamp(5px,1vh,8px) clamp(8px,2.5vw,12px)}.camera-controls{gap:clamp(16px,3.5vw,22px);padding:clamp(18px,3.5vh,28px) clamp(8px,2.5vw,14px);padding-bottom:calc(clamp(8px,1.8vh,14px) + max(env(safe-area-inset-bottom,0px),50px));min-height:calc(clamp(70px,16vh,80px) + clamp(18px,3.5vh,28px) + max(env(safe-area-inset-bottom,0px),50px))}}@media (max-width: 320px){.camera-modal{top:clamp(50px,10vh,70px);height:calc(100dvh - clamp(50px,10vh,70px));height:calc(100vh - clamp(50px,10vh,70px));max-height:calc(100dvh - clamp(50px,10vh,70px));max-height:calc(100vh - clamp(50px,10vh,70px));padding-bottom:0}.camera-header{min-height:clamp(38px,5.5vh,50px);max-height:clamp(50px,7vh,60px);padding:clamp(6px,1.5vh,10px) clamp(8px,2.5vw,12px);flex-shrink:0}.camera-preview{height:40vh;min-height:240px;max-height:45vh;flex-shrink:0;flex-grow:0}.camera-tips{flex-shrink:0}.camera-controls{min-height:100px;flex-shrink:0}.dashed-frame-overlay{width:60vw;max-width:240px;top:50%;max-height:40vh}.placeholder-text{bottom:clamp(190px,32vh,220px);font-size:clamp(10px,2.5vw,12px);padding:clamp(4px,1.2vh,7px) clamp(8px,2.5vw,12px)}.camera-tips{min-height:clamp(18px,1.8vh,24px);max-height:clamp(24px,2.5vh,32px);padding:clamp(4px,.8vh,6px) clamp(6px,2vw,10px)}.camera-controls{gap:clamp(14px,3vw,20px);padding:clamp(16px,3vh,24px) clamp(6px,2vw,12px);padding-bottom:calc(clamp(6px,1.5vh,12px) + max(env(safe-area-inset-bottom,0px),50px));min-height:calc(clamp(70px,17vh,80px) + clamp(16px,3vh,24px) + max(env(safe-area-inset-bottom,0px),50px))}.camera-btn{width:clamp(60px,24vw,70px);height:clamp(60px,24vw,70px);min-width:60px;min-height:60px}.camera-cheak{width:clamp(42px,15vw,50px);height:clamp(42px,15vw,50px);min-width:42px;min-height:42px}}@media (orientation: landscape){.camera-modal{top:clamp(50px,10vh,70px);height:calc(100dvh - clamp(50px,10vh,70px) - env(safe-area-inset-bottom,0px));height:calc(100vh - clamp(50px,10vh,70px) - env(safe-area-inset-bottom,0px));max-height:calc(100dvh - clamp(50px,10vh,70px) - env(safe-area-inset-bottom,0px));max-height:calc(100vh - clamp(50px,10vh,70px) - env(safe-area-inset-bottom,0px));padding-bottom:0}.camera-preview{height:45vh;min-height:240px;max-height:50vh;flex-shrink:0;flex-grow:0}.camera-controls{min-height:100px;flex-shrink:0}.user-info-form{top:clamp(50px,10vh,70px);height:calc(100dvh - clamp(50px,10vh,70px));height:calc(100vh - clamp(50px,10vh,70px))}.dashed-frame-overlay{max-height:55vh;max-width:45vh}.placeholder-text{bottom:clamp(90px,20vh,110px)}.camera-tips{min-height:28px;max-height:40px;padding:clamp(6px,1.2vh,10px) clamp(10px,3vw,14px)}.camera-controls{padding:clamp(20px,4vh,32px) clamp(12px,3vw,20px);padding-bottom:calc(clamp(10px,1.8vh,14px) + max(env(safe-area-inset-bottom,0px),30px));min-height:calc(clamp(65px,13vh,75px) + clamp(20px,4vh,32px) + max(env(safe-area-inset-bottom,0px),30px));gap:clamp(16px,4vw,28px)}.camera-btn{width:clamp(58px,16vw,72px);height:clamp(58px,16vw,72px)}.camera-cheak{width:clamp(40px,11vw,52px);height:clamp(40px,11vw,52px)}}@supports not (aspect-ratio: 1){.dashed-frame{height:min(70vw,400px)}}@supports not (height: 100dvh){.container,.camera-modal,.user-info-form{height:100vh}}@supports (-webkit-touch-callout: none){.camera-modal{padding-bottom:max(env(safe-area-inset-bottom,0px),60px)}.camera-controls{padding-top:clamp(24px,5vh,40px);padding-bottom:calc(clamp(20px,4vh,30px) + max(env(safe-area-inset-bottom,0px),60px));min-height:calc(clamp(70px,14vh,90px) + clamp(24px,5vh,40px) + clamp(20px,4vh,30px) + max(env(safe-area-inset-bottom,0px),60px));margin-bottom:max(env(safe-area-inset-bottom,0px),20px);position:relative;z-index:10001;-webkit-transform:translateZ(0);transform:translateZ(0);flex-shrink:0}.camera-btn,.camera-cheak{pointer-events:auto!important;-webkit-tap-highlight-color:rgba(255,255,255,.3);position:relative;z-index:10002}@media (max-width: 414px){.camera-controls{padding-top:clamp(20px,4vh,32px);padding-bottom:calc(clamp(16px,3vh,24px) + max(env(safe-area-inset-bottom,0px),60px));min-height:calc(clamp(70px,15vh,85px) + clamp(20px,4vh,32px) + clamp(16px,3vh,24px) + max(env(safe-area-inset-bottom,0px),60px))}}@media (max-width: 374px){.camera-controls{padding-top:clamp(18px,3.5vh,28px);padding-bottom:calc(clamp(12px,2.5vh,20px) + max(env(safe-area-inset-bottom,0px),60px));min-height:calc(clamp(70px,15vh,85px) + clamp(18px,3.5vh,28px) + clamp(12px,2.5vh,20px) + max(env(safe-area-inset-bottom,0px),60px))}}@media (max-width: 320px){.camera-controls{padding-top:clamp(16px,3vh,24px);padding-bottom:calc(clamp(10px,2vh,16px) + max(env(safe-area-inset-bottom,0px),60px));min-height:calc(clamp(70px,16vh,80px) + clamp(16px,3vh,24px) + clamp(10px,2vh,16px) + max(env(safe-area-inset-bottom,0px),60px))}}@media (orientation: landscape){.camera-controls{padding-bottom:calc(clamp(16px,3vh,24px) + max(env(safe-area-inset-bottom,0px),40px));min-height:calc(clamp(65px,13vh,75px) + clamp(20px,4vh,32px) + clamp(16px,3vh,24px) + max(env(safe-area-inset-bottom,0px),40px))}}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
