:root{--brand-950: #042a2e;--brand-900: #063d42;--brand-800: #0a4f56;--brand-700: #0d6570;--brand-600: #118a99;--brand-500: #14a3b5;--brand-400: #4db8c4;--brand-100: #e0f4f6;--health-700: #1b5e32;--health-600: #2e7d4a;--health-500: #3d9a5c;--health-100: #e8f5ec;--accent-600: #c8871a;--accent-500: #e8a838;--accent-100: #fff8e8;--color-primary: var(--brand-600);--color-primary-dark: var(--brand-800);--color-primary-light: var(--brand-400);--color-secondary: var(--health-500);--color-secondary-dark: var(--health-700);--color-secondary-light: #6bb87d;--color-accent: var(--accent-500);--color-danger: #d84343;--color-success: var(--health-500);--color-live: #e53935;--color-bg: #edf3f5;--color-card: #ffffff;--color-text: #1a2e35;--color-text-muted: #5a727d;--color-border: #cfe0e6;--radius: 2.5vw;--radius-lg: 3.5vw;--shadow: 0 4px 20px rgba(6, 61, 66, .08);--shadow-lg: 0 12px 40px rgba(6, 61, 66, .14);--font-family: "PingFang SC", "Microsoft YaHei", "Helvetica Neue", sans-serif;--gradient-brand: linear-gradient( 135deg, var(--brand-800) 0%, var(--brand-600) 48%, var(--health-600) 100% );--gradient-cover: linear-gradient( 145deg, var(--brand-700) 0%, var(--brand-500) 45%, var(--health-500) 100% )}.brand-mark{display:inline-flex;flex-shrink:0}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.brand-mark__img--glass{opacity:.92;filter:drop-shadow(0 2px 8px rgba(0,0,0,.12))}.brand-mark svg{display:block;width:100%;height:100%}.brand-mark--sm{width:11vw;height:11vw}.brand-mark--lg{width:15vw;height:15vw}.brand-lockup{display:flex;align-items:center;gap:3vw;text-decoration:none;color:inherit;min-width:0}.brand-lockup:hover{opacity:.95}.brand-lockup-text{min-width:0;flex:1}.brand-lockup-text strong{display:block;font-size:4vw;font-weight:600;letter-spacing:.04em;line-height:1.25}.brand-lockup-text small{display:block;font-size:3vw;margin-top:.8vw;letter-spacing:.06em;opacity:.72}.course-cover-16x9{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:linear-gradient(135deg,var(--brand-700),var(--health-600))}.course-cover-16x9__img{display:block;width:100%;height:100%;object-fit:fill}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{width:100%;min-height:100%;min-height:100dvh}body{margin:0;font-family:var(--font-family);font-size:3.5vw;color:var(--color-text);background:var(--color-bg);overflow-x:hidden}body.h5-body-lock{overflow:hidden;height:100dvh;width:100%}#root{width:100%;min-height:100dvh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}.h5-shell{width:100%;min-height:100dvh;background:var(--color-bg);overflow-x:hidden}.h5-shell--courses{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden}.h5-scroll-area{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:none;-webkit-overflow-scrolling:touch;touch-action:pan-y}.h5-header{width:100%;background:var(--gradient-brand);color:#fff;padding:5vw 4vw 4.5vw;position:relative;overflow:hidden}.h5-header:after{content:"";position:absolute;right:-8vw;top:-8vw;width:32vw;height:32vw;border-radius:50%;background:#ffffff14}.h5-header-inner{display:flex;align-items:center;gap:2.5vw;position:relative;z-index:1}.h5-header h1{margin:0;font-size:4.5vw;font-weight:600;letter-spacing:.04em}.h5-header p{margin:.5vw 0 0;font-size:3vw;opacity:.82;letter-spacing:.1em}.h5-tabs{display:flex;width:100%;background:var(--color-card);border-bottom:1px solid var(--color-border)}.h5-tabs a,.h5-tabs button{flex:1;width:50%;text-align:center;padding:3.2vw 0;color:var(--color-text-muted);border:none;border-bottom:.5vw solid transparent;background:transparent;font:inherit;font-size:3.5vw;cursor:pointer}.h5-tabs a.active,.h5-tabs button.active{color:var(--brand-700);border-bottom-color:var(--brand-500);font-weight:600}.h5-empty{text-align:center;padding:8vw 4vw;color:var(--color-text-muted);margin:0;font-size:3.5vw}.h5-list-sentinel{height:1px;width:100%}.h5-pull-indicator{display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;font-size:3.2vw;color:var(--color-text-muted);line-height:1.4;flex-shrink:0;transition:height .2s ease-out}.h5-pull-indicator span{padding:0 4vw;white-space:nowrap}.h5-list-footer{text-align:center;padding:4vw 0 6vw;margin:0;color:var(--color-text-muted);font-size:3.2vw}.h5-auth-error{color:var(--color-danger);font-size:3.5vw;margin:0 0 3vw}.h5-list{width:100%;padding:3vw;box-sizing:border-box}.h5-item,.h5-item--static{display:flex;width:100%;max-width:100%;background:var(--color-card);border-radius:2.5vw;margin-bottom:3vw;overflow:hidden;box-shadow:var(--shadow);color:inherit}.h5-item--static{cursor:default}.h5-item-cover{width:34%;flex:0 0 34%;max-width:34%;background:var(--gradient-cover)}.h5-item-cover-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1vw;color:#fff;font-size:2.8vw;font-weight:500;letter-spacing:.06em;pointer-events:none;background:linear-gradient(180deg,#00000026,#00000059)}.h5-item-cover-tag{font-size:2.6vw;padding:.5vw 2vw;background:#fff3;border-radius:2.5vw}.h5-item-cover-field{font-size:2.6vw;opacity:.95}.h5-item-body{padding:3vw;flex:1;min-width:0}.h5-item-body h3{margin:0 0 1.5vw;font-size:3.8vw;line-height:1.4;word-break:break-word}.h5-item-meta{font-size:3.2vw;color:var(--color-text-muted)}.h5-item-teacher{font-size:3.2vw;color:var(--health-600);margin-top:1vw}.badge{display:inline-block;padding:.5vw 2vw;border-radius:2.5vw;font-size:3.2vw;margin-bottom:1.5vw;font-weight:500}.badge-live{background:linear-gradient(90deg,#ffebee,#ffcdd2);color:var(--color-live)}.badge-upcoming{background:var(--brand-100);color:var(--brand-700)}.h5-sub-nav{display:flex;align-items:center;width:100%;min-height:12vw;padding:0 2vw 0 1vw;background:var(--color-card);border-bottom:1px solid var(--color-border);box-sizing:border-box}.h5-back{width:10vw;height:10vw;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:7vw;font-weight:300;line-height:1;color:var(--color-text)}.h5-back:hover{color:var(--brand-600)}.h5-sub-title{flex:1;min-width:0;font-size:4vw;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:2vw}.h5-player{width:100%;aspect-ratio:16 / 9;background:linear-gradient(160deg,#0a2a30,#1a3d45,#0d6570);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ffffffb3;position:relative}.h5-player-live{position:absolute;top:3vw;left:3vw;z-index:2;background:var(--color-live);color:#fff;padding:1vw 2.5vw;border-radius:1vw;font-size:3.2vw}.h5-player__video,.h5-player video{position:relative;z-index:1;width:100%;height:100%;max-width:100%;max-height:100%;background:#000;object-fit:contain;object-position:center;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.h5-player__webrtc-host{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#000}.h5-player--webrtc .h5-player__webrtc-host .video-js,.h5-player--webrtc .h5-player__webrtc-host .tcp-skin,.h5-player--webrtc .h5-player__webrtc-host .vjs-tech,.h5-player--webrtc .h5-player__webrtc-host video{width:100%!important;height:100%!important}.h5-player--webrtc .h5-player__webrtc-host .video-js{position:absolute;top:0;right:0;bottom:0;left:0;background:#000}.h5-player--webrtc .vjs-control-bar{z-index:4}.h5-player-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4vw;text-align:center;background:#0a2a30d1;color:#ffffffeb;font-size:3.5vw;line-height:1.5;pointer-events:none;box-sizing:border-box}.h5-player-retry{pointer-events:auto;margin-top:3vw;padding:2vw 6vw;border:none;border-radius:2vw;background:var(--color-primary);color:#fff;font-size:3.6vw;cursor:pointer}.h5-player-overlay-hint{margin-top:2vw;font-size:3.2vw;color:#ffffffa6}.h5-player-badge{position:absolute;top:3vw;left:3vw;z-index:2;padding:1vw 2.5vw;border-radius:1vw;font-size:3.2vw;color:#fff}.h5-player-badge--upcoming{background:var(--color-primary)}.h5-live-intro{flex:1 1 0;min-height:0;overflow-y:scroll;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:3.5vw 4vw 4vw;box-sizing:border-box}.h5-live-intro__title{margin:0 0 2vw;font-size:4.2vw;word-break:break-word}.h5-live-intro__desc{font-size:3.5vw;color:var(--color-text-muted);line-height:1.6;margin:2.5vw 0 0;word-break:break-word;white-space:pre-wrap}.h5-live-intro__empty{margin:4vw 0 0;text-align:center;font-size:3.2vw;color:var(--color-text-muted)}.h5-shell--live{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden}.h5-shell--live .h5-sub-nav,.h5-shell--live .h5-player{flex-shrink:0}.h5-live-panel{flex:1 1 0;min-height:0;display:flex;flex-direction:column;background:var(--color-card);border-top:1px solid var(--color-border);overflow:hidden}.h5-live-tabs{flex-shrink:0;display:flex;width:100%;border-bottom:1px solid var(--color-border)}.h5-live-tab{flex:1;margin:0;padding:2.8vw 0;border:none;background:transparent;font-size:3.6vw;font-family:inherit;color:var(--color-text-muted);cursor:pointer}.h5-live-tab--active{color:var(--brand-700);font-weight:600;box-shadow:inset 0 -.55vw 0 var(--brand-600)}.h5-live-tab-body{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.h5-live-tab-body .h5-live-chat,.h5-live-tab-body .h5-live-chat--disabled{flex:1 1 0;min-height:0;height:100%;border-top:none;overflow:hidden}.h5-live-chat{flex:1 1 0;min-height:0;display:flex;flex-direction:column;background:var(--color-card);overflow:hidden}.h5-live-chat--disabled{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:var(--color-card)}.h5-live-chat-list{flex:1 1 0;min-height:0;overflow-x:hidden;overflow-y:scroll;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:3vw 3vw 2vw}.h5-live-chat-item{margin-bottom:3vw}.h5-live-chat-item-head{display:flex;align-items:baseline;gap:2vw;margin-bottom:1vw}.h5-live-chat-name{font-size:3.4vw;font-weight:600;color:var(--brand-700)}.h5-live-chat-time{font-size:3vw;color:var(--color-text-muted)}.h5-live-chat-content{margin:0;font-size:3.6vw;line-height:1.5;color:var(--color-text);word-break:break-word;white-space:pre-wrap}.h5-live-chat-empty,.h5-live-chat-top-hint{text-align:center;font-size:3.2vw;color:var(--color-text-muted);margin:2vw 0}.h5-live-chat-compose{flex-shrink:0;display:flex;gap:2vw;padding:2.5vw 3vw 3vw;border-top:1px solid var(--color-border);background:var(--color-card)}.h5-live-chat-input{flex:1;min-width:0;padding:2.5vw 3vw;border:1px solid var(--color-border);border-radius:2vw;font-size:3.6vw;font-family:inherit;box-sizing:border-box}.h5-live-chat-send{flex-shrink:0;padding:2.5vw 4vw;border:none;border-radius:2vw;background:var(--brand-600);color:#fff;font-size:3.6vw;font-family:inherit}.h5-live-chat-send:disabled{opacity:.5}.h5-live-chat-error{margin:0;padding:0 3vw 2.5vw;font-size:3.2vw;color:var(--color-danger)}.h5-auth{width:100%;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8vw 6vw;text-align:center;background:linear-gradient(180deg,var(--brand-100) 0%,var(--color-card) 45%);box-sizing:border-box}.h5-auth h2{margin:0 0 1.5vw;font-size:5.5vw;color:var(--brand-800)}.h5-auth-tagline{font-size:3.5vw;color:var(--color-text-muted);line-height:1.7;margin-bottom:6vw}.h5-auth-icon{width:14vw;height:14vw;background:#07c160;border-radius:3.5vw;display:flex;align-items:center;justify-content:center;color:#fff;font-size:7vw;margin:5vw 0 2vw;box-shadow:0 1.5vw 4vw #07c16059}.h5-btn{display:flex;align-items:center;justify-content:center;width:75%;max-width:100%;padding:3.2vw;border:none;border-radius:2.5vw;background:#07c160;color:#fff;font-size:4vw;text-align:center;text-decoration:none;box-sizing:border-box;cursor:pointer;box-shadow:0 1.5vw 4vw #07c16059}.h5-btn--block{width:100%;margin-top:2vw}.h5-header--courses{padding:4vw 3.5vw 3.5vw}.h5-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:2.5vw;position:relative;z-index:1}.h5-brand-text{flex:1;min-width:0}.h5-brand-title{margin:0;font-size:4.2vw;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.h5-project-name{display:flex;flex-direction:column;margin:1vw 0 0;font-size:2.8vw;line-height:1.45;word-break:keep-all;letter-spacing:.02em}.h5-project-name--center{align-items:center;text-align:center}.h5-project-name--light{opacity:.9}.h5-me-link{flex-shrink:0;text-decoration:none;color:#fff;display:flex;margin-top:.5vw}.h5-me-icon{display:flex;align-items:center;justify-content:center;width:10vw;height:10vw;border-radius:50%;background:#ffffff47;border:.35vw solid rgba(255,255,255,.55);box-shadow:0 .5vw 2vw #0000001f}.h5-me-icon svg{width:5.5vw;height:5.5vw;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.h5-header--register .h5-register-brand{text-align:center;position:relative;z-index:1}.h5-form-page{padding:5vw 4vw 8vw}.h5-form-page h2{margin:0 0 4vw;font-size:4.8vw;color:var(--brand-800)}.h5-form label{display:block;font-size:3.5vw;font-weight:500;margin-bottom:1.5vw}.h5-form input[type=text],.h5-form input[type=tel]{width:100%;padding:2.8vw 3vw;border:1px solid var(--color-border);border-radius:2vw;font-size:3.8vw;box-sizing:border-box}.h5-field{margin-bottom:4vw}.h5-field-error{display:none;margin:1.5vw 0 0;font-size:3.2vw;color:#d32f2f}.h5-field.is-invalid input[type=text],.h5-field.is-invalid input[type=tel]{border-color:#d32f2f;box-shadow:0 0 0 1px #d32f2f26}.h5-field.is-invalid .h5-gender-group{padding:2vw 2.5vw;border:1px solid #d32f2f;border-radius:2vw;background:#fff5f5}.h5-field.is-invalid .h5-field-error{display:block}.h5-gender-group{display:flex;gap:5vw}.h5-gender-group label{display:flex;align-items:center;gap:1.5vw;font-weight:400;margin:0}.h5-profile-card{margin:3vw;background:var(--color-card);border-radius:2.5vw;overflow:hidden;box-shadow:0 .3vw 1vw #0000000f}.h5-profile-row{display:flex;justify-content:space-between;padding:3.5vw 4vw;border-bottom:1px solid var(--color-border);font-size:3.6vw}.h5-profile-row:last-child{border-bottom:none}.h5-profile-row .label{color:var(--color-text-muted);flex-shrink:0;margin-right:3vw}.h5-profile-row .value{text-align:right;word-break:break-all}.h5-profile-actions{padding:4vw 3vw}.h5-profile-footer{text-align:center;font-size:2.8vw;color:var(--color-text-muted);padding:0 4vw 6vw;line-height:1.5}
