.mob-back-btn{position:fixed;top:max(12px,env(safe-area-inset-top,0px));left:max(12px,env(safe-area-inset-left,0px));z-index:9999;width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;background:#00000059;border:none;border-radius:50%;color:#fff;font-size:28px;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .2s,transform .15s}.mob-back-btn:hover{background:#00000080}.mob-back-btn:active{transform:scale(.96)}.mob-back-btn-arrow{display:block;font-weight:300;margin-top:-2px}.App{text-align:center}.App-header{background-color:#282c34;padding:20px;color:#fff;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin)}.App-header h1{margin-bottom:20px}.App-header p{margin:10px 0}.mob-home{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:24px 20px 48px;box-sizing:border-box}.mob-home__header{text-align:center;color:#fff;padding:32px 0 24px}.mob-home__title{margin:0 0 8px;font-size:24px;font-weight:600;color:#fff}.mob-home__subtitle{margin:0;font-size:14px;opacity:.95;color:#fff}.mob-home__nav{margin-top:24px}.mob-home__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;row-gap:12px}.mob-home__list-item{display:block;margin:0;padding:0}.mob-home__link{display:flex;align-items:center;width:100%;min-height:56px;padding:14px 20px;background:#fff;border-radius:12px;text-decoration:none;color:#333;font-size:16px;font-weight:500;box-sizing:border-box;box-shadow:0 2px 8px #0000001a;transition:box-shadow .2s,transform .2s}.mob-home__link:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.mob-home__link:active{transform:translateY(0)}.mob-home__icon{font-size:26px;line-height:1;margin-right:14px;flex-shrink:0}.mob-home__label{flex:1;text-align:left}@media (min-width: 420px){.mob-home{padding-left:24px;padding-right:24px}.mob-home__nav{max-width:360px;margin-left:auto;margin-right:auto}}.register-trainings{min-height:100vh;background:#f4f5f8;padding:0}.register-trainings.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh}.register-trainings.loading .loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:rt-spin 1s linear infinite}.register-trainings.loading p{margin-top:16px;color:#666;font-size:14px}@keyframes rt-spin{to{transform:rotate(360deg)}}.search-container{width:100%;height:50px;background:#fff;display:flex;align-items:center;justify-content:center}.search-box{width:92%;height:32px;background:#f4f5f8;border-radius:16.5px;display:flex;align-items:center;padding:0 12px;gap:8px}.search-icon{width:18px;height:18px;flex-shrink:0}.search-input{flex:1;height:100%;border:none;background:transparent;font-size:12px;color:#333;outline:none}.search-input::placeholder{color:#999}.activity-list{padding:3.2vw;display:flex;flex-direction:column;align-items:center;gap:3.2vw;padding-bottom:24px;min-height:200px;box-sizing:border-box}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.empty-text{margin:0;font-size:14px;color:#999}.activity-card{position:relative;width:calc(100vw * 350 / 375);cursor:pointer;min-height:calc(100vw * 104 / 375);background:#fff;border-radius:calc(100vw * 10 / 375);overflow:visible;display:flex;align-items:center;box-sizing:border-box;padding:4vw;gap:3.2vw;box-shadow:0 1px 4px #0000000f}.activity-card-cover{width:calc(100vw * 74 / 375);min-width:calc(100vw * 74 / 375);height:calc(100vw * 74 / 375);aspect-ratio:1;background:#d8d8d8;border:1px solid #E5E5E5;border-radius:calc(100vw * 10 / 375);flex-shrink:0;overflow:hidden}.activity-card-cover-img{width:100%;height:100%;display:block;object-fit:cover}.activity-card-cover-placeholder{width:100%;height:100%;background:#d8d8d8;border-radius:inherit}.activity-card-body{flex:1;min-width:0;padding-right:16vw;display:flex;flex-direction:column;gap:calc(100vw * 4 / 375)}.activity-card-header{display:block}.activity-card-title{flex:1;margin:0;font-size:calc(100vw * 14 / 375);font-weight:500;color:#333;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0}.activity-card-status{position:absolute;top:3.2vw;right:3.2vw;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:calc(100vw * 52 / 375);height:calc(100vw * 25 / 375);border-radius:calc(100vw * 4 / 375);font-size:3.2vw;font-weight:500;color:#fff;box-sizing:border-box}.activity-card-status-ongoing{background:linear-gradient(180deg,#fff0e3,#ffdab1);color:#ff981e}.activity-card-status-not-started{background:#999;color:#fff}.activity-card-info{font-size:calc(100vw * 11 / 375);line-height:calc(100vw * 16 / 375);color:#333}.activity-card-label{color:#333}.activity-card-value{color:#999}.register-trainings-toast{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 24px;background:#000000bf;color:#fff;font-size:14px;border-radius:8px;z-index:9999;max-width:90%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.training-registration-detail{min-height:100vh;background:#f4f5f8;display:flex;flex-direction:column}.training-registration-detail.loading{justify-content:center;align-items:center}.training-registration-detail.loading .loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:reg-detail-spin 1s linear infinite}.training-registration-detail.loading p{margin-top:12px;font-size:14px;color:#666}@keyframes reg-detail-spin{to{transform:rotate(360deg)}}.detail-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}.detail-empty p{margin:0 0 16px;font-size:14px;color:#999}.reg-detail-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;align-items:center;padding:12px 0 80px;box-sizing:border-box}.reg-detail-card.reg-detail-summary{width:calc(100vw * 350 / 375);height:314px;min-height:314px;background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000f;overflow:hidden;display:flex;flex-direction:column;margin-bottom:12px;flex-shrink:0;padding-top:12px;box-sizing:border-box}.reg-detail-carousel-outer{position:relative;width:calc(100vw * 320 / 375);height:180px;margin:0 auto;flex-shrink:0;overflow:hidden;box-sizing:border-box}.reg-detail-carousel-wrap{width:100%;height:100%;position:relative;background:#e8e8e8;overflow:hidden;box-sizing:border-box}.reg-detail-carousel-wrap.reg-detail-carousel-wrap-scroll{overflow-x:scroll;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.reg-detail-carousel-wrap.reg-detail-carousel-wrap-scroll::-webkit-scrollbar{display:none}.reg-detail-carousel{display:flex;height:100%}.reg-detail-carousel-slide{flex:0 0 100%;min-width:0;height:100%;scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden}.reg-detail-carousel-img{width:100%;height:100%;object-fit:cover;display:block;vertical-align:top}.reg-detail-carousel-placeholder{width:100%;height:100%;background:#e8e8e8}.reg-detail-carousel-dots{position:absolute;bottom:8px;left:0;right:0;display:flex;justify-content:center;gap:6px;z-index:2;pointer-events:none}.reg-detail-carousel-dots .reg-detail-dot{pointer-events:auto}.reg-detail-dot{width:6px;height:6px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:background .2s}.reg-detail-dot.active{background:#fff}.reg-detail-summary-body{flex:1;padding:12px 12px 15px;min-height:0;display:flex;flex-direction:column}.reg-detail-title{color:#333;font-size:14px;font-family:Roboto,-apple-system,sans-serif;font-weight:500;word-wrap:break-word;margin:0 0 8px;line-height:1.4}.reg-detail-meta{color:#999;font-size:12px;font-family:Roboto,-apple-system,sans-serif;font-weight:400;line-height:16px;word-wrap:break-word}.reg-detail-meta-label{color:#333}.reg-detail-meta-value{color:#999}.reg-detail-meta-num{color:#5082fd}.reg-detail-card.reg-detail-content{width:calc(100vw * 350 / 375);background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000f;padding:16px;box-sizing:border-box}.reg-detail-section-title{margin:0 0 12px;font-size:15px;font-weight:600;color:#333;font-family:Roboto,-apple-system,sans-serif}.reg-detail-description{font-size:14px;line-height:1.6;color:#666;white-space:pre-wrap;word-break:break-word;margin-bottom:12px;font-family:Roboto,-apple-system,sans-serif}.reg-detail-intro-images{display:flex;flex-direction:column;gap:12px}.reg-detail-intro-img{width:100%;border-radius:8px;display:block;object-fit:cover;max-height:50vh}.reg-detail-footer{position:fixed;bottom:0;left:0;right:0;padding:12px calc(100vw * 12.5 / 375);padding-bottom:calc(12px + env(safe-area-inset-bottom,0));background:#f4f5f8;box-sizing:border-box}.reg-detail-register-btn{width:100%;max-width:calc(100vw * 350 / 375);margin:0 auto;display:block;height:44px;border:none;background:linear-gradient(180deg,#69f,#5082fd);color:#fff;border-radius:22px;font-size:16px;font-weight:500;cursor:pointer}.reg-detail-register-btn:active{opacity:.95}.reg-detail-register-btn.is-disabled,.reg-detail-register-btn:disabled{opacity:.7;cursor:not-allowed;background:#999}.reg-detail-toast{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 24px;background:#000000bf;color:#fff;font-size:14px;border-radius:8px;z-index:9999;max-width:90%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.form-field-settings{display:flex;flex-direction:column;gap:12px}.form-field-settings-title{font-size:14px;font-weight:500;color:#333;margin:0}.form-field-settings-list{display:flex;flex-direction:column;gap:0;border:1px solid #E5E5E5;border-radius:8px;overflow:hidden;background:#fff}.form-field-settings-row{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-bottom:1px solid #F0F0F0;cursor:grab;transition:background .15s}.form-field-settings-row:last-child{border-bottom:none}.form-field-settings-row:hover{background:#fafafa}.form-field-settings-row:active{cursor:grabbing}.form-field-settings-row-dragging{opacity:.6;cursor:grabbing;background:#f5f5f5}.form-field-settings-label{flex:1;font-size:14px;color:#333;min-width:0}.form-field-settings-switches{display:flex;align-items:center;gap:12px;flex-shrink:0}.form-field-settings-toggle{padding:4px 12px;min-width:44px;height:28px;border:1px solid #D9D9D9;border-radius:14px;background:#fff;font-size:12px;color:#999;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.form-field-settings-toggle.is-on,.form-field-settings-toggle-required.is-on{border-color:#5082fd;background:#eff4ff;color:#5082fd}.form-field-settings-toggle-text{display:inline-block}.form-field-settings-drag{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:#bfbfbf;cursor:grab}.form-field-settings-drag:active{cursor:grabbing}.form-field-settings-drag-dots{font-size:14px;letter-spacing:-3px;line-height:1;user-select:none;opacity:.7}.training-registration-apply{min-height:100vh;background:#f4f5f8;display:flex;flex-direction:column}.training-registration-apply input,.training-registration-apply select,.training-registration-apply textarea{border:none!important;outline:none!important;box-shadow:none!important}.training-registration-apply input:focus,.training-registration-apply input:focus-visible,.training-registration-apply select:focus,.training-registration-apply select:focus-visible,.training-registration-apply textarea:focus,.training-registration-apply textarea:focus-visible{border:none!important;outline:none!important;box-shadow:none!important;outline-offset:0}.apply-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}.apply-empty p{margin:0 0 16px;font-size:14px;color:#999}.btn-secondary{padding:8px 20px;border:1px solid #5082FD;background:#fff;color:#5082fd;border-radius:8px;font-size:14px;cursor:pointer}.apply-header{background:#fff;padding:16px;box-shadow:0 1px 4px #0000000f}.apply-header h1{margin:0;font-size:18px;font-weight:600;color:#333}.apply-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 16px 80px}.apply-form{display:flex;flex-direction:column;gap:0}.apply-section{margin-bottom:16px}.apply-section-title{margin:0 0 8px;font-size:15px;font-weight:600;color:#333}.apply-card{width:92vw;max-width:100%;margin:0 auto;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 4px #0000000f}.form-row{display:flex;align-items:center;min-height:44px;padding:0 12px;background:#fff;border-bottom:1px solid #F0F0F0;box-sizing:border-box}.apply-card .form-row:first-child{border-top-left-radius:10px;border-top-right-radius:10px}.apply-card .form-row:last-child{border-bottom:none;border-bottom-left-radius:10px;border-bottom-right-radius:10px}.form-row-textarea,.form-row-upload{height:auto;min-height:44px;padding-top:10px;padding-bottom:10px}.form-row-textarea{align-items:flex-start}.form-row-label-wrap{align-items:flex-start;min-height:auto;padding-top:10px;padding-bottom:10px}.form-row-label-wrap .form-label{width:100px;min-width:100px;white-space:normal;word-break:break-word;line-height:1.4;padding-top:4px}.form-label{flex-shrink:0;width:100px;min-width:100px;display:flex;align-items:center;gap:4px;font-family:Roboto,-apple-system,sans-serif;font-size:12px;font-weight:400;color:#333;letter-spacing:2.4px;word-wrap:break-word}.form-label.required:after{content:"*";color:#eb5846;font-size:12px;flex-shrink:0}.form-cell{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-start}.form-row-textarea .form-cell{align-items:flex-start;justify-content:flex-start}.form-input,.form-select,.form-textarea{width:100%;max-width:100%;margin-top:6px;margin-bottom:6px;padding:8px 12px;border:none!important;outline:none!important;box-shadow:none!important;font-family:Roboto,-apple-system,sans-serif;font-size:12px;font-weight:400;color:#333;background:#fafafa;border-radius:6px;box-sizing:border-box;text-align:left;-webkit-appearance:none;appearance:none}.form-input:focus,.form-input:focus-visible,.form-select:focus,.form-select:focus-visible,.form-textarea:focus,.form-textarea:focus-visible{border:none!important;outline:none!important;box-shadow:none!important;outline-offset:0}.form-input::placeholder,.form-textarea::placeholder{color:#999;text-align:left}.form-textarea{resize:none;min-height:60px;text-align:left}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;padding-right:18px}.form-select-placeholder{color:#999}.form-hint{margin:4px 0 0;font-size:12px;color:#999;text-align:right}.form-value{width:100%;font-family:Roboto,-apple-system,sans-serif;font-size:12px;font-weight:400;color:#333;text-align:left;word-break:break-all}.form-row-textarea .form-value{white-space:pre-wrap;word-break:break-word}.form-radio-group{display:flex;gap:16px;align-items:center;justify-content:flex-start}.form-radio{display:flex;align-items:center;gap:6px;font-size:12px;color:#333;cursor:pointer}.form-radio input{width:16px;height:16px}.form-file-input{display:none}.form-upload-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:56px;width:100%;max-width:100%;border:1px dashed #D9D9D9;border-radius:8px;background:#fafafa;cursor:pointer}.form-upload-box.is-uploading{opacity:.7;pointer-events:none}.form-upload-box.has-image{padding:8px}.form-upload-preview{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}.form-upload-thumb{display:block;max-width:100%;max-height:120px;width:auto;height:auto;object-fit:contain;border-radius:6px;background:#fff}.form-upload-icon{font-size:20px;color:#999;line-height:1}.form-upload-text{font-size:12px;color:#999;margin-top:4px}.form-upload-done{font-size:12px;color:#5082fd}.form-segmented{display:flex;border:1px solid #E5E5E5;border-radius:8px;overflow:hidden}.form-segmented-btn{flex:1;padding:8px 12px;border:none;background:#fff;font-size:12px;color:#666;cursor:pointer}.form-segmented-btn.active{background:#5082fd;color:#fff}.apply-footer{position:fixed;bottom:0;left:0;right:0;display:flex;gap:12px;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0));background:#f4f5f8}.apply-btn-draft{flex:1;height:44px;border:1px solid #D9D9D9;border-radius:22px;background:#fff;font-size:16px;color:#666;cursor:pointer}.apply-btn-draft:disabled{opacity:.6;cursor:not-allowed}.apply-btn-submit{flex:1;height:44px;border:none;border-radius:22px;background:linear-gradient(180deg,#69f,#5082fd);font-size:16px;font-weight:500;color:#fff;cursor:pointer}.apply-btn-submit:active{opacity:.95}.apply-btn-submit:disabled{opacity:.6;cursor:not-allowed}.apply-toast{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 24px;background:#000000bf;color:#fff;font-size:14px;border-radius:8px;z-index:9999;max-width:90%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.apply-toast-error{background:#c83232e6}.quality-courses{min-height:100vh;background:#f4f5f8;display:flex;flex-direction:column}.courses-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:3.2vw calc(100vw * 16 / 375);padding-bottom:6.4vw}.courses-loading,.courses-error,.courses-empty{text-align:center;padding:60px 20px;color:#999;font-size:14px}.courses-error{color:#f56565}.courses-grid{display:grid;grid-template-columns:repeat(2,44vw);gap:4vw;justify-content:center}.courses-card{width:44vw;height:calc(100vw * 269 / 375);background:#fff;border-radius:calc(100vw * 8 / 375);overflow:hidden;box-shadow:0 2px 8px #1f26741a;display:flex;flex-direction:column;cursor:pointer;flex-shrink:0}.courses-cover-wrap{position:relative;width:100%;height:calc(100vw * 220 / 375);flex-shrink:0;background:#000;overflow:hidden}.courses-cover{width:100%;height:100%;object-fit:cover;display:block}.courses-play-overlay{position:absolute;bottom:1.6vw;left:1.6vw;display:flex;align-items:center;gap:calc(100vw * 4 / 375);background:#00000080;color:#fff;padding:calc(100vw * 2 / 375) 1.6vw;border-radius:calc(100vw * 4 / 375);font-size:calc(100vw * 11 / 375)}.courses-play-icon{display:inline-flex;align-items:center}.courses-play-icon svg{width:12px;height:9px;flex-shrink:0}.courses-play-num{font-weight:500}.courses-duration{position:absolute;bottom:1.6vw;right:1.6vw;background:#000000b3;color:#fff;padding:calc(100vw * 2 / 375) 1.6vw;border-radius:calc(100vw * 4 / 375);font-size:calc(100vw * 11 / 375)}.courses-info{flex:1;min-height:0;padding:1.6vw calc(100vw * 8 / 375);display:flex;align-items:center}.courses-card-title{font-size:3.2vw;color:#333;font-weight:500;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.video-detail{min-height:100vh;min-height:100dvh;background:#000;padding-bottom:env(safe-area-inset-bottom,0)}.video-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#fff}.video-detail-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:video-detail-spin 1s linear infinite}@keyframes video-detail-spin{to{transform:rotate(360deg)}}.video-detail-loading p{margin-top:12px;font-size:14px;color:#fffc}.video-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;color:#ffffffe6}.video-detail-empty p{margin-bottom:16px;font-size:14px;text-align:center}.video-detail-back-btn{padding:10px 24px;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:8px;font-size:14px;cursor:pointer}.video-detail-back-btn:active{opacity:.9}.video-detail-stack{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;cursor:pointer}.video-detail-stack-playing{cursor:pointer}.video-detail-player-wrap{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:#000}.video-detail-video{width:100%;height:100%;object-fit:contain;display:block}.video-detail-video::-webkit-media-controls{display:none!important}.video-detail-video::-webkit-media-controls-enclosure{display:none!important}.video-detail-play-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;background:#00000080;color:#fff;display:flex;align-items:center;justify-content:center;pointer-events:none}.video-detail-play-icon{font-size:24px;line-height:1;color:#fff;margin-left:4px}.video-detail-info{flex-shrink:0;padding:12px 16px;background:#000;color:#fff}.video-detail-title{margin:0 0 6px;font-size:16px;font-weight:600;line-height:1.4;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.video-detail-count{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#ffffffb3}.video-detail-count-icon{display:inline-flex;align-items:center;line-height:1;color:#ffffffb3}.video-detail-count-icon svg{width:12px;height:9px;flex-shrink:0}.video-detail-progress-wrap{flex-shrink:0;padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0));cursor:pointer}.video-detail-progress-wrap:focus{outline:none}.video-detail-progress-track{position:relative;height:4px;background:#ffffff4d;border-radius:2px;overflow:visible}.video-detail-progress-fill{position:absolute;left:0;top:0;bottom:0;background:#fff;border-radius:2px}.video-detail-progress-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 0 2px #0000004d}.captcha-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.captcha-modal-content{background:#fff;border-radius:8px;width:100%;max-width:360px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 24px #00000026;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.captcha-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0}.captcha-modal-title{font-size:18px;font-weight:500;color:#333;margin:0;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.captcha-modal-close{background:none;border:none;font-size:24px;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;line-height:1;transition:color .3s}.captcha-modal-close:hover{color:#333}.captcha-modal-body{padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.captcha-element-wrapper{width:100%;display:flex;justify-content:center;align-items:center}.captcha-element-container{width:100%;min-height:200px;display:flex;justify-content:center;align-items:center}.captcha-success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0}.captcha-success-icon{width:60px;height:60px;border-radius:50%;background:#4caf50;color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;margin-bottom:16px}.captcha-success-text{font-size:16px;color:#4caf50;font-weight:500;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (max-width: 480px){.captcha-modal-content{width:100vw;max-width:none;border-radius:0;box-shadow:none;border-left:1px solid #e0e0e0;border-right:1px solid #e0e0e0}.captcha-modal-header{padding:calc(100vw * 20 / 375) calc(100vw * 20 / 375) calc(100vw * 16 / 375)}.captcha-modal-title{font-size:4.8vw}.captcha-modal-close{font-size:calc(100vw * 32 / 375);width:calc(100vw * 32 / 375);height:calc(100vw * 32 / 375)}.captcha-modal-body{padding:6.4vw;min-height:calc(100vw * 200 / 375)}.captcha-element-container{min-height:calc(100vw * 200 / 375)}.captcha-success{padding:calc(100vw * 40 / 375) 0}.captcha-success-icon{width:16vw;height:16vw;font-size:9.6vw;margin-bottom:calc(100vw * 16 / 375)}.captcha-success-text{font-size:calc(100vw * 16 / 375)}}.normal-user-login-container{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:0;background:#fff}.normal-user-login-form{width:100%;max-width:100vw;background:#fff;padding:0;display:flex;flex-direction:column;align-items:center}.login-tabs{display:none;border-bottom:1px solid #e0e0e0;margin-bottom:24px}.tab-item{flex:1;padding:12px 0;background:none;border:none;font-size:16px;color:#666;cursor:pointer;position:relative;transition:color .3s}.tab-item:hover{color:#333}.tab-item.active{color:#007bff;font-weight:500}.tab-item.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#007bff}.password-input-group{display:flex;align-items:center;width:100%;max-width:76vw;margin:0 auto;min-height:calc(100vw * 44 / 375);box-sizing:border-box}.password-input{flex:1;border:none;background:transparent;color:#333;font-size:calc(100vw * 16 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;word-wrap:break-word;outline:none;padding:3.2vw 0;line-height:calc(100vw * 20 / 375);height:100%;box-sizing:border-box;min-width:0}.password-toggle-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:calc(100vw * 4 / 375);cursor:pointer;flex-shrink:0;color:#999}.eye-icon{width:calc(100vw * 20 / 375);height:calc(100vw * 20 / 375)}.login-options{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:80vw;margin:0 auto calc(100vw * 20 / 375) auto;box-sizing:border-box}.login-options.login-options-single{justify-content:flex-start!important}.sms-login-link,.forgot-password-link{color:#1f2674;font-size:3.2vw;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;word-wrap:break-word;text-decoration:none}.sms-login-link{text-align:left;flex-shrink:0;margin-right:auto}.forgot-password-link{text-align:right;flex-shrink:0;margin-left:auto}.captcha-group{width:100%;max-width:76vw;margin:0 auto 3.2vw;box-sizing:border-box}.captcha-element-container{width:100%;min-height:calc(100vw * 40 / 375);box-sizing:border-box}.captcha-refresh-wrapper{display:flex;justify-content:flex-end;width:100%;max-width:76vw;margin:0 auto 3.2vw;box-sizing:border-box}.captcha-refresh-button{background:none;border:none;cursor:pointer;padding:calc(100vw * 4 / 375);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s}.captcha-refresh-icon{width:calc(100vw * 20 / 375);height:calc(100vw * 20 / 375);display:block}.captcha-refresh-button:hover{transform:rotate(180deg)}.captcha-refresh-button:active{transform:rotate(360deg)}@media (max-width: 768px){.normal-user-login-container{padding:20px}.logo-circle{width:100px;height:100px}.logo-text-en{font-size:9px}.logo-text-cn{font-size:13px}.captcha-image{height:140px}}.normal-user-login-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 24px;background:#000c;color:#fff;border-radius:8px;font-size:14px;z-index:9999;max-width:80%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.normal-user-register-container{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:0;background:#fff}.normal-user-register-form{width:100%;max-width:100vw;background:#fff;padding:0;display:flex;flex-direction:column;align-items:center}.phone-input-group{display:flex;align-items:center;width:100%;max-width:76vw;margin:0 auto;min-height:calc(100vw * 44 / 375);padding:3.2vw 0;box-sizing:border-box}.phone-prefix{color:#333;font-size:calc(100vw * 16 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;word-wrap:break-word;margin-right:calc(100vw * 8 / 375);flex-shrink:0;line-height:1}.phone-separator{width:calc(100vw * .5 / 375);height:calc(100vw * 20 / 375);background:#d8d8d8;border:calc(100vw * 1 / 375) solid #979797;margin-right:calc(100vw * 8 / 375);flex-shrink:0;box-sizing:border-box}.phone-input{flex:1;border:none;background:transparent;color:#333;font-size:calc(100vw * 16 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;word-wrap:break-word;outline:none;padding:0;min-width:0;line-height:calc(100vw * 20 / 375);height:100%}.phone-input::placeholder{color:#999;font-size:calc(100vw * 14 / 375);font-weight:400}.password-input-group{width:100%;max-width:76vw;margin:0 auto;min-height:calc(100vw * 44 / 375);box-sizing:border-box}.password-input{width:100%;border:none;background:transparent;color:#333;font-size:calc(100vw * 16 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;word-wrap:break-word;outline:none;padding:3.2vw 0;line-height:calc(100vw * 20 / 375);height:100%;box-sizing:border-box}.password-input::placeholder{color:#999;font-size:calc(100vw * 14 / 375);font-weight:400}.sms-code-input-group-wrapper{display:flex;align-items:center;width:100%;max-width:76vw;margin:0 auto;gap:3.2vw;min-height:calc(100vw * 44 / 375);padding:3.2vw 0;box-sizing:border-box}.sms-code-input-field{flex:1;border:none;background:transparent;color:#333;font-size:calc(100vw * 16 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;word-wrap:break-word;outline:none;padding:0;min-width:0;line-height:calc(100vw * 20 / 375)}.sms-code-input-field::placeholder{color:#999;font-size:calc(100vw * 14 / 375);font-weight:400}.send-code-button{min-width:calc(100vw * 80 / 375);width:auto;height:6.4vw;padding:0 calc(100vw * 8 / 375);background:#fff;border-radius:.8vw;font-size:3.2vw;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;cursor:pointer;white-space:nowrap;transition:all .3s;flex-shrink:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.send-code-button-disabled{opacity:.4;color:#a3a3a3;border:1px solid #a3a3a3;background:#fff;cursor:not-allowed}.send-code-button-enabled{opacity:1;color:#3b82f6;border:1px solid #3b82f6;background:#fff;cursor:pointer}.send-code-button-enabled:hover:not(:disabled){opacity:.9}.send-code-button-countdown{opacity:.4;color:#a3a3a3;border:1px solid #a3a3a3;background:#fff;cursor:not-allowed}.send-code-button:disabled{cursor:not-allowed;background:#fff}.login-button{width:80vw;height:calc(100vw * 44 / 375);background:linear-gradient(180deg,#69f,#5082fd);color:#fff;border:none;border-radius:calc(100vw * 22 / 375);font-size:20px;font-weight:500;cursor:pointer;transition:all .3s;margin:calc(100vw * 20 / 375) auto;display:block;box-sizing:border-box}.recipient-register-container .send-code-button-enabled{color:#fff;border-color:#ff981e;background:#ff981e}.recipient-register-container .send-code-button-enabled:hover:not(:disabled){color:#fff;border-color:#ff981e;background:#ff981e;opacity:.9}.recipient-register-container .recipient-next-button:not(:disabled){background:#ff981e}.recipient-register-container .recipient-next-button:hover:not(:disabled){background:#ff981e;opacity:.9}.register-link{text-align:center;margin-top:calc(100vw * 16 / 375)}.register-link a{color:#1f2674;font-size:calc(100vw * 14 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;word-wrap:break-word;text-decoration:none}@media (max-width: 768px){.normal-user-register-container{padding:20px}.logo-icon{width:100px;height:100px}}.normal-user-reset-password-container{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:0;background:#fff}.normal-user-reset-password-form{width:100%;max-width:400px;background:#fff;padding:0;margin-top:calc(100vw * 50 / 375)}.reset-password-logo{display:flex;flex-direction:column;align-items:center;margin-bottom:40px}.logo-circle{width:120px;height:120px;border-radius:50%;background:#007bff;display:flex;align-items:center;justify-content:center;margin-bottom:20px;position:relative;box-shadow:0 2px 8px #007bff4d}.logo-circle:before{content:"";position:absolute;width:100%;height:100%;border-radius:50%;border:2px solid rgba(255,255,255,.3);box-sizing:border-box}.logo-icon{width:100%;height:100%;object-fit:cover;border-radius:50%;z-index:1}.logo-text{text-align:center}.logo-text-en{font-size:10px;color:#666;margin-bottom:4px;letter-spacing:.5px}.logo-text-cn{font-size:14px;color:#333;font-weight:500}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:8px;font-size:14px;color:#333;font-weight:500}.form-input{width:100%;padding:14px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:16px;box-sizing:border-box;background:#f8f9fa;color:#333;transition:all .3s}.form-input:focus{outline:none;border-color:#007bff;background:#fff;box-shadow:0 0 0 3px #007bff1a}.form-input::placeholder{color:#999}.sms-code-input-group{display:flex;gap:12px}.sms-code-input{flex:1}.send-code-button{padding:14px 24px;background:#007bff;color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;white-space:nowrap;transition:background .3s}.send-code-button:hover:not(:disabled){background:#0056b3}.send-code-button:disabled{background:#ccc;cursor:not-allowed}.normal-user-reset-password-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 24px;background:#000c;color:#fff;border-radius:8px;font-size:14px;z-index:9999;max-width:80%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.reset-password-button{width:100%;padding:14px;background:#007bff;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:background .3s;margin-top:10px}.reset-password-button:hover:not(:disabled){background:#0056b3}.reset-password-button:disabled{background:#ccc;cursor:not-allowed}.reset-password-footer{display:flex;justify-content:center;margin-top:16px}.reset-password-footer a{color:#666;font-size:14px;text-decoration:none;transition:color .3s}.reset-password-footer a:hover{color:#007bff}.reset-section-title{width:100%;max-width:400px;margin:0 auto 8px;font-size:14px;font-weight:500;color:#333;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-sizing:border-box}@media (max-width: 768px){.normal-user-reset-password-container{padding:20px}.logo-circle{width:100px;height:100px}.logo-text-en{font-size:9px}.logo-text-cn{font-size:13px}}.complete-user-info-container{display:flex;justify-content:center;align-items:flex-start;min-height:100vh;padding:0;background:#fff}.complete-user-info-form{width:100%;max-width:100vw;background:#fff;padding:0;display:flex;flex-direction:column;align-items:center}.login-logo{display:flex;justify-content:center;margin-top:calc(100vw * 50 / 375);margin-bottom:calc(100vw * 40 / 375)}.logo-icon{width:calc(100vw * 100 / 375)!important;height:calc(100vw * 100 / 375)!important;min-width:calc(100vw * 100 / 375);min-height:calc(100vw * 100 / 375);max-width:calc(100vw * 100 / 375);max-height:calc(100vw * 100 / 375);object-fit:contain;display:block;box-sizing:border-box}.login-form{width:100%;max-width:80vw;margin:0 auto;display:flex;flex-direction:column;gap:0}.input-field-group{width:100%;max-width:76vw;margin:0 auto;display:flex;flex-direction:column}.input-field-label{font-size:calc(100vw * 10 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;color:#333;margin-bottom:calc(100vw * 8 / 375);text-align:left}.required-asterisk{color:#dc3545;margin-left:2px}.text-input-group{width:100%;min-height:calc(100vw * 44 / 375);box-sizing:border-box}.text-input{width:100%;border:none;background:transparent;color:#333;font-size:calc(100vw * 16 / 375);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;word-wrap:break-word;outline:none;padding:3.2vw 0;line-height:calc(100vw * 20 / 375);height:100%;box-sizing:border-box}.text-input::placeholder{color:#999;font-size:calc(100vw * 14 / 375);font-weight:400}.input-separator{width:76vw;height:calc(100vw * .5 / 375);opacity:.5;background:#999;margin:0 auto;margin-bottom:3.2vw;flex-shrink:0}.error-message{color:#dc3545;font-size:14px;margin-bottom:15px;padding:10px;background:#f8d7da;border-radius:4px;text-align:center}.login-button{width:80vw;height:calc(100vw * 44 / 375);background:linear-gradient(180deg,#69f,#5082fd);color:#fff;border:none;border-radius:calc(100vw * 22 / 375);font-size:20px;font-weight:500;cursor:pointer;transition:all .3s;margin:calc(100vw * 20 / 375) auto;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.login-button:hover:not(:disabled){opacity:.9}.login-button:disabled{background:#999;cursor:not-allowed;opacity:1}@media (max-width: 768px){.complete-user-info-container{padding:20px}.logo-icon{width:100px;height:100px}}.wechat-callback{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f5f5f5}.callback-status{text-align:center;padding:40px}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.success-icon{width:50px;height:50px;background:#28a745;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;margin:0 auto 20px}.error-icon{width:50px;height:50px;background:#dc3545;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;margin:0 auto 20px}.callback-status p{margin:10px 0;color:#333;font-size:16px}.retry-button{margin-top:20px;padding:10px 20px;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.membership-inquiry{min-height:100vh;padding:20px 16px 32px;box-sizing:border-box;background:#f5f6f8}.membership-inquiry__header{margin-bottom:20px}.membership-inquiry__title{margin:0 0 8px;font-size:20px;font-weight:600;color:#1a1a1a}.membership-inquiry__subtitle{margin:0;font-size:14px;color:#666;line-height:1.5}.membership-inquiry__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.membership-inquiry__card{width:100%;text-align:left;padding:14px 16px;border:1px solid #e5e6eb;border-radius:10px;background:#fff;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:border-color .15s ease,box-shadow .15s ease}.membership-inquiry__card--active{border-color:#1677ff;box-shadow:0 0 0 1px #1677ff33}.membership-inquiry__card-label{font-size:16px;font-weight:600;color:#1a1a1a}.membership-inquiry__card-desc{font-size:13px;color:#888;line-height:1.45}.membership-inquiry__placeholder{margin-top:24px;padding:12px 14px;font-size:13px;color:#666;background:#fff;border-radius:8px;border:1px dashed #d0d3d9}.web-home{min-height:100vh;background:linear-gradient(180deg,#5082fd,#69f 30%,#f4f5f8 30%);padding:48px 24px 24px;box-sizing:border-box}.web-home-header{text-align:center;margin-bottom:40px}.web-home-header h1{margin:0;font-size:28px;font-weight:600;color:#fff;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-home-subtitle{margin:8px 0 0;font-size:14px;color:#ffffffe6;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-home-content{max-width:400px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.web-home-entry-card{display:flex;align-items:center;width:100%;padding:20px 24px;background:#fff;border:none;border-radius:16px;box-shadow:0 2px 12px #00000014;cursor:pointer;text-align:left;transition:box-shadow .2s,transform .2s;box-sizing:border-box}.web-home-entry-card:hover{box-shadow:0 4px 20px #0000001f;transform:translateY(-1px)}.web-home-entry-card:active{transform:translateY(0)}.web-home-entry-icon{width:48px;height:48px;margin-right:16px;flex-shrink:0;object-fit:contain}.web-home-entry-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.web-home-entry-label{font-size:16px;font-weight:600;color:#333;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-home-entry-desc{font-size:13px;color:#666;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-home-entry-arrow{font-size:18px;color:#5082fd;flex-shrink:0}.web-admin-layout-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:#f4f5f8}.web-admin-layout-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:web-admin-layout-spin 1s linear infinite}@keyframes web-admin-layout-spin{to{transform:rotate(360deg)}}.web-admin-layout-loading p{margin-top:16px;color:#666;font-size:14px}.web-admin-layout{display:flex;flex-direction:column;height:100vh;min-height:100vh;overflow:hidden;background:#f0f2f5}.web-admin-layout-top{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 24px;background:#fff;box-shadow:0 1px 4px #00000014;flex-shrink:0}.web-admin-layout-top-left{display:flex;align-items:center;gap:12px}.web-admin-layout-logo{width:36px;height:36px;object-fit:cover;border-radius:50%;flex-shrink:0}.web-admin-layout-brand{font-size:16px;font-weight:600;color:#1a1a1a}.web-admin-layout-top-right{display:flex;align-items:center;gap:16px}.web-admin-layout-account{font-size:13px;color:#333}.web-admin-layout-logout{padding:6px 16px;font-size:14px;color:#666;background:#f5f5f5;border:none;border-radius:18px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}.web-admin-layout-logout:hover{color:#5082fd;background:#5082fd1a}.web-admin-layout-body{display:flex;flex:1;min-height:0;overflow:hidden}.web-admin-layout-sidebar{width:220px;flex-shrink:0;background:#fff;border-right:1px solid #e8e8e8;overflow-y:auto;overflow-x:hidden}.web-admin-layout-nav{display:flex;flex-direction:column;padding:12px 0}.web-admin-layout-nav-item{display:flex;align-items:center;gap:12px;padding:12px 20px;font-size:14px;color:#333;text-decoration:none;transition:background .2s,color .2s}.web-admin-layout-nav-item:hover{background:#f5f5f5;color:#5082fd}.web-admin-layout-nav-item-active{background:#5082fd;color:#fff;font-weight:500}.web-admin-layout-nav-item-active:hover{background:#3d6be0;color:#fff}.web-admin-layout-nav-icon{width:22px;height:22px;flex-shrink:0;object-fit:contain}.web-admin-layout-nav-label{flex:1;min-width:0}.web-admin-layout-nav-badge{flex-shrink:0;min-width:20px;height:20px;padding:0 6px;font-size:12px;line-height:20px;text-align:center;color:#fff;background:#ff4d4f;border-radius:10px}.web-admin-layout-nav-group{margin-bottom:4px}.web-admin-layout-nav-group-header{display:flex;align-items:center;gap:12px;width:100%;padding:12px 20px;font-size:14px;color:#333;background:none;border:none;cursor:pointer;text-align:left;transition:background .2s,color .2s;font-family:inherit}.web-admin-layout-nav-group-header:hover{background:#f5f5f5;color:#5082fd}.web-admin-layout-nav-group-header-active{color:#5082fd;font-weight:500}.web-admin-layout-nav-group-arrow{flex-shrink:0;font-size:10px;color:#999}.web-admin-layout-nav-group-children{display:flex;flex-direction:column;padding-left:34px;padding-bottom:4px}.web-admin-layout-nav-subitem{display:flex;align-items:center;gap:12px;padding:12px 20px;font-size:14px;color:#333;text-decoration:none;transition:color .2s,background .2s}.web-admin-layout-nav-subitem:hover{background:#f5f5f5;color:#5082fd}.web-admin-layout-nav-subitem-active{background:#5082fd;color:#fff;font-weight:500}.web-admin-layout-nav-subitem-active:hover{background:#3d6be0;color:#fff}.web-admin-layout-main{flex:1;min-width:0;overflow:auto;padding:24px;background:#f0f2f5}.web-admin-layout-main .donation-batch-review-footer{left:244px;right:24px}.web-admin-breadcrumb{display:flex;align-items:center;padding:12px 16px;margin:-24px -24px 20px;background:#fff;border-bottom:1px solid #e8e8e8;font-size:14px}.web-admin-breadcrumb-home{color:#5082fd;text-decoration:none;transition:color .2s}.web-admin-breadcrumb-home:hover{color:#3a6bd8}.web-admin-breadcrumb-back{display:flex;align-items:center;gap:4px;color:#5082fd;text-decoration:none;transition:color .2s}.web-admin-breadcrumb-back:hover{color:#3a6bd8}.web-admin-breadcrumb-back-icon{font-size:16px}.web-admin-breadcrumb-separator{margin:0 8px;color:#ccc}.web-admin-breadcrumb-link{color:#5082fd;text-decoration:none;transition:color .2s}.web-admin-breadcrumb-link:hover{color:#3a6bd8}.web-admin-breadcrumb-current{color:#333;font-weight:500}.web-admin-breadcrumb-subtitle{margin-left:auto;font-size:14px;color:#666;font-weight:400}.web-admin-layout-logout-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;padding:20px;box-sizing:border-box}.web-admin-layout-logout-modal{background:#fff;border-radius:12px;padding:24px;width:100%;max-width:300px;box-sizing:border-box;box-shadow:0 4px 24px #00000026}.web-admin-layout-logout-modal-text{margin:0 0 24px;font-size:16px;color:#333;text-align:center}.web-admin-layout-logout-modal-btns{display:flex;gap:12px;justify-content:center}.web-admin-layout-logout-modal-btn{flex:1;padding:10px 20px;font-size:15px;border-radius:8px;cursor:pointer;border:none;transition:all .2s}.web-admin-layout-logout-modal-btn.cancel{color:#666;background:#f0f0f0}.web-admin-layout-logout-modal-btn.cancel:hover{background:#e0e0e0}.web-admin-layout-logout-modal-btn.confirm{color:#fff;background:#5082fd}.web-admin-layout-logout-modal-btn.confirm:hover{background:#4070e0}.web-admin{min-height:100vh;background:#f4f5f8;padding-bottom:48px}.web-admin-header{position:relative;height:180px}.web-admin-header-bg{position:absolute;inset:0;background:linear-gradient(180deg,#5082fd,#69f);border-radius:0 0 20px 20px}.web-admin-header-title{position:relative;z-index:1;padding:48px 32px 0}.web-admin-header-title h1,.web-admin-header-title h2{margin:0;font-size:24px;font-weight:600;color:#fff;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-admin-header-title h2{font-size:16px;opacity:.95;margin-top:4px}.web-admin-dashboard .web-admin-main{margin-top:0;padding:0 0 24px;max-width:100%}.web-admin-dashboard-title{margin:0 0 20px;font-size:18px;font-weight:600;color:#1a1a1a;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif}.web-admin-main{position:relative;z-index:1;margin-top:-24px;padding:0 24px 24px;max-width:1210px;margin-left:auto;margin-right:auto}.web-admin-top{display:flex;gap:20px;margin-bottom:24px}.web-admin-top-card{flex:1;min-width:0;background:#fff;border-radius:10px;padding:20px 24px;cursor:pointer;transition:box-shadow .2s;position:relative;min-height:215px;display:flex;flex-direction:column}.web-admin-top-card:hover{box-shadow:0 2px 12px #00000014}.web-admin-top-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.web-admin-top-card-title{font-size:15px;font-weight:500;color:#333;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif;position:relative;display:inline-block;z-index:1}.web-admin-top-card-title:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:4px;background:#69f;z-index:-1}.web-admin-top-card-detail{font-size:12px;font-weight:400;color:#333;cursor:pointer;transition:color .2s;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif}.web-admin-top-card-detail:hover{color:#5082fd}.web-admin-top-card-stats{display:flex;flex:1;align-items:stretch}.web-admin-top-card-stat-divider{width:1px;background:#e8e8e8;margin:0 24px;align-self:stretch}.web-admin-top-card-stat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}.web-admin-top-card-num-row{display:flex;align-items:baseline;justify-content:center;gap:6px;margin-bottom:8px}.web-admin-top-card-num{font-size:60px;font-weight:500;line-height:1.2;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif}.web-admin-top-card-unit{font-size:12px;font-weight:400;color:#666;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif}.web-admin-top-card-status{font-size:15px;font-weight:500;color:#333;text-align:center;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif}.web-admin-top-card-num-blue{color:#5082fd}.web-admin-top-card-num-red{color:#eb5846}.web-admin-grid-wrap{margin-bottom:24px;background:#fff;border-radius:10px;padding:24px}.web-admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.web-admin-grid-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;cursor:pointer;border-radius:8px;transition:background .2s;min-height:160px}.web-admin-grid-item:hover{background:#f9f9f9}.web-admin-grid-icon{width:44px;height:44px;object-fit:contain}.web-admin-grid-icon-wrap{width:65px;height:65px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;position:relative}.web-admin-grid-icon-bg{position:absolute;inset:0;background:linear-gradient(180deg,#9fc9ff,#69f);border-radius:25px;opacity:.1}.web-admin-grid-icon-wrap .web-admin-grid-icon{position:relative;z-index:1;width:44px;height:44px;object-fit:contain}.web-admin-grid-label{margin-top:0;font-size:15px;font-weight:400;color:#333;text-align:center;word-wrap:break-word;font-family:PingFang SC,-apple-system,BlinkMacSystemFont,sans-serif}.web-admin-extra{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000014;overflow:hidden}.web-admin-extra-title{margin:0;padding:16px 20px;font-size:15px;font-weight:600;color:#333;border-bottom:1px solid #eee;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-admin-extra-list{padding:8px 0}.web-admin-extra-item{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;cursor:pointer;transition:background .2s;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-admin-extra-item:hover{background:#f9f9f9}.web-admin-extra-label{font-size:14px;color:#333}.web-admin-extra-arrow{font-size:16px;color:#5082fd}.web-login-pc{min-height:100vh;background:#f4f5f8;display:flex;flex-direction:column;align-items:center;padding:32px 24px 48px;box-sizing:border-box}.web-login-pc-card{width:100%;max-width:420px;background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014;padding:48px 40px 40px;box-sizing:border-box}.web-login-pc-logo{display:flex;flex-direction:column;align-items:center;margin-bottom:36px}.web-login-pc-logo img{width:80px;height:80px;object-fit:contain;display:block}.web-login-pc-slogan{margin-top:12px;font-size:16px;font-weight:500;color:#5082fd;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-login-pc-slogan.web-login-pc-slogan-orange{color:#ff981e}.web-login-pc-form{display:flex;flex-direction:column;gap:0}.web-login-pc-field{display:flex;align-items:center;width:100%;min-height:48px;padding:12px 0;box-sizing:border-box}.web-login-pc-prefix{color:#333;font-size:16px;margin-right:10px;flex-shrink:0;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-login-pc-prefix-line{width:1px;height:20px;background:#d8d8d8;margin-right:10px;flex-shrink:0}.web-login-pc-input{flex:1;border:none;background:transparent;font-size:16px;color:#333;outline:none;padding:0;min-width:0;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-login-pc-input::placeholder{color:#999}.web-login-pc-password-toggle{display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:4px;cursor:pointer;flex-shrink:0;color:#999}.web-login-pc-password-toggle:hover{color:#666}.eye-icon{width:20px;height:20px;display:block}.web-login-pc-sep{width:100%;height:1px;background:#e0e0e0;margin:0 0 8px;flex-shrink:0}.web-login-pc-options{display:flex;justify-content:flex-end;align-items:center;margin:8px 0 24px}.web-login-pc-options a{color:#1f2674;font-size:14px;text-decoration:none;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-login-pc-options a:hover{text-decoration:underline}.web-login-pc-error{color:#dc3545;font-size:14px;margin-bottom:16px;padding:12px;background:#f8d7da;border-radius:8px;text-align:center;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-login-pc-btn{width:100%;height:48px;background:#5082fd;color:#fff;border:none;border-radius:24px;font-size:16px;font-weight:500;cursor:pointer;transition:opacity .2s;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-login-pc-btn:hover:not(:disabled){opacity:.9}.web-login-pc-btn:disabled{background:#999;cursor:not-allowed;opacity:1}.web-login-pc-btn.web-login-pc-btn-orange{background:linear-gradient(180deg,#ff981e,#ff8a00)}.web-login-pc-footer{text-align:center;margin-top:24px}.web-login-pc-footer a{color:#1f2674;font-size:14px;text-decoration:none;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.web-login-pc-footer a:hover{text-decoration:underline}.web-login-pc-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 24px;background:#000c;color:#fff;border-radius:8px;font-size:14px;z-index:9999;max-width:90%;text-align:center;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.web-admin-login-page{min-height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.web-admin-login-header{padding:16px 32px;background:#fff;display:flex;align-items:center;gap:10px;box-shadow:0 1px 4px #0000000d;z-index:1}.web-admin-login-header-logo{width:32px;height:32px;object-fit:contain;display:block}.web-admin-login-header-title{font-size:18px;font-weight:600;color:#333}.web-admin-login-main{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:40px 60px 40px calc(50% - 30px);box-sizing:border-box;background:url(/web-admin/login_bg.png) center / cover no-repeat;min-height:480px}.web-admin-login-card{width:100%;max-width:460px;background:#fff;border-radius:16px;box-shadow:0 4px 32px #0000001a;padding:48px 44px 44px;box-sizing:border-box;flex-shrink:0}.web-admin-login-card-logo{display:flex;flex-direction:column;align-items:center;margin-bottom:28px}.web-admin-login-card-logo img{width:64px;height:64px;object-fit:contain;display:block}.web-admin-login-card-slogan{margin-top:10px;font-size:15px;font-weight:500;color:#5082fd;letter-spacing:2px}.web-admin-login-form{display:flex;flex-direction:column;gap:0}.web-admin-login-card-title{font-size:17px;font-weight:600;color:#333;text-align:center;margin-bottom:20px}.web-admin-login-field{display:flex;align-items:center;width:100%;min-height:44px;padding:8px 0;box-sizing:border-box;position:relative}.web-admin-login-field-with-btn{gap:12px}.web-admin-login-prefix{color:#333;font-size:15px;margin-right:8px;flex-shrink:0;display:flex;align-items:center;gap:6px}.web-admin-login-prefix:before{content:"";display:inline-block;width:16px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='1.5'%3E%3Crect x='5' y='2' width='14' height='20' rx='2' ry='2'/%3E%3Cline x1='12' y1='18' x2='12.01' y2='18'/%3E%3C/svg%3E") center / contain no-repeat;flex-shrink:0}.web-admin-login-prefix-line{width:1px;height:18px;background:#d8d8d8;margin-right:10px;flex-shrink:0}.web-admin-login-label{font-size:15px;color:#999;margin-right:10px;flex-shrink:0;min-width:40px;letter-spacing:4px}.web-admin-login-input{flex:1;border:none;background:transparent;font-size:15px;color:#333;outline:none;padding:0;min-width:0}.web-admin-login-input::placeholder{color:#bbb;font-size:14px}.web-admin-login-eye-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:4px;cursor:pointer;flex-shrink:0;color:#999}.web-admin-login-eye-btn:hover{color:#666}.web-admin-login-eye{width:18px;height:18px;display:block}.web-admin-login-sep{width:100%;height:1px;background:#e8e8e8;margin:0;flex-shrink:0}.web-admin-login-options{display:flex;justify-content:flex-end;align-items:center;margin:10px 0 16px}.web-admin-login-link{background:none;border:none;padding:0;cursor:pointer;font-size:13px;color:#5082fd;text-decoration:none}.web-admin-login-link:hover{text-decoration:underline}.web-admin-login-error{color:#dc3545;font-size:13px;margin:10px 0 6px;padding:8px 12px;background:#f8d7da;border-radius:6px;text-align:center}.web-admin-login-btn{width:100%;height:44px;background:silver;color:#fff;border:none;border-radius:22px;font-size:16px;font-weight:500;cursor:pointer;transition:background .2s,opacity .2s;margin-top:20px}.web-admin-login-btn:hover:not(:disabled){opacity:.9}.web-admin-login-btn:disabled{cursor:not-allowed;opacity:.7}.web-admin-login-btn.web-admin-login-btn-primary:not(:disabled){background:linear-gradient(180deg,#69f,#5082fd);color:#fff}.web-admin-login-btn.web-admin-login-btn-primary:not(:disabled):hover{opacity:.9}.web-admin-login-send-code{padding:6px 12px;font-size:13px;color:#5082fd;background:transparent;border:1px solid #5082FD;border-radius:6px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .2s}.web-admin-login-send-code:hover:not(:disabled){background:#5082fd14}.web-admin-login-send-code:disabled{color:#999;border-color:#ddd;cursor:not-allowed}.web-admin-login-card-footer{text-align:center;margin-top:16px;font-size:13px;color:#666}.web-admin-login-card-footer .web-admin-login-link{margin-left:2px}.web-admin-login-footer{padding:16px 32px 20px;background:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-top:1px solid #eee}.web-admin-login-footer-info{font-size:12px;color:#666;line-height:1.8}.web-admin-login-footer-right{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.web-admin-login-footer-logo{display:block;height:28px;width:auto;object-fit:contain}.web-admin-login-footer-en{font-size:11px;color:#999;text-align:center;white-space:nowrap}.web-training-activity-management{padding:0}.web-training-activity-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.web-training-activity-header-left{display:flex;align-items:center;gap:8px}.web-training-activity-title-bar{width:4px;height:18px;border-radius:999px;background:#3a78ff}.web-training-activity-title{font-size:16px;font-weight:600;color:#111827;margin:0}.web-training-activity-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.web-training-activity-add-btn{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:6px 18px;font-size:13px;font-weight:500;color:#fff;background:linear-gradient(135deg,#3a78ff,#6595ff);border:none;border-radius:6px;cursor:pointer;box-shadow:0 2px 6px #3a78ff40;transition:background .2s,box-shadow .2s,transform .1s}.web-training-activity-add-btn:hover{background:linear-gradient(135deg,#2f65d9,#4e82ff);box-shadow:0 4px 10px #3a78ff4d;transform:translateY(-1px)}.web-training-activity-search{width:260px;display:flex;align-items:center;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:border-color .2s}.web-training-activity-search:focus-within{border-color:#5082fd}.web-training-activity-search-icon{margin-right:8px;opacity:.5}.web-training-activity-search-input{flex:1;border:none;outline:none;font-size:13px}.web-training-activity-table-container{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0f172a0a;overflow:hidden;position:relative;overflow-x:auto}.web-training-activity-table-wrapper{position:relative;width:100%;overflow-x:auto}.web-training-activity-table{width:100%;border-collapse:collapse}.web-training-activity-table th{padding:12px 20px;font-size:13px;font-weight:500;color:#6b7280;text-align:left;background:#f5f7fb;border-bottom:1px solid #e8e8e8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.web-training-activity-table td{padding:14px 20px;font-size:13px;color:#374151;border-bottom:1px solid #e8e8e8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.web-training-activity-table tr:last-child td{border-bottom:none}.web-training-activity-table tr:hover td{background:#f6f8ff}.web-training-activity-cover{width:60px;height:40px;object-fit:cover;border-radius:4px;background:#f0f0f0}.web-training-activity-cover-placeholder{width:60px;height:40px;background:#f0f0f0;border-radius:4px}.web-training-activity-title-cell{display:flex;align-items:center;gap:12px}.web-training-activity-title-text{font-weight:500;color:#1a1a1a}.web-training-activity-status{display:inline-block;padding:4px 10px;font-size:12px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.web-training-activity-status-ongoing{color:#ff9a3a;background:#fff4e5}.web-training-activity-status-not-started{color:#999;background:#f5f5f5}.web-training-activity-status-published{color:#1890ff;background:#e6f7ff}.web-training-activity-status-draft,.web-training-activity-status-ended{color:#999;background:#f5f5f5}.web-training-activity-status-cancelled{color:#ff4d4f;background:#fff2f0}.web-training-activity-action-btns{display:flex;gap:8px;flex-wrap:nowrap;overflow:hidden;align-items:center;width:100%}.web-training-activity-action-btn{padding:4px 12px;font-size:12px;color:#5082fd;background:transparent;border:1px solid #5082FD;border-radius:4px;cursor:pointer;transition:all .2s;flex-shrink:1;white-space:nowrap;display:inline-block}.web-training-activity-action-btn:hover{background:#5082fd1a}.web-training-activity-action-btn-danger{color:#ff4d4f;border-color:#ff4d4f}.web-training-activity-action-btn-danger:hover{background:#fff2f0}.web-training-activity-empty{padding:60px 0;text-align:center;color:#999;font-size:14px;background:#fff;border-radius:8px}.web-training-activity-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;background:#fff;border-radius:8px}.web-training-activity-spinner{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}.web-training-activity-loading p{margin-top:12px;color:#666;font-size:14px}.web-training-detail{background:#f4f5f8;padding:0;min-height:100vh}.web-training-detail-edit-wrapper{width:100%;margin-bottom:16px;display:flex;justify-content:flex-end;padding:0 24px}.web-training-detail-edit-btn{padding:8px 24px;font-size:14px;font-weight:500;background:#5082fd;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.web-training-detail-edit-btn:hover{background:#3a6bd8;box-shadow:0 2px 8px #5082fd4d}.web-training-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;background:#fff;border-radius:8px}.web-training-detail-spinner{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}.web-training-detail-loading p{margin-top:12px;color:#666;font-size:14px}.web-training-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;background:#fff;border-radius:8px;color:#999;font-size:14px}.web-training-detail-empty button{margin-top:16px}.web-training-detail-card{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0f172a0a;margin-bottom:12px;width:100%}.web-training-detail-summary{position:relative;padding:20px 24px}.web-training-detail-status-wrap{position:absolute;bottom:16px;left:24px;z-index:10;pointer-events:none}.web-training-detail-status{display:inline-block;padding:4px 12px;font-size:12px;border-radius:4px;pointer-events:auto}.web-training-detail-status-inline{display:inline-block;padding:4px 10px;font-size:13px;border-radius:4px;font-weight:500}.web-training-detail-status-ongoing{color:#ff981e;background:#fff7e6}.web-training-detail-status-not-started{color:#999;background:#f5f5f5}.web-training-detail-status-published{color:#1890ff;background:#e6f7ff}.web-training-detail-status-draft,.web-training-detail-status-ended{color:#999;background:#f5f5f5}.web-training-detail-status-cancelled{color:#ff4d4f;background:#fff2f0}.web-training-detail-carousel-outer{position:relative;margin:0 -24px 16px}.web-training-detail-carousel-wrap{overflow-x:auto;width:100%;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.web-training-detail-carousel-wrap-scroll{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.web-training-detail-carousel-wrap-scroll::-webkit-scrollbar{display:none}.web-training-detail-carousel-wrap{height:300px}.web-training-detail-carousel-slide{scroll-snap-align:start;flex:0 0 100%;height:300px;overflow:hidden;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;background:#e8e8e8;display:flex;align-items:center;justify-content:center;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}.web-training-detail-carousel{display:flex;height:300px}.web-training-detail-carousel-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;object-position:center;display:block;cursor:pointer}.web-training-detail-carousel-controls{display:flex;align-items:center;gap:12px}.web-training-detail-carousel-btn{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#ffffffe6;border:1px solid #e5e7eb;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.web-training-detail-carousel-btn:hover:not(.disabled){background:#fff;border-color:#ff981e;box-shadow:0 2px 8px #ff981e33}.web-training-detail-carousel-btn.disabled{opacity:.3;cursor:not-allowed}.web-training-detail-carousel-arrow{font-size:24px;color:#374151;line-height:1;font-weight:300}.web-training-detail-carousel-indicator{display:flex;justify-content:center;align-items:center;margin-top:12px;min-height:24px}.web-training-detail-carousel-indicator-text{font-size:14px;color:#fff;background:#0009;padding:4px 12px;border-radius:12px;line-height:1.5;white-space:nowrap}.web-training-detail-cover-placeholder{width:calc(100% + 48px);margin-left:-24px;margin-bottom:16px;height:300px;background:#f0f0f0}.web-training-detail-title{font-size:22px;font-weight:600;color:#1a1a1a;margin:0 0 20px;line-height:1.4;padding-right:80px}.web-training-detail-meta{font-size:14px}.web-training-detail-meta-row{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f0f0}.web-training-detail-meta-row:last-child{border-bottom:none}.web-training-detail-meta-label{width:80px;flex-shrink:0;color:#999}.web-training-detail-meta-value{flex:1;color:#333}.web-training-detail-meta-row-quota{position:relative}.web-training-detail-view-reg{flex-shrink:0;margin-left:12px;padding:4px 12px;font-size:13px;color:#5082fd;background:#5082fd1a;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.web-training-detail-view-reg:hover{background:#5082fd33}.web-training-detail-content{padding:0;position:relative}.web-training-detail-section-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #e8e8e8}.web-training-detail-section-title{padding:16px 24px 0;font-size:16px;font-weight:500;color:#1a1a1a;margin:0}.web-training-detail-description{padding:20px 24px;font-size:14px;color:#333;line-height:1.8;white-space:pre-wrap}.web-training-detail-intro-images{padding:0 24px 20px;display:flex;flex-direction:column;gap:12px}.web-training-detail-intro-img{max-width:100%;border-radius:4px}.web-training-detail-btn{padding:10px 24px;font-size:14px;border-radius:4px;cursor:pointer;transition:all .2s}.web-training-detail-btn-outline{color:#5082fd;background:#fff;border:1px solid #5082FD}.web-training-detail-btn-outline:hover{background:#5082fd14}.web-training-detail-preview-overlay{position:fixed;inset:0;z-index:10000;background:#000000e6;display:flex;align-items:center;justify-content:center;cursor:pointer}.web-training-detail-preview-close{position:fixed;top:16px;right:16px;z-index:10002;width:40px;height:40px;border:none;border-radius:50%;background:#fff3;color:#fff;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s}.web-training-detail-preview-close:hover{background:#ffffff59}.web-training-detail-preview-content{position:relative;max-width:95vw;max-height:95vh;display:flex;align-items:center;justify-content:center;cursor:default}.web-training-detail-preview-img{max-width:95vw;max-height:95vh;width:auto;height:auto;object-fit:contain;border-radius:4px}.web-training-detail-preview-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;border-radius:50%;background:#ffffff40;color:#fff;font-size:32px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s}.web-training-detail-preview-nav:hover{background:#fff6}.web-training-detail-preview-prev{left:16px}.web-training-detail-preview-next{right:16px}.web-training-detail-preview-counter{position:absolute;bottom:-36px;left:50%;transform:translate(-50%);font-size:14px;color:#ffffffe6;background:#00000080;padding:6px 14px;border-radius:20px}.web-training-registrations{padding:0}.web-training-registrations-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.web-training-registrations-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.web-training-registrations-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;color:#fff;background:#5082fd;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.web-training-registrations-btn:hover{background:#3a6bd8}.web-training-registrations-btn:disabled{background:#d9d9d9;cursor:not-allowed}.web-training-registrations-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.web-training-registrations-stats{font-size:13px;color:#666}.web-training-registrations-table-container{background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d;overflow:hidden}.web-training-registrations-table{width:100%;border-collapse:collapse}.web-training-registrations-table th{padding:12px 16px;font-size:13px;font-weight:500;color:#666;text-align:left;background:#fafafa;border-bottom:1px solid #e8e8e8}.web-training-registrations-table td{padding:14px 16px;font-size:13px;color:#333;border-bottom:1px solid #e8e8e8}.web-training-registrations-table tr:last-child td{border-bottom:none}.web-training-registrations-table tr:hover td{background:#f5f7ff}.web-training-registrations-name{font-weight:500;color:#1a1a1a}.web-training-registrations-gender{margin-left:8px;font-size:12px}.web-training-registrations-gender-female{color:#eb2f96}.web-training-registrations-gender-male{color:#1890ff}.web-training-registrations-contact{display:flex;gap:12px;font-size:12px;color:#666}.web-training-registrations-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:12px;background:#f5f5f5;border-radius:4px}.web-training-registrations-detail-btn{padding:4px 12px;font-size:12px;color:#5082fd;background:transparent;border:1px solid #5082FD;border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap}.web-training-registrations-detail-btn:hover{background:#5082fd1a}.web-training-registrations-empty{padding:60px 0;text-align:center;color:#999;font-size:14px;background:#fff;border-radius:8px}.web-training-registrations-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;background:#fff;border-radius:8px}.web-training-registrations-spinner{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}.web-training-registrations-loading p{margin-top:12px;color:#666;font-size:14px}.web-training-registrations-modal-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;z-index:1000}.web-training-registrations-modal{width:400px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026}.web-training-registrations-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e8e8e8}.web-training-registrations-modal-title{font-size:16px;font-weight:500;color:#1a1a1a;margin:0}.web-training-registrations-modal-close{width:24px;height:24px;font-size:18px;color:#999;background:transparent;border:none;cursor:pointer}.web-training-registrations-modal-body{padding:20px}.web-training-registrations-modal-file{display:flex;align-items:center;gap:12px;padding:16px;background:#fafafa;border-radius:4px;margin-bottom:16px}.web-training-registrations-modal-file-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#52c41a;border-radius:4px;color:#fff;font-size:12px;font-weight:600}.web-training-registrations-modal-filename{flex:1;font-size:14px;color:#333;word-break:break-all}.web-training-registrations-modal-actions{display:flex;gap:12px}.web-training-registrations-modal-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:14px;border-radius:4px;cursor:pointer;transition:all .2s}.web-training-registrations-modal-btn-download{color:#fff;background:#5082fd;border:1px solid #5082FD}.web-training-registrations-modal-btn-download:hover{background:#3a6bd8}.web-training-registrations-modal-btn-wechat{color:#5082fd;background:#fff;border:1px solid #5082FD}.web-training-registrations-modal-btn-wechat:hover{background:#5082fd14}.web-training-registrations-modal-btn-icon{width:16px;height:16px}.with-module-auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:40px}.with-module-auth-spinner{width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:with-module-auth-spin 1s linear infinite}@keyframes with-module-auth-spin{to{transform:rotate(360deg)}}.with-module-auth-loading p{margin-top:12px;font-size:14px;color:#666}.training-activity-edit{min-height:100vh;height:100vh;display:flex;flex-direction:column;background:#f4f5f8}.activity-edit-scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:24px}.activity-edit-card{margin:12px 16px;width:calc(100% - 32px);max-width:none;box-sizing:border-box;background:#fff;border-radius:12px;padding:20px 16px;box-shadow:0 1px 4px #0000000f}.activity-edit-form{display:flex;flex-direction:column;gap:0;width:100%}.form-section{display:flex;flex-direction:column;gap:8px;width:100%;min-width:0;padding-top:16px;padding-bottom:20px;margin-bottom:0;border-bottom:1px solid #F0F0F0}.activity-edit-form .form-section:first-child{padding-top:0}.activity-edit-form .form-section:last-child{border-bottom:none;padding-bottom:0}.form-label{font-size:14px;font-weight:500;color:#333;margin:0}.form-hint{font-size:12px;color:#999;margin:0 0 4px}.form-input{width:100%;min-width:0;max-width:none;height:44px;padding:0 12px;border:1px solid #E5E5E5;border-radius:8px;font-size:14px;color:#333;background:#fafafa;box-sizing:border-box;text-align:left}.form-input::placeholder{color:#999;text-align:left}.form-input:disabled{background:#f5f5f5;color:#999}.cover-file-input{display:none}.cover-upload-area{position:relative;display:flex;flex-direction:column;gap:12px}.cover-thumbnails{display:flex;flex-wrap:wrap;gap:12px}.cover-thumb-wrap{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;background:#f5f5f5}.cover-thumb-img{width:100%;height:100%;object-fit:cover}.cover-thumb-wrap .cover-header-tag{position:absolute;top:4px;right:4px;padding:2px 6px;background:#ff981e;color:#fff;font-size:10px;border-radius:4px}.cover-thumb-remove{position:absolute;bottom:4px;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:#0009;color:#fff;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.cover-upload-box{width:100%;min-height:160px;border:1px dashed #D9D9D9;border-radius:8px;background:#fafafa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer}.cover-upload-box:hover:not(.is-uploading){border-color:#5082fd;background:#f8faff}.cover-upload-box.is-uploading{pointer-events:none;opacity:.7}.upload-icon{font-size:32px;color:#bfbfbf;line-height:1}.upload-text{font-size:14px;color:#999}.cover-header-tag{position:absolute;top:8px;right:8px;padding:2px 8px;background:#ff981e;color:#fff;font-size:12px;border-radius:4px}.form-error-inline{color:#ff4d4f!important;margin:0!important}.intro-file-input{display:none}.intro-upload-area{position:relative;display:flex;flex-direction:column;gap:12px}.intro-thumbnails{display:flex;flex-wrap:wrap;gap:12px}.intro-thumb-wrap{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;background:#f5f5f5}.intro-thumb-img{width:100%;height:100%;object-fit:cover}.intro-thumb-remove{position:absolute;bottom:4px;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:#0009;color:#fff;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.intro-upload-box{width:100%;min-height:120px;border:1px dashed #D9D9D9;border-radius:8px;background:#fafafa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer}.intro-upload-box:hover:not(.is-uploading){border-color:#5082fd;background:#f8faff}.intro-upload-box.is-uploading{pointer-events:none;opacity:.7}.date-range{display:flex;align-items:center;gap:8px;margin-bottom:4px}.date-input{flex:1;min-width:0;height:44px;padding:0 28px 0 12px;font-size:14px;background:#fafafa;border-radius:8px;box-sizing:border-box;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:10px 6px}.date-input::-webkit-calendar-picker-indicator{opacity:0}.date-sep{color:#999;font-size:14px;flex-shrink:0}.quota-row{display:flex;align-items:center;gap:16px}.quota-input{width:140px;flex-shrink:0}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;cursor:pointer;margin:0}.checkbox-label input{width:18px;height:18px;accent-color:#5082FD}.form-textarea{width:100%;min-width:0;max-width:none;min-height:120px;padding:12px;border:1px solid #E5E5E5;border-radius:8px;font-size:14px;color:#333;font-family:inherit;resize:vertical;box-sizing:border-box;text-align:left}.form-textarea::placeholder{color:#999;text-align:left}.form-error{font-size:14px;color:#ff4d4f;margin:0}.activity-edit-footer{flex-shrink:0;display:flex;gap:16px;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #F0F0F0;box-shadow:0 -2px 8px #0000000f}.btn-draft{flex:1;height:44px;border:1px solid #D9D9D9;border-radius:8px;background:#fff;font-size:16px;color:#666;cursor:pointer}.btn-draft:disabled{opacity:.6;cursor:not-allowed}.btn-publish{flex:1;height:44px;border:none;border-radius:8px;background:linear-gradient(180deg,#69f,#5082fd);font-size:16px;font-weight:500;color:#fff;cursor:pointer}.btn-publish:disabled{opacity:.6;cursor:not-allowed}.btn-publish:hover:not(:disabled){opacity:.95}.activity-edit-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.activity-edit-modal{background:#fff;border-radius:12px;padding:24px 20px 20px;width:100%;max-width:320px;box-sizing:border-box}.activity-edit-modal-title{margin:0 0 12px;font-size:16px;font-weight:500;text-align:center;color:#333}.activity-edit-modal-text{margin:0 0 20px;font-size:14px;color:#666;text-align:center}.activity-edit-modal-actions{display:flex;gap:12px}.activity-edit-modal-btn{flex:1;height:40px;border-radius:8px;font-size:14px;cursor:pointer}.activity-edit-modal-btn-cancel{border:1px solid #d9d9d9;background:#fff;color:#666}.activity-edit-modal-btn-confirm{border:none;background:linear-gradient(180deg,#69f,#5082fd);color:#fff;font-weight:500}.activity-edit-modal-btn:disabled{opacity:.6;cursor:not-allowed}.activity-edit-toast{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 24px;background:#000000bf;color:#fff;font-size:14px;border-radius:8px;z-index:9999;max-width:90%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word;animation:activity-edit-toast-in .2s ease}@keyframes activity-edit-toast-in{0%{opacity:0}to{opacity:1}}.activity-edit-toast-error{background:#c83232e6}.training-registration-view{min-height:100vh;background:#f4f5f8;display:flex;flex-direction:column}.training-registration-view.loading{justify-content:center;align-items:center}.training-registration-view.loading .reg-view-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:reg-view-spin 1s linear infinite}.training-registration-view.loading p{margin-top:12px;font-size:14px;color:#666}@keyframes reg-view-spin{to{transform:rotate(360deg)}}.reg-view-image-overlay{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;box-sizing:border-box}.reg-view-image-full{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;pointer-events:none}.web-video-management{padding:0}.web-video-management-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.web-video-management-header-left{display:flex;align-items:center;gap:8px}.web-video-management-title-bar{width:4px;height:18px;border-radius:999px;background:#3a78ff}.web-video-management-title{font-size:16px;font-weight:600;color:#111827;margin:0}.web-video-management-add-btn{display:flex;align-items:center;gap:6px;padding:6px 18px;font-size:13px;font-weight:500;color:#fff;background:linear-gradient(135deg,#3a78ff,#6595ff);border:none;border-radius:6px;cursor:pointer;box-shadow:0 2px 6px #3a78ff40;transition:background .2s,box-shadow .2s,transform .1s}.web-video-management-add-btn:hover{background:linear-gradient(135deg,#2f65d9,#4e82ff);box-shadow:0 4px 10px #3a78ff4d;transform:translateY(-1px)}.web-video-management-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.web-video-management-filters{display:flex;align-items:center;gap:12px}.web-video-management-search{display:flex;align-items:center;width:260px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:border-color .2s}.web-video-management-search:focus-within{border-color:#5082fd}.web-video-management-search-icon{margin-right:8px;opacity:.5}.web-video-management-search-input{flex:1;border:none;outline:none;font-size:13px}.web-video-management-select{padding:8px 12px;font-size:14px;border:1px solid #e8e8e8;border-radius:4px;background:#fff;cursor:pointer}.web-video-management-select:focus{outline:none;border-color:#5082fd}.web-video-management-table-container{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0f172a0a;overflow:hidden}.web-video-management-table{width:100%;border-collapse:collapse}.web-video-management-table th{padding:12px 20px;font-size:13px;font-weight:500;color:#6b7280;text-align:left;background:#f5f7fb;border-bottom:1px solid #e8e8e8}.web-video-management-table td{padding:14px 20px;font-size:13px;color:#374151;border-bottom:1px solid #e8e8e8}.web-video-management-table tr:last-child td{border-bottom:none}.web-video-management-table tr:hover td{background:#f6f8ff}.web-video-management-cover{width:100px;height:56px;object-fit:cover;border-radius:4px;background:#f0f0f0}.web-video-management-cover-placeholder{width:100px;height:56px;background:#f0f0f0;border-radius:4px}.web-video-management-title-cell{display:flex;align-items:center;gap:12px}.web-video-management-title-text{font-weight:500;color:#1a1a1a}.web-video-management-play-count{display:inline-flex;align-items:center;gap:6px}.web-video-management-play-count-icon{flex-shrink:0;color:#6b7280}.web-video-management-status{display:inline-block;padding:4px 10px;font-size:12px;border-radius:4px}.web-video-management-status-on{color:#3a78ff;background:#e6f0ff}.web-video-management-status-off{color:#999;background:#f5f5f5}.web-video-management-action-btns{display:flex;gap:8px;flex-wrap:nowrap;white-space:nowrap}.web-video-management-action-btn{padding:4px 12px;font-size:12px;color:#5082fd;background:transparent;border:1px solid #5082FD;border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.web-video-management-action-btn:hover{background:#5082fd1a}.web-video-management-action-btn-danger{color:#ff4d4f;border-color:#ff4d4f}.web-video-management-action-btn-danger:hover{background:#fff2f0}.web-video-management-empty{padding:60px 0;text-align:center;color:#999;font-size:14px;background:#fff;border-radius:8px}.web-video-management-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 0;background:#fff;border-radius:8px}.web-video-management-spinner{width:36px;height:36px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}.web-video-management-loading p{margin-top:12px;color:#666;font-size:14px}.web-video-edit{padding:0}.web-video-edit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.web-video-edit-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0}.web-video-edit-header-actions{display:flex;gap:12px}.web-video-edit-back-btn{padding:8px 16px;font-size:14px;color:#666;background:#fff;border:1px solid #e8e8e8;border-radius:6px;cursor:pointer;transition:all .2s}.web-video-edit-back-btn:hover{color:#5082fd;border-color:#5082fd}.web-video-edit-content{background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d;padding:24px}.web-video-edit-section{margin-bottom:24px}.web-video-edit-section-title{font-size:15px;font-weight:600;color:#1a1a1a;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e8e8e8}.web-video-edit-form-table{width:100%;border-collapse:collapse}.web-video-edit-form-table td{padding:16px 0;vertical-align:top}.web-video-edit-form-label{width:100px;font-size:14px;color:#666;text-align:left}.web-video-edit-form-field{padding-left:24px}.web-video-edit-player-container{width:100%;max-width:600px}.web-video-edit-player-wrap{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;border-radius:8px;overflow:hidden;cursor:pointer}.web-video-edit-player-wrap-playing{cursor:default}.web-video-edit-player{width:100%;height:100%;object-fit:contain}.web-video-edit-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;background:#ffffffe6;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s}.web-video-edit-play-btn:hover{background:#fff;transform:translate(-50%,-50%) scale(1.1)}.web-video-edit-play-icon{font-size:24px;color:#5082fd;margin-left:4px}.web-video-edit-replace-btn{position:absolute;top:8px;right:8px;height:28px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:#fff;background:#88888880;border:1px solid #fff;border-radius:14px;cursor:pointer;z-index:2;box-sizing:border-box;transition:background .2s}.web-video-edit-replace-btn:hover{background:#888888b3}.web-video-edit-replace-btn:disabled{opacity:.5;cursor:not-allowed}.web-video-edit-player-bar{position:absolute;bottom:24px;left:0;right:0;padding:8px 12px;background:linear-gradient(transparent,#0009);display:flex;justify-content:flex-end;font-size:12px;color:#fff}.web-video-edit-player-count{position:absolute;left:12px;display:flex;align-items:center;gap:4px}.web-video-edit-player-count-icon{width:14px;height:10px;flex-shrink:0}.web-video-edit-progress-wrap{position:absolute;left:0;right:0;bottom:0;height:24px;padding:0 12px;display:flex;align-items:center;cursor:pointer;z-index:3;box-sizing:border-box;background:#0006}.web-video-edit-progress-wrap:focus{outline:none}.web-video-edit-progress-track{position:relative;width:100%;height:4px;background:#ffffff4d;border-radius:2px;overflow:visible}.web-video-edit-progress-fill{position:absolute;left:0;top:0;bottom:0;background:#fff;border-radius:2px}.web-video-edit-progress-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:#fff;border-radius:50%;box-shadow:0 0 2px #0000004d;transition:transform .1s}.web-video-edit-progress-thumb:hover{transform:translate(-50%,-50%) scale(1.3)}.web-video-edit-meta-info{display:flex;gap:20px;margin-top:12px;font-size:13px;color:#666}.web-video-edit-status-tag-offline{color:#ff4d4f}.web-video-edit-upload-area{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:32px;background:#fafafa;border:2px dashed #e8e8e8;border-radius:8px;transition:border-color .2s}.web-video-edit-upload-area:hover{border-color:#5082fd}.web-video-edit-upload-btn{padding:10px 24px;font-size:14px;color:#fff;background:#5082fd;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.web-video-edit-upload-btn:hover{background:#3a6bd8}.web-video-edit-upload-btn:disabled{background:#ccc;cursor:not-allowed}.web-video-edit-upload-hint{font-size:13px;color:#999}.web-video-edit-upload-progress{position:relative;width:100%;max-width:200px;height:6px;margin-top:10px;background:#0000000a;border-radius:3px;overflow:hidden}.web-video-edit-upload-progress-standalone{height:auto;min-height:48px;max-width:260px;width:70%;margin-top:10px;overflow:visible;display:flex;align-items:center;justify-content:center;background:transparent}.web-video-edit-upload-progress-standalone .web-video-edit-upload-progress-track-outer{width:100%;min-width:140px;height:40px;min-height:40px}.web-video-edit-upload-progress-overlay .web-video-edit-upload-progress-in-overlay{background:transparent}.web-video-edit-upload-progress-bar{position:absolute;left:0;top:0;height:100%;background:#5082fd;border-radius:3px;transition:width .2s ease}.web-video-edit-upload-progress-text{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:11px;color:#fff;text-shadow:0 0 2px rgba(0,0,0,.8);outline:none;border:none;background:transparent;box-shadow:none}.web-video-edit-upload-progress-overlay .sr-only,.web-video-edit-upload-progress-standalone .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}.web-video-edit-upload-progress-overlay{position:absolute;inset:0;z-index:5;background:#000000a6;display:flex;align-items:center;justify-content:center;pointer-events:none;border-radius:8px;outline:none;border:none}.web-video-edit-upload-progress-overlay:focus{outline:none}.web-video-edit-upload-progress-in-overlay{max-width:260px;width:70%;display:flex;align-items:center;justify-content:center;outline:none;border:none}.web-video-edit-upload-progress-in-overlay:focus{outline:none}.web-video-edit-upload-progress-track-outer{width:100%;min-width:140px;height:40px;min-height:40px;background:transparent;border-radius:20px;overflow:visible;position:relative}.web-video-edit-upload-progress-track-outer .web-video-edit-upload-progress-bar{position:absolute;left:0;top:0;height:100%;min-width:2px;border-radius:20px;box-sizing:border-box;z-index:0}.web-video-edit-upload-progress-track-outer:after{content:attr(data-progress) "%";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;font-size:14px;font-weight:600;line-height:1;color:#1a1a1a;text-shadow:0 1px 1px rgba(255,255,255,.9);pointer-events:none;background:none!important;border:none!important;padding:0!important;-webkit-appearance:none!important;appearance:none!important}.web-video-edit-upload-progress-overlay .web-video-edit-upload-progress-track-outer:after{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6)}.web-video-edit-cover-container{display:flex;align-items:flex-start;gap:16px}.web-video-edit-cover-preview{position:relative}.web-video-edit-cover-img{width:180px;aspect-ratio:3 / 4;object-fit:cover;border-radius:6px;background:#f0f0f0}.web-video-edit-cover-edit-btn{position:absolute;bottom:8px;left:50%;transform:translate(-50%);padding:6px 12px;font-size:12px;color:#fff;background:#0009;border:none;border-radius:4px;cursor:pointer;white-space:nowrap}.web-video-edit-cover-placeholder{width:180px;aspect-ratio:3 / 4;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fafafa;border:2px dashed #e8e8e8;border-radius:6px;cursor:pointer;transition:border-color .2s}.web-video-edit-cover-placeholder:hover{border-color:#5082fd}.web-video-edit-cover-placeholder:focus{outline:none;border-color:#5082fd;border-style:solid}.web-video-edit-cover-plus{font-size:32px;color:#ccc;margin-bottom:8px}.web-video-edit-cover-hint{font-size:12px;color:#999;text-align:center;padding:0 16px}.web-video-edit-input-wrapper{display:flex;align-items:center;width:400px;padding:8px 12px;background:#fff;border:1px solid #e8e8e8;border-radius:4px;transition:border-color .2s}.web-video-edit-input-wrapper:focus-within{border-color:#5082fd}.web-video-edit-input{flex:1;border:none;outline:none;font-size:14px}.web-video-edit-char-count{font-size:12px;color:#999;margin-left:8px}.web-video-edit-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e8e8e8}.web-video-edit-btn{padding:10px 24px;font-size:14px;border-radius:6px;cursor:pointer;transition:all .2s}.web-video-edit-btn-primary{color:#fff;background:#5082fd;border:none}.web-video-edit-btn-primary:hover:not(:disabled){background:#3a6bd8}.web-video-edit-btn-primary:disabled{background:#ccc;cursor:not-allowed}.web-video-edit-btn-outline{color:#666;background:#fff;border:1px solid #e8e8e8}.web-video-edit-btn-outline:hover{color:#5082fd;border-color:#5082fd}.web-video-edit-btn-shelf{color:#52c41a;background:#f6ffed;border:1px solid #b7eb8f}.web-video-edit-btn-shelf:hover:not(:disabled){background:#d9f7be}.web-video-edit-btn-takedown{color:#666;background:#f5f5f5;border:1px solid #d9d9d9}.web-video-edit-btn-takedown:hover:not(:disabled){background:#e8e8e8}.web-video-edit-btn-danger{color:#ff4d4f;background:#fff2f0;border:1px solid #ffccc7}.web-video-edit-btn-danger:hover:not(:disabled){background:#ffccc7}.web-video-edit-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.web-video-edit-modal{background:#fff;border-radius:12px;padding:24px;width:400px;max-width:90%}.web-video-edit-modal-title{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:12px}.web-video-edit-modal-text{font-size:14px;color:#666;margin-bottom:20px;line-height:1.5}.web-video-edit-modal-actions{display:flex;justify-content:flex-end;gap:12px}.web-video-edit-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 24px;font-size:14px;color:#fff;background:#000000b3;border-radius:6px;z-index:2000;max-width:90%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.web-video-edit-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 0;background:#fff;border-radius:8px}.web-video-edit-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}.web-video-edit-loading p{margin-top:16px;color:#666;font-size:14px}.web-video-edit-file-input{display:none}.web-admin-account-manage{padding:0}.web-admin-account-manage-header{margin-bottom:16px}.web-admin-account-manage-header-left{display:flex;align-items:center;gap:8px}.web-admin-account-manage-title-bar{width:4px;height:18px;border-radius:999px;background:#3a78ff}.web-admin-account-manage-title{font-size:16px;font-weight:600;color:#111827;margin:0}.web-admin-account-manage-content{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0f172a0a;padding:20px}.web-admin-account-manage-current-card{display:flex;align-items:center;gap:20px;padding:16px 20px;background:#f5f7fb;border-radius:8px;margin-bottom:24px}.web-admin-account-manage-avatar{width:60px;height:60px;background:#e5edff;border-radius:50%}.web-admin-account-manage-current-info{flex:1}.web-admin-account-manage-current-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.web-admin-account-manage-current-row:last-child{margin-bottom:0}.web-admin-account-manage-label{font-size:14px;color:#666}.web-admin-account-manage-value{font-size:14px;color:#333;font-weight:500}.web-admin-account-manage-logout-btn{padding:6px 16px;font-size:13px;color:#666;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.web-admin-account-manage-logout-btn:hover{color:#ff4d4f;border-color:#ff4d4f}.web-admin-account-manage-section{margin-bottom:24px}.web-admin-account-manage-section-header{display:flex;align-items:center;justify-content:flex-start;margin-bottom:12px}.web-admin-account-manage-section-title{font-size:15px;font-weight:600;color:#111827;margin:0}.web-admin-account-manage-table{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden}.web-admin-account-manage-table th{padding:12px 20px;font-size:13px;font-weight:500;color:#6b7280;text-align:left;background:#f5f7fb;border-bottom:1px solid #e8e8e8}.web-admin-account-manage-table td{padding:14px 20px;font-size:14px;color:#374151;border-bottom:1px solid #e8e8e8}.web-admin-account-manage-table tr:last-child td{border-bottom:none}.web-admin-account-manage-table tr:hover td{background:#f6f8ff}.web-admin-account-manage-action-btns{display:flex;gap:8px;flex-wrap:nowrap;white-space:nowrap}.web-admin-account-manage-action-btn{padding:4px 12px;font-size:12px;color:#5082fd;background:#fff;border:1px solid #5082fd;border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.web-admin-account-manage-action-btn:hover{background:#5082fd1a}.web-admin-account-manage-action-btn-danger{color:#ff4d4f;border-color:#ff4d4f}.web-admin-account-manage-action-btn-danger:hover{background:#fff2f0}.web-admin-account-manage-footer{padding-top:16px;border-top:1px solid #e8e8e8}.web-admin-account-manage-add-btn{padding:8px 16px;font-size:13px;color:#fff;background:#5082fd;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.web-admin-account-manage-add-btn:hover{background:#3a6bd8}.web-admin-account-manage-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.web-admin-account-manage-modal{background:#fff;border-radius:12px;padding:24px;width:400px;max-width:90%}.web-admin-account-manage-modal-title{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 20px}.web-admin-account-manage-modal-actions{display:flex;justify-content:flex-end;gap:12px}.web-admin-account-manage-btn{padding:10px 24px;font-size:14px;border-radius:6px;cursor:pointer;transition:all .2s}.web-admin-account-manage-btn-outline{color:#666;background:#fff;border:1px solid #e8e8e8}.web-admin-account-manage-btn-outline:hover{color:#5082fd;border-color:#5082fd}.web-admin-account-manage-btn-outline:disabled{color:#ccc;border-color:#e8e8e8;cursor:not-allowed}.web-admin-account-manage-btn-primary{color:#fff;background:#5082fd;border:none}.web-admin-account-manage-btn-primary:hover{background:#3a6bd8}.web-admin-account-manage-btn-danger{color:#fff;background:#ff4d4f;border:none}.web-admin-account-manage-btn-danger:hover:not(:disabled){background:#ff7875}.web-admin-account-manage-btn-danger:disabled{background:#ffccc7;cursor:not-allowed}.web-admin-account-manage-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 0;background:#fff;border-radius:8px}.web-admin-account-manage-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}.web-admin-account-manage-loading p{margin-top:16px;color:#666;font-size:14px}.web-admin-account-add{padding:0}.web-admin-account-add-content{background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d;padding:24px}.web-admin-account-add-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 24px}.web-admin-account-add-form{max-width:600px}.web-admin-account-add-table{width:100%;border-collapse:collapse;margin-bottom:24px}.web-admin-account-add-table td{padding:0}.web-admin-account-add-label{width:100px;padding:16px 16px 0 0;font-size:14px;color:#666;vertical-align:middle}.web-admin-account-add-table tr:not(:first-child) .web-admin-account-add-label{padding-top:24px}.web-admin-account-add-field{padding:16px 0 0;vertical-align:middle}.web-admin-account-add-table tr:not(:first-child) .web-admin-account-add-field{padding-top:24px}.web-admin-account-add-input{width:100%;padding:10px 12px;font-size:14px;border:1px solid #e8e8e8;border-radius:6px;outline:none;transition:border-color .2s}.web-admin-account-add-input:focus{border-color:#5082fd}.web-admin-account-add-select{width:100%;padding:10px 12px;font-size:14px;border:1px solid #e8e8e8;border-radius:6px;background:#fff;outline:none;cursor:pointer;transition:border-color .2s}.web-admin-account-add-select-placeholder{color:#999}.web-admin-account-add-select:focus{border-color:#5082fd}.web-admin-account-add-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e8e8e8}.web-admin-account-add-btn{padding:10px 24px;font-size:14px;border-radius:6px;cursor:pointer;transition:all .2s}.web-admin-account-add-btn-outline{color:#666;background:#fff;border:1px solid #e8e8e8}.web-admin-account-add-btn-outline:hover{color:#5082fd;border-color:#5082fd}.web-admin-account-add-btn-primary{color:#fff;background:#5082fd;border:none}.web-admin-account-add-btn-primary:hover:not(:disabled){background:#3a6bd8}.web-admin-account-add-btn-primary:disabled{background:#ccc;cursor:not-allowed}.web-admin-account-add-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 0;background:#fff;border-radius:8px}.web-admin-account-add-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}.web-admin-account-add-loading p{margin-top:16px;color:#666;font-size:14px}.web-admin-account-edit{padding:0}.web-admin-account-edit-content{background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d;padding:24px}.web-admin-account-edit-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 24px}.web-admin-account-edit-form{max-width:600px}.web-admin-account-edit-table{width:100%;border-collapse:collapse;border:1px solid #e8e8e8;border-radius:8px;overflow:hidden;margin-bottom:24px}.web-admin-account-edit-table td{padding:0}.web-admin-account-edit-label{width:100px;padding:16px;font-size:14px;color:#666}.web-admin-account-edit-field{padding:16px;color:#333;font-size:14px}.web-admin-account-edit-input{width:100%;max-width:280px;padding:8px 12px;font-size:14px;color:#333;border:1px solid #e8e8e8;border-radius:6px;outline:none;transition:border-color .2s}.web-admin-account-edit-input:focus{border-color:#5082fd}.web-admin-account-edit-input-disabled{color:#999;background:transparent;border:none;cursor:not-allowed}.web-admin-account-edit-select{width:200px;padding:10px 12px;font-size:14px;border:1px solid #e8e8e8;border-radius:6px;background:#fff;outline:none;cursor:pointer;transition:border-color .2s}.web-admin-account-edit-select:focus{border-color:#5082fd}.web-admin-account-edit-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e8e8e8}.web-admin-account-edit-btn{padding:10px 24px;font-size:14px;border-radius:6px;cursor:pointer;transition:all .2s}.web-admin-account-edit-btn-outline{color:#666;background:#fff;border:1px solid #e8e8e8}.web-admin-account-edit-btn-outline:hover{color:#5082fd;border-color:#5082fd}.web-admin-account-edit-btn-primary{color:#fff;background:#5082fd;border:none}.web-admin-account-edit-btn-primary:hover:not(:disabled){background:#3a6bd8}.web-admin-account-edit-btn-primary:disabled{background:#ccc;cursor:not-allowed}.web-admin-account-edit-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 24px;font-size:14px;color:#fff;background:#000000b3;border-radius:6px;z-index:2000;max-width:90%;text-align:center;height:auto;min-height:auto;line-height:1.5;white-space:normal;word-break:break-word}.web-admin-account-edit-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 0;background:#fff;border-radius:8px}.web-admin-account-edit-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#5082fd;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.web-admin-account-edit-loading p{margin-top:16px;color:#666;font-size:14px}.web-admin-account-edit-error{display:flex;align-items:center;justify-content:center;min-height:400px;background:#fff;border-radius:8px}.web-admin-account-edit-error-content{text-align:center}.web-admin-account-edit-error-content p{font-size:14px;color:red;margin-bottom:20px}:root{--color-primary: #6699FF;--color-text-primary: #333333;--color-text-secondary: #999999;--color-accent-blue: #5082FD;--color-accent-orange: #FF981E;--color-accent-light: #EFF1FE;--color-accent-navy: #1F2674;--color-accent-coral: #EB5846}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--color-text-primary)}select{background-color:#fff;color:#333}select option{background-color:#111;color:#fff}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
