.header[data-v-f55ffb84]{position:sticky;top:0;z-index:100;background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(106,174,58,.25);box-shadow:0 4px 20px #2e5c0f0d}.header-inner[data-v-f55ffb84]{max-width:none;margin:0;padding:12px max(24px,calc((100vw - 1600px)/2));display:flex;align-items:center;gap:28px;height:64px}.logo[data-v-f55ffb84]{display:inline-flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;padding:0;transition:transform .2s ease}.logo[data-v-f55ffb84]:hover{transform:scale(1.02)}.logo-jobvui[data-v-f55ffb84]{display:inline-flex;align-items:center;gap:0;background:#111;border:1.5px solid #111;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.logo-job[data-v-f55ffb84]{color:#fff;font-size:14px;font-weight:900;letter-spacing:-.5px;padding:4px 6px 4px 8px;line-height:1}.logo-vui[data-v-f55ffb84]{background:var(--jobvui-yellow);color:#111;font-size:14px;font-weight:900;letter-spacing:-.5px;padding:4px 8px 4px 6px;border-radius:6px;line-height:1;margin:2px 2px 2px 0}.logo-divider[data-v-f55ffb84]{color:var(--border-light);font-size:12px;font-weight:700;line-height:1}.logo-vuonguom[data-v-f55ffb84]{width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(106,174,58,.4);overflow:hidden;flex-shrink:0;background:#dceff4;box-shadow:0 1px 4px #0000001a,inset 0 0 0 1px #0000000a}.logo-vuonguom img[data-v-f55ffb84]{width:100%;height:100%;object-fit:cover;object-position:50% 46%;transform:scale(2.45);transform-origin:center}.search[data-v-f55ffb84]{flex:1;max-width:560px;display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:999px;padding:8px 16px;background:#fff9;transition:all .25s ease}.search[data-v-f55ffb84]:focus-within{border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px #6aae3a26}.search-icon[data-v-f55ffb84]{display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:color .2s ease}.search:focus-within .search-icon[data-v-f55ffb84]{color:var(--brand-dark)}.search-input[data-v-f55ffb84]{flex:1;border:none;outline:none;font-size:.88rem;background:transparent;color:var(--text-primary)}.search-input[data-v-f55ffb84]::placeholder{color:var(--text-muted)}.nav[data-v-f55ffb84]{margin-left:auto;display:flex;align-items:center;gap:12px}.menu[data-v-f55ffb84]{position:relative}.user-trigger[data-v-f55ffb84]{display:flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;background:#fffc;border:1px solid var(--border);border-radius:999px;cursor:pointer;font:inherit;color:var(--text-primary);transition:all .2s ease}.user-trigger[data-v-f55ffb84]:hover{background:#fff;border-color:var(--brand);box-shadow:0 2px 10px #6aae3a1a}.avatar[data-v-f55ffb84]{width:32px;height:32px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0;box-shadow:0 1px 3px #0000001a}.avatar img[data-v-f55ffb84]{width:100%;height:100%;object-fit:cover;display:block}.avatar-fallback[data-v-f55ffb84]{letter-spacing:.02em}.avatar-lg[data-v-f55ffb84]{width:44px;height:44px;font-size:.95rem}.trigger-name[data-v-f55ffb84]{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:.88rem}.caret[data-v-f55ffb84]{color:var(--text-secondary);font-size:.7rem}.dropdown[data-v-f55ffb84]{position:absolute;right:0;top:calc(100% + 10px);min-width:260px;background:#fffffff2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(106,174,58,.2);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:8px;z-index:100;transform-origin:top right}.profile[data-v-f55ffb84]{display:flex;align-items:center;gap:12px;padding:10px 12px}.profile-text[data-v-f55ffb84]{min-width:0}.profile-name[data-v-f55ffb84]{font-weight:700;font-size:.92rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-email[data-v-f55ffb84]{margin-top:1px;font-size:.78rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider[data-v-f55ffb84]{height:1px;background:#6aae3a26;margin:6px 0}.menu-item[data-v-f55ffb84]{display:flex;align-items:center;gap:10px;padding:10px 12px;font-size:.88rem;font-weight:500;color:var(--text-secondary);text-decoration:none;cursor:pointer;background:transparent;border:none;width:100%;text-align:left;border-radius:var(--radius-sm);transition:all .15s ease}.menu-item-icon[data-v-f55ffb84]{font-size:1rem}.menu-item[data-v-f55ffb84]:hover{background:#6aae3a14;color:var(--brand-dark);padding-left:14px}.menu-item-danger[data-v-f55ffb84]{color:#c92a2a}.menu-item-danger[data-v-f55ffb84]:hover{background:#c92a2a14;color:#c92a2a}.fade-enter-active[data-v-f55ffb84],.fade-leave-active[data-v-f55ffb84]{transition:opacity .2s ease,transform .2s ease}.fade-enter-from[data-v-f55ffb84],.fade-leave-to[data-v-f55ffb84]{opacity:0;transform:translateY(-8px) scale(.98)}.footer[data-v-34f94432]{border-top:1px solid rgba(106,174,58,.2);background:linear-gradient(180deg,#cde9f34d,#dff2f899);color:var(--text-primary);margin-top:auto}.footer-inner[data-v-34f94432]{max-width:1200px;margin:0 auto;padding:40px 24px 32px;display:grid;grid-template-columns:2fr 1fr;gap:40px}.footer-brand-section[data-v-34f94432]{display:flex;flex-direction:column;gap:16px;max-width:500px}.logo[data-v-34f94432]{display:inline-flex;align-items:center;gap:10px;text-decoration:none}.logo-jobvui[data-v-34f94432]{display:inline-flex;align-items:center;gap:0;background:#111;border:1.5px solid #111;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.logo-job[data-v-34f94432]{color:#fff;font-size:14px;font-weight:900;letter-spacing:-.5px;padding:4px 6px 4px 8px;line-height:1}.logo-vui[data-v-34f94432]{background:var(--jobvui-yellow);color:#111;font-size:14px;font-weight:900;letter-spacing:-.5px;padding:4px 8px 4px 6px;border-radius:6px;line-height:1;margin:2px 2px 2px 0}.logo-divider[data-v-34f94432]{color:var(--border-light);font-size:12px;font-weight:700;line-height:1}.logo-vuonguom[data-v-34f94432]{width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(106,174,58,.4);overflow:hidden;flex-shrink:0;background:#dceff4;box-shadow:0 1px 4px #0000001a,inset 0 0 0 1px #0000000a}.logo-vuonguom img[data-v-34f94432]{width:100%;height:100%;object-fit:cover;object-position:50% 46%;transform:scale(2.45);transform-origin:center}.brand-tagline[data-v-34f94432]{font-size:.88rem;color:var(--text-secondary);line-height:1.5}.footer-links-section[data-v-34f94432]{display:flex;justify-content:flex-end}.links[data-v-34f94432]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.links a[data-v-34f94432]{display:inline-block;color:var(--text-secondary);font-size:.88rem;font-weight:600;text-decoration:none;transition:transform .2s ease,color .2s ease}.links a[data-v-34f94432]:hover{color:var(--brand-dark);transform:translate(6px)}.footer-bottom[data-v-34f94432]{grid-column:1 / -1;border-top:1px solid rgba(106,174,58,.15);padding-top:20px;display:flex;justify-content:space-between;align-items:center}.copy[data-v-34f94432]{margin:0;font-size:.8rem;color:var(--text-muted);font-weight:500}@media(max-width:768px){.footer-inner[data-v-34f94432]{grid-template-columns:1fr;gap:30px}.footer-links-section[data-v-34f94432]{justify-content:flex-start}}.backdrop[data-v-2988afe1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-2988afe1]{background:#fff;border-radius:10px;padding:28px 28px 22px;width:min(420px,92vw);box-shadow:0 18px 50px #00000059}h2[data-v-2988afe1]{margin:0 0 10px;font-size:1.2rem;font-weight:700;color:#1c1d1f}.lead[data-v-2988afe1]{margin:0 0 20px;color:#1c1d1f;font-size:.95rem}.actions[data-v-2988afe1]{display:flex;justify-content:flex-end}.btn-primary[data-v-2988afe1]{padding:10px 20px;background:var(--brand);color:#fff;border:none;border-radius:4px;font:inherit;font-weight:700;cursor:pointer}.btn-primary[data-v-2988afe1]:hover{background:var(--brand-dark)}:root{--sky: #cde9f3;--sky-light: #dff2f8;--sky-dark: #a8d5e8;--leaf: #6aae3a;--leaf-light: #82c44e;--leaf-dark: #4d891f;--leaf-glow: rgba(106, 174, 58, .14);--leaf-glow-strong: rgba(106, 174, 58, .24);--bg-primary: #e8f5fb;--bg-secondary: #d8edf5;--bg-card: #ffffff;--bg-card-hover: #eef8f2;--bg-tag: #e6f4ea;--border: #b8dcea;--border-light: #8cc4d8;--jobvui-yellow: #f5a623;--brand: #6aae3a;--brand-light: #82c44e;--brand-dark: #4d891f;--brand-glow: rgba(106, 174, 58, .12);--brand-glow-strong: rgba(106, 174, 58, .22);--orange: var(--leaf);--orange-light: var(--leaf-light);--orange-dark: var(--leaf-dark);--orange-glow: var(--leaf-glow);--text-primary: #1a2e1a;--text-secondary: #3a5c3a;--text-muted: #7aaa7a;--green: var(--leaf);--green-dim: var(--leaf-dark);--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--radius-xl: 24px;--shadow: 0 2px 16px rgba(0, 0, 0, .06), 0 1px 4px rgba(0, 0, 0, .03);--shadow-md: 0 4px 24px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(46, 92, 15, .12);--shadow-brand: 0 8px 24px rgba(106, 174, 58, .25);--card-elevated-shadow: 0 4px 24px rgba(0, 0, 0, .12);--surface-dark: #1c1d1f;--surface-dark-soft: #2d2f31;--surface-dark-text: #ffffff;--surface-dark-muted: rgba(255, 255, 255, .75)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background:linear-gradient(180deg,#dff2f8,#e8f5fb 40%,#edf8ec);color:var(--text-primary);line-height:1.6;min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column}.main{flex:1}a{color:var(--brand-dark);text-decoration:none;transition:color .2s ease,text-shadow .2s ease}a:hover{color:var(--brand)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:700;cursor:pointer;border:none;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit}.btn-primary{background:var(--brand);color:#111;box-shadow:0 2px 8px #6aae3a26}.btn-primary:hover:not(:disabled){background:var(--brand-light);transform:translateY(-1px);box-shadow:var(--shadow-brand)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{background:#fff;color:var(--text-secondary);border:1.5px solid var(--border-light)}.btn-ghost:hover:not(:disabled){color:#111;border-color:var(--brand-dark);background:#6aae3a0f}.badge{display:inline-flex;align-items:center;gap:6px;background:var(--bg-tag);border:1px solid rgba(106,174,58,.3);color:var(--brand-dark);padding:4px 12px;border-radius:100px;font-size:12px;font-weight:600}.page-enter-active,.page-leave-active{transition:opacity .22s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1);will-change:opacity,transform}.page-leave-active{transition-duration:.16s}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-4px)}.skeleton{background:linear-gradient(90deg,#b8dcea2e,#b8dcea6b,#b8dcea2e);background-size:200% 100%;border-radius:6px;animation:skeleton-shimmer 1.4s ease-in-out infinite;display:inline-block}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-bar{display:block;height:12px;width:100%}.skeleton-bar.short{width:40%}.skeleton-bar.medium{width:65%}.skeleton-bar.tall{height:18px}.skeleton-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e4e8eb}.skeleton-table td{padding:14px;border-bottom:1px solid #f0f3f5}.skeleton-card{background:#fff;border:1px solid #e4e8eb;border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;gap:12px}.state-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--radius-sm);font-size:.92rem;font-weight:600;line-height:1.4}.state-badge.error{background:#fde7e5;color:#b4170c;border:1px solid rgba(180,23,12,.18)}.state-badge.empty{background:#f6f8fa;color:#6a6f73;border:1px solid #e4e8eb}.state-badge.info{background:var(--bg-tag);color:var(--brand-dark);border:1px solid rgba(106,174,58,.22)}.state-badge .state-icon{font-size:1.05rem;line-height:1}.input-error,input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:#b4170c!important;box-shadow:0 0 0 3px #b4170c1f!important}.input-help{display:block;margin-top:6px;font-size:.82rem;color:#6a6f73}.input-help.error{color:#b4170c;display:inline-flex;align-items:center;gap:6px}.input-help.error:before{content:"⚠";font-size:.9rem}.wrap[data-v-febc0fd5]{padding:48px 24px;text-align:center;color:#6a6f73}.wrap[data-v-d67dddbd]{max-width:720px;margin:0 auto;padding:40px 24px 64px}h1[data-v-d67dddbd]{font-size:1.5rem;font-weight:800;margin:0 0 24px}.form[data-v-d67dddbd]{display:flex;flex-direction:column;gap:18px}label[data-v-d67dddbd]{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:700}input[data-v-d67dddbd],textarea[data-v-d67dddbd]{border:1px solid #d1d7dc;border-radius:4px;padding:10px 12px;font:inherit;font-weight:400}input[data-v-d67dddbd]:focus,textarea[data-v-d67dddbd]:focus{outline:2px solid var(--brand);outline-offset:-1px}.req[data-v-d67dddbd]{color:#b4170c}.error[data-v-d67dddbd]{color:#b4170c;margin:0}.actions[data-v-d67dddbd]{display:flex;gap:12px;justify-content:flex-end}.btn-primary[data-v-d67dddbd]{background:var(--brand);color:#fff;border:none;padding:10px 20px;border-radius:4px;font-weight:700;cursor:pointer}.btn-primary[data-v-d67dddbd]:disabled{opacity:.6;cursor:wait}.btn-ghost[data-v-d67dddbd]{border:1px solid #1c1d1f;padding:10px 20px;border-radius:4px;background:#fff;font-weight:700;text-decoration:none;color:#1c1d1f}.youtube-spinner-wrap[data-v-9fd36e35]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000004d;z-index:2}.youtube-spinner[data-v-9fd36e35]{width:64px;height:64px;animation:rotate-9fd36e35 2s linear infinite}.youtube-spinner .bg-path[data-v-9fd36e35]{stroke-linecap:round}.youtube-spinner .path[data-v-9fd36e35]{stroke:var(--brand);stroke-linecap:round;animation:dash-9fd36e35 1.5s ease-in-out infinite}@keyframes rotate-9fd36e35{to{transform:rotate(360deg)}}@keyframes dash-9fd36e35{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.bar[data-v-5c0c9233]{position:absolute;left:0;right:0;bottom:0;padding:0 16px 12px;transition:opacity .25s,transform .25s;z-index:4}.bar-bg[data-v-5c0c9233]{position:absolute;right:0;bottom:0;left:0;background:linear-gradient(to top,#000000f2,#0009,#0000);pointer-events:none;z-index:-1;top:-64px}.seek-wrap[data-v-5c0c9233]{position:relative;height:16px;display:flex;align-items:center;cursor:pointer}.seek-track[data-v-5c0c9233]{position:absolute;left:0;right:0;top:50%;height:3px;transform:translateY(-50%);background:#ffffff40;overflow:visible;pointer-events:none;transition:height .1s ease}.seek-wrap:hover .seek-track[data-v-5c0c9233]{height:5px}.seek-buffered[data-v-5c0c9233]{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff6;width:0}.seek-played[data-v-5c0c9233]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--brand);width:0;overflow:visible;display:flex;align-items:center}.seek-knob[data-v-5c0c9233]{position:absolute;right:-6px;width:12px;height:12px;border-radius:50%;background:var(--brand);box-shadow:0 1px 4px #00000080;transform:scale(.6);transition:transform .1s cubic-bezier(.4,0,.2,1);pointer-events:none}.seek-wrap:hover .seek-knob[data-v-5c0c9233]{transform:scale(1.2)}.seek-input[data-v-5c0c9233]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:10}.bar-row[data-v-5c0c9233]{display:flex;align-items:center;gap:16px;margin-top:6px;color:#fff}.player-btn[data-v-5c0c9233]{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:#fff;cursor:pointer;border-radius:50%;transition:background .15s ease;padding:0!important;box-sizing:border-box;flex-shrink:0;outline:none}.player-btn svg[data-v-5c0c9233]{width:24px;height:24px;fill:#fff!important;color:#fff!important;filter:drop-shadow(0px 1px 2px rgba(0,0,0,.8));transition:transform .1s ease,filter .1s ease;display:block}.player-btn[data-v-5c0c9233]:hover{background:#fff3}.player-btn:hover svg[data-v-5c0c9233]{transform:scale(1.1);filter:drop-shadow(0px 2px 4px rgba(0,0,0,.9))}.player-btn[data-v-5c0c9233]:active{transform:scale(.9)}.player-btn.rotate[data-v-5c0c9233]{transform:rotate(45deg)}.volume[data-v-5c0c9233]{display:flex;align-items:center;flex-shrink:0}.vol-slider[data-v-5c0c9233]{width:0;opacity:0;transition:width .18s ease,opacity .18s ease;height:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff4d;margin:0;border-radius:2px;outline:none;cursor:pointer}.volume:hover .vol-slider[data-v-5c0c9233]{width:64px;opacity:1;margin-left:8px}.vol-slider[data-v-5c0c9233]::-webkit-slider-runnable-track{height:3px;border-radius:2px}.vol-slider[data-v-5c0c9233]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;cursor:pointer;margin-top:-4.5px;box-shadow:0 1px 3px #0006;transition:transform .1s}.vol-slider[data-v-5c0c9233]::-webkit-slider-thumb:hover{transform:scale(1.25)}.vol-slider[data-v-5c0c9233]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;cursor:pointer;border:none;box-shadow:0 1px 3px #0006}.time[data-v-5c0c9233]{font-size:.88rem;font-weight:500;font-variant-numeric:tabular-nums;padding-left:4px;color:#f0f0f0;flex-shrink:0;text-shadow:0px 1px 2px rgba(0,0,0,.8)}.spacer[data-v-5c0c9233]{flex:1}.settings-panel[data-v-fdcce818]{position:absolute;bottom:60px;right:16px;width:260px;background:#1c1c1cf5;color:#fff;border-radius:12px;box-shadow:0 12px 36px #000c;padding:8px 0;z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);font-size:.88rem;font-family:inherit}.menu-view[data-v-fdcce818]{display:flex;flex-direction:column}.menu-item[data-v-fdcce818]{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:transparent;border:none;color:#fff;font-size:.88rem;cursor:pointer;transition:background .15s ease;font-family:inherit;width:100%}.menu-item[data-v-fdcce818]:hover{background:#ffffff1a}.menu-item-left[data-v-fdcce818]{display:flex;align-items:center;gap:10px;color:#eee}.menu-item-right[data-v-fdcce818]{display:flex;align-items:center;gap:4px;color:#aaa;font-size:.82rem}.menu-header[data-v-fdcce818]{display:flex;align-items:center;gap:10px;padding:10px 16px;background:transparent;border:none;color:#fff;font-size:.88rem;font-weight:700;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.08);font-family:inherit;width:100%;text-align:left}.menu-header[data-v-fdcce818]:hover{background:#ffffff0d}.menu-icon[data-v-fdcce818]{color:#fff;opacity:.9}.options[data-v-fdcce818]{display:flex;flex-direction:column;padding:4px 0}.opt[data-v-fdcce818]{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;background:transparent;border:none;color:#fff;text-align:left;font-size:.88rem;cursor:pointer;transition:background .1s ease;font-family:inherit}.opt[data-v-fdcce818]:hover{background:#ffffff1a}.opt.active[data-v-fdcce818]{font-weight:700;color:var(--brand-dark)}.check[data-v-fdcce818]{color:var(--brand-dark);font-weight:700}.animate-scale-in[data-v-fdcce818]{animation:scaleIn-fdcce818 .2s cubic-bezier(.4,0,.2,1);transform-origin:bottom right}@keyframes scaleIn-fdcce818{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.wrap[data-v-fbf03291]{position:relative;background:#000;overflow:hidden;-webkit-user-select:none;user-select:none;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.wrap.idle[data-v-fbf03291]{cursor:none}.lesson-nav[data-v-fbf03291]{position:absolute;top:50%;width:48px;height:48px;border-radius:50%;border:none;background:#0000008c;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(-50%);transition:opacity .2s ease,background .15s ease,transform .15s ease;z-index:6;padding:0}.wrap:hover .lesson-nav[data-v-fbf03291]{opacity:1}.wrap.idle .lesson-nav[data-v-fbf03291]{opacity:0;pointer-events:none}.lesson-nav-prev[data-v-fbf03291]{left:16px}.lesson-nav-next[data-v-fbf03291]{right:16px}.lesson-nav[data-v-fbf03291]:hover{background:#000000d9;transform:translateY(-50%) scale(1.08)}.player[data-v-fbf03291]{width:100%;height:100%;display:block;background:#000;outline:none;object-fit:contain}.watermark[data-v-fbf03291]{position:absolute;font-size:11px;color:#ffffff1f;mix-blend-mode:difference;pointer-events:none;z-index:3;font-family:inherit;font-weight:500;letter-spacing:.02em;transition:top 1.5s ease,left 1.5s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.big-play[data-v-fbf03291]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:68px;border:none;border-radius:50%;background:#000000b3;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:2;box-shadow:0 4px 16px #0000004d}.big-play[data-v-fbf03291]:hover{background:var(--brand);transform:translate(-50%,-50%) scale(1.1)}.wrap.idle[data-v-fbf03291] .bar{opacity:0;transform:translateY(8px);pointer-events:none}.backdrop[data-v-8e24f62c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.frame[data-v-8e24f62c]{position:relative;width:100%;max-width:960px;background:#000;border-radius:8px;overflow:hidden}.close[data-v-8e24f62c]{position:absolute;top:8px;right:8px;width:36px;height:36px;border:none;border-radius:50%;background:#0009;color:#fff;font-size:24px;line-height:1;cursor:pointer;z-index:2}.close[data-v-8e24f62c]:hover{background:#000000e6}.uploader[data-v-ba7eeb12]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.file-label[data-v-ba7eeb12]{display:inline-block;padding:6px 12px;border:1px solid var(--brand);border-radius:4px;font-size:.85rem;font-weight:700;color:var(--brand);cursor:pointer}.file-label[data-v-ba7eeb12]:hover{background:#f7f5ff}.file-label input[data-v-ba7eeb12]{display:none}.badge[data-v-ba7eeb12]{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;padding:4px 10px;border-radius:999px}.badge-pending[data-v-ba7eeb12]{color:#855a00;background:#fff4d6}.badge-ready[data-v-ba7eeb12]{color:#1a7d3a;background:#e6f5ec}.badge-failed[data-v-ba7eeb12]{color:#b4170c;background:#fde4e2}.spinner[data-v-ba7eeb12]{width:12px;height:12px;border:2px solid #855a00;border-top-color:transparent;border-radius:50%;animation:spin-ba7eeb12 .8s linear infinite;display:inline-block}@keyframes spin-ba7eeb12{to{transform:rotate(360deg)}}.btn-action[data-v-ba7eeb12]{padding:6px 12px;border:1px solid var(--brand);border-radius:4px;background:#fff;color:var(--brand);font-size:.85rem;font-weight:700;cursor:pointer}.btn-action[data-v-ba7eeb12]:hover:not(:disabled){background:#f7f5ff}.btn-action[data-v-ba7eeb12]:disabled{opacity:.6;cursor:not-allowed}.btn-retry[data-v-ba7eeb12]{border-color:#b4170c;color:#b4170c}.btn-retry[data-v-ba7eeb12]:hover:not(:disabled){background:#fde4e2}.progress[data-v-ba7eeb12]{flex:1;min-width:160px;height:8px;background:#e4e8eb;border-radius:999px;position:relative;overflow:hidden}.bar[data-v-ba7eeb12]{height:100%;background:var(--brand);transition:width .15s linear}.pct[data-v-ba7eeb12]{position:absolute;top:-18px;right:0;font-size:.75rem;color:#6a6f73}.error[data-v-ba7eeb12]{color:#b4170c;font-size:.85rem;margin:0;flex-basis:100%}.materials[data-v-0f10529c]{display:flex;flex-direction:column;gap:6px;flex-basis:100%;margin-top:6px;padding:8px 10px;background:#fff;border:1px dashed #d1d7dc;border-radius:4px}.head[data-v-0f10529c]{display:flex;align-items:center;gap:12px}.title[data-v-0f10529c]{font-size:.8rem;font-weight:700;color:#6a6f73;text-transform:uppercase}.file-label[data-v-0f10529c]{display:inline-block;padding:4px 10px;border:1px solid var(--brand);border-radius:4px;font-size:.8rem;font-weight:700;color:var(--brand);cursor:pointer;margin-left:auto}.file-label[data-v-0f10529c]:hover{background:#f7f5ff}.file-label input[data-v-0f10529c]{display:none}.progress[data-v-0f10529c]{height:6px;background:#e4e8eb;border-radius:999px;position:relative;overflow:hidden}.bar[data-v-0f10529c]{height:100%;background:var(--brand);transition:width .15s linear}.pct[data-v-0f10529c]{position:absolute;top:-16px;right:0;font-size:.7rem;color:#6a6f73}.list[data-v-0f10529c]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.row[data-v-0f10529c]{display:flex;align-items:center;gap:8px;padding:4px 6px;font-size:.85rem;border-radius:3px}.row[data-v-0f10529c]:hover{background:#f7f9fa}.name[data-v-0f10529c]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.size[data-v-0f10529c]{color:#6a6f73;font-size:.75rem}.btn-del[data-v-0f10529c]{background:none;border:none;cursor:pointer;color:#b4170c;font-weight:700;font-size:.8rem}.btn-del[data-v-0f10529c]:hover{text-decoration:underline}.empty[data-v-0f10529c]{color:#6a6f73;font-size:.8rem;margin:0;font-style:italic}.error[data-v-0f10529c]{color:#b4170c;font-size:.8rem;margin:0}.editor[data-v-c3f54a6f]{display:flex;flex-direction:column;gap:16px}.error[data-v-c3f54a6f]{color:#b4170c;background:#fde7e7;padding:8px 12px;border-radius:4px;cursor:pointer;margin:0;font-size:.9rem}.module-card[data-v-c3f54a6f]{background:#fff;border:1px solid #d1d7dc;border-radius:8px;padding:16px}.m-head[data-v-c3f54a6f]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.toolbar[data-v-c3f54a6f]{display:flex;align-items:center;gap:6px;font-size:.85rem;margin:-4px 0}.toolbar .sep[data-v-c3f54a6f]{color:#c2c8cc}.m-collapse[data-v-c3f54a6f]{border:none;background:none;cursor:pointer;padding:2px 4px;color:#6a6f73;display:inline-flex;align-items:center}.chev[data-v-c3f54a6f]{display:inline-block;transition:transform .15s;font-size:.8rem}.chev.open[data-v-c3f54a6f]{transform:rotate(90deg)}.m-count[data-v-c3f54a6f]{font-size:.8rem;color:#6a6f73;background:#f0f2f4;padding:2px 8px;border-radius:999px;white-space:nowrap}.m-handle[data-v-c3f54a6f],.l-handle[data-v-c3f54a6f]{cursor:grab;color:#6a6f73;-webkit-user-select:none;user-select:none;font-weight:700;letter-spacing:-2px}.m-handle[data-v-c3f54a6f]:active,.l-handle[data-v-c3f54a6f]:active{cursor:grabbing}.m-title[data-v-c3f54a6f]{margin:0;font-size:1.05rem;font-weight:700;flex:1;cursor:text}.m-title-input[data-v-c3f54a6f],.l-title-input[data-v-c3f54a6f]{flex:1;border:1px solid var(--brand);padding:6px 8px;border-radius:4px;font:inherit}.l-list[data-v-c3f54a6f]{display:flex;flex-direction:column;gap:6px;min-height:8px}.lesson-row[data-v-c3f54a6f]{display:flex;align-items:center;gap:12px;padding:8px 10px;background:#f7f9fa;border-radius:4px;border:1px solid #e4e8eb;flex-wrap:wrap}.l-title[data-v-c3f54a6f]{flex:1;cursor:text;font-size:.9rem}.add-lesson[data-v-c3f54a6f]{margin-top:10px}.add-lesson input[data-v-c3f54a6f]{width:100%;border:1px dashed #d1d7dc;background:transparent;padding:8px 10px;font:inherit;font-size:.9rem;border-radius:4px}.add-lesson input[data-v-c3f54a6f]:focus{border-style:solid;border-color:var(--brand);outline:none}.add-module[data-v-c3f54a6f]{display:flex;gap:8px}.add-module input[data-v-c3f54a6f]{flex:1;border:1px dashed #d1d7dc;padding:10px 12px;font:inherit;border-radius:4px}.add-module input[data-v-c3f54a6f]:focus{border-style:solid;border-color:var(--brand);outline:none}.btn-primary[data-v-c3f54a6f]{background:var(--brand);color:#fff;border:none;padding:10px 20px;border-radius:4px;font-weight:700;cursor:pointer}.btn-primary[data-v-c3f54a6f]:disabled{opacity:.5;cursor:not-allowed}.btn-link[data-v-c3f54a6f]{background:none;border:none;cursor:pointer;color:var(--brand);font-weight:700;font-size:.85rem}.btn-link.danger[data-v-c3f54a6f]{color:#b4170c}.btn-link[data-v-c3f54a6f]:hover{text-decoration:underline}/*!
 * Cropper.js v1.6.2
 * https://fengyuanchen.github.io/cropperjs
 *
 * Copyright 2015-present Chen Fengyuan
 * Released under the MIT license
 *
 * Date: 2024-04-21T07:43:02.731Z
 */.cropper-container{direction:ltr;font-size:0;line-height:0;position:relative;-ms-touch-action:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.cropper-container img{backface-visibility:hidden;display:block;height:100%;image-orientation:0deg;max-height:none!important;max-width:none!important;min-height:0!important;min-width:0!important;width:100%}.cropper-wrap-box,.cropper-canvas,.cropper-drag-box,.cropper-crop-box,.cropper-modal{bottom:0;left:0;position:absolute;right:0;top:0}.cropper-wrap-box,.cropper-canvas{overflow:hidden}.cropper-drag-box{background-color:#fff;opacity:0}.cropper-modal{background-color:#000;opacity:.5}.cropper-view-box{display:block;height:100%;outline:1px solid #39f;outline-color:#3399ffbf;overflow:hidden;width:100%}.cropper-dashed{border:0 dashed #eee;display:block;opacity:.5;position:absolute}.cropper-dashed.dashed-h{border-bottom-width:1px;border-top-width:1px;height:calc(100% / 3);left:0;top:calc(100% / 3);width:100%}.cropper-dashed.dashed-v{border-left-width:1px;border-right-width:1px;height:100%;left:calc(100% / 3);top:0;width:calc(100% / 3)}.cropper-center{display:block;height:0;left:50%;opacity:.75;position:absolute;top:50%;width:0}.cropper-center:before,.cropper-center:after{background-color:#eee;content:" ";display:block;position:absolute}.cropper-center:before{height:1px;left:-3px;top:0;width:7px}.cropper-center:after{height:7px;left:0;top:-3px;width:1px}.cropper-face,.cropper-line,.cropper-point{display:block;height:100%;opacity:.1;position:absolute;width:100%}.cropper-face{background-color:#fff;left:0;top:0}.cropper-line{background-color:#39f}.cropper-line.line-e{cursor:ew-resize;right:-3px;top:0;width:5px}.cropper-line.line-n{cursor:ns-resize;height:5px;left:0;top:-3px}.cropper-line.line-w{cursor:ew-resize;left:-3px;top:0;width:5px}.cropper-line.line-s{bottom:-3px;cursor:ns-resize;height:5px;left:0}.cropper-point{background-color:#39f;height:5px;opacity:.75;width:5px}.cropper-point.point-e{cursor:ew-resize;margin-top:-3px;right:-3px;top:50%}.cropper-point.point-n{cursor:ns-resize;left:50%;margin-left:-3px;top:-3px}.cropper-point.point-w{cursor:ew-resize;left:-3px;margin-top:-3px;top:50%}.cropper-point.point-s{bottom:-3px;cursor:s-resize;left:50%;margin-left:-3px}.cropper-point.point-ne{cursor:nesw-resize;right:-3px;top:-3px}.cropper-point.point-nw{cursor:nwse-resize;left:-3px;top:-3px}.cropper-point.point-sw{bottom:-3px;cursor:nesw-resize;left:-3px}.cropper-point.point-se{bottom:-3px;cursor:nwse-resize;height:20px;opacity:1;right:-3px;width:20px}@media(min-width:768px){.cropper-point.point-se{height:15px;width:15px}}@media(min-width:992px){.cropper-point.point-se{height:10px;width:10px}}@media(min-width:1200px){.cropper-point.point-se{height:5px;opacity:.75;width:5px}}.cropper-point.point-se:before{background-color:#39f;bottom:-50%;content:" ";display:block;height:200%;opacity:0;position:absolute;right:-50%;width:200%}.cropper-invisible{opacity:0}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.cropper-hide{display:block;height:0;position:absolute;width:0}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-drag-box,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}.backdrop[data-v-075994d3]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal[data-v-075994d3]{background:#fff;border-radius:12px;width:min(800px,96vw);max-height:92vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000073;overflow:hidden}.head[data-v-075994d3]{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid #e3e7ea}.head h2[data-v-075994d3]{margin:0;font-size:1.1rem;font-weight:800;color:var(--brand-dark)}.close[data-v-075994d3]{background:none;border:none;padding:6px;cursor:pointer;color:var(--text-secondary);border-radius:6px}.close[data-v-075994d3]:hover{background:#0000000f;color:var(--text-primary)}.close[data-v-075994d3]:disabled{cursor:not-allowed;opacity:.5}.body[data-v-075994d3]{padding:18px 22px;flex:1;min-height:0;overflow:auto}.dropzone[data-v-075994d3]{border:2px dashed var(--brand-light);border-radius:12px;padding:44px 24px;text-align:center;cursor:pointer;transition:background .15s ease,border-color .15s ease;display:flex;flex-direction:column;align-items:center;gap:8px}.dropzone[data-v-075994d3]:hover{background:var(--brand-glow);border-color:var(--brand)}.dz-icon[data-v-075994d3]{color:var(--brand-dark)}.dz-title[data-v-075994d3]{margin:4px 0 0;font-weight:800;color:var(--text-primary);font-size:1.05rem}.dz-sub[data-v-075994d3]{margin:0;color:var(--text-secondary);font-size:.92rem}.dz-link[data-v-075994d3]{color:var(--brand-dark);font-weight:700;text-decoration:underline}.dz-hint[data-v-075994d3]{margin:4px 0 0;color:var(--text-muted);font-size:.82rem}.cropper-wrap[data-v-075994d3]{display:flex;flex-direction:column;gap:10px}.crop-img[data-v-075994d3]{display:block;max-width:100%;max-height:60vh}.crop-hint[data-v-075994d3]{margin:0;text-align:center;font-size:.85rem;color:var(--text-secondary)}.error[data-v-075994d3]{margin:0 22px 8px;padding:8px 12px;background:#b4170c14;border:1px solid rgba(180,23,12,.25);border-radius:8px;color:#b4170c;font-size:.88rem}.footer[data-v-075994d3]{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-top:1px solid #e3e7ea;gap:16px}.progress[data-v-075994d3]{display:flex;align-items:center;gap:10px;flex:1;font-size:.85rem;color:var(--text-secondary)}.bar[data-v-075994d3]{flex:1;height:6px;background:#e3e7ea;border-radius:999px;overflow:hidden;max-width:200px}.fill[data-v-075994d3]{height:100%;background:linear-gradient(90deg,var(--brand) 0%,var(--brand-light) 100%);transition:width .2s ease}.actions[data-v-075994d3]{display:flex;gap:8px;margin-left:auto}.btn-cancel[data-v-075994d3]{background:#fff;color:var(--text-secondary);border:1px solid #d1d7dc;padding:10px 18px;border-radius:8px;font-weight:700;cursor:pointer}.btn-cancel[data-v-075994d3]:hover:not(:disabled){background:#f7f9fa}.btn-cancel[data-v-075994d3]:disabled{opacity:.5;cursor:not-allowed}.btn-save[data-v-075994d3]{background:var(--brand);color:#fff;border:none;padding:10px 22px;border-radius:8px;font-weight:800;cursor:pointer;box-shadow:0 4px 14px #6aae3a4d;transition:background .15s ease}.btn-save[data-v-075994d3]:hover:not(:disabled){background:var(--brand-dark)}.btn-save[data-v-075994d3]:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.cropper-point.point-se,.cropper-point.point-sw,.cropper-point.point-ne,.cropper-point.point-nw{background-color:#4d891f!important;width:8px;height:8px}.thumb-frame[data-v-2098e30b]{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--bg-secondary, #d8edf5)}.thumb-frame.rounded[data-v-2098e30b]{border-radius:var(--radius, 12px)}.empty[data-v-2098e30b]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--sky-light, #dff2f8) 0%,var(--sky, #cde9f3) 100%)}.ms-list[data-v-32dd5a7d]{border:1px solid #d1d7dc;border-radius:4px;padding:12px 14px 14px;margin:0}legend[data-v-32dd5a7d]{font-weight:700;font-size:.85rem;padding:0 6px}.row[data-v-32dd5a7d]{display:flex;gap:8px;margin-bottom:8px}.row input[data-v-32dd5a7d]{flex:1;border:1px solid #d1d7dc;border-radius:4px;padding:8px 10px;font:inherit;font-weight:400}.row input[data-v-32dd5a7d]:focus{outline:2px solid var(--brand);outline-offset:-1px}.rm[data-v-32dd5a7d]{width:36px;border:1px solid #d1d7dc;background:#fff;border-radius:4px;font-size:18px;cursor:pointer;color:#6a6f73}.rm[data-v-32dd5a7d]:hover{background:#fdecea;color:#b4170c}.add[data-v-32dd5a7d]{border:none;background:transparent;color:var(--brand);font-weight:700;cursor:pointer;padding:4px 0;font-size:.9rem}.add[data-v-32dd5a7d]:hover{text-decoration:underline}.backdrop[data-v-bde914f7]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal[data-v-bde914f7]{background:#fff;border-radius:12px;width:min(640px,96vw);max-height:92vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000073;overflow:hidden}.head[data-v-bde914f7]{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid #e3e7ea}.head h2[data-v-bde914f7]{margin:0;font-size:1.1rem;font-weight:800;color:var(--brand-dark)}.close[data-v-bde914f7]{background:none;border:none;padding:6px;cursor:pointer;color:var(--text-secondary);border-radius:6px}.close[data-v-bde914f7]:hover{background:#0000000f;color:var(--text-primary)}.close[data-v-bde914f7]:disabled{cursor:not-allowed;opacity:.5}.body[data-v-bde914f7]{padding:18px 22px;flex:1;min-height:0;overflow:auto}.dropzone[data-v-bde914f7]{border:2px dashed var(--brand-light);border-radius:12px;padding:44px 24px;text-align:center;cursor:pointer;transition:background .15s ease,border-color .15s ease;display:flex;flex-direction:column;align-items:center;gap:8px}.dropzone[data-v-bde914f7]:hover{background:var(--brand-glow);border-color:var(--brand)}.dz-icon[data-v-bde914f7]{color:var(--brand-dark)}.dz-title[data-v-bde914f7]{margin:4px 0 0;font-weight:800;color:var(--text-primary);font-size:1.05rem}.dz-sub[data-v-bde914f7]{margin:0;color:var(--text-secondary);font-size:.92rem}.dz-link[data-v-bde914f7]{color:var(--brand-dark);font-weight:700;text-decoration:underline}.dz-hint[data-v-bde914f7]{margin:4px 0 0;color:var(--text-muted);font-size:.82rem}.cropper-wrap[data-v-bde914f7]{display:flex;flex-direction:column;gap:10px}.crop-img[data-v-bde914f7]{display:block;max-width:100%;max-height:56vh}.crop-hint[data-v-bde914f7]{margin:0;text-align:center;font-size:.85rem;color:var(--text-secondary)}.error[data-v-bde914f7]{margin:0 22px 8px;padding:8px 12px;background:#b4170c14;border:1px solid rgba(180,23,12,.25);border-radius:8px;color:#b4170c;font-size:.88rem}.footer[data-v-bde914f7]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid #e3e7ea}.btn-cancel[data-v-bde914f7]{background:#fff;color:var(--text-secondary);border:1px solid #d1d7dc;padding:10px 18px;border-radius:8px;font-weight:700;cursor:pointer}.btn-cancel[data-v-bde914f7]:hover:not(:disabled){background:#f7f9fa}.btn-cancel[data-v-bde914f7]:disabled{opacity:.5;cursor:not-allowed}.btn-save[data-v-bde914f7]{background:var(--brand);color:#fff;border:none;padding:10px 22px;border-radius:8px;font-weight:800;cursor:pointer;box-shadow:0 4px 14px #6aae3a4d;transition:background .15s ease}.btn-save[data-v-bde914f7]:hover:not(:disabled){background:var(--brand-dark)}.btn-save[data-v-bde914f7]:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.cropper-view-box,.cropper-face{outline-color:#6aae3a!important}.cropper-view-box{border-radius:50%}.cropper-line,.cropper-point{background-color:#6aae3a!important}.hint[data-v-1b65844e]{font-size:.85rem;color:var(--text-secondary);margin:0 0 16px}.ci-row[data-v-1b65844e]{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-top:1px solid #e5edf0}.ci-avatar[data-v-1b65844e]{position:relative;width:76px;height:76px;padding:0;border-radius:50%;flex-shrink:0;cursor:pointer;overflow:hidden;border:2px solid var(--border-light, #8cc4d8);box-shadow:var(--shadow, 0 2px 10px rgba(0, 0, 0, .08));transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.ci-avatar[data-v-1b65844e]:hover{transform:translateY(-2px);border-color:var(--brand);box-shadow:var(--shadow-brand, 0 6px 18px rgba(106, 174, 58, .3))}.ci-img[data-v-1b65844e],.ci-ph[data-v-1b65844e]{width:100%;height:100%;border-radius:50%;object-fit:cover;display:flex;align-items:center;justify-content:center;background:var(--brand-glow, #eef5e6);color:var(--brand-dark);font-weight:800;font-size:1.7rem}.ci-overlay[data-v-1b65844e]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#1a2e1a8c;color:#fff;font-size:.72rem;font-weight:700;text-align:center;opacity:0;transition:opacity .18s ease}.ci-avatar:hover .ci-overlay[data-v-1b65844e],.ci-avatar.uploading .ci-overlay[data-v-1b65844e]{opacity:1}.ci-cam[data-v-1b65844e]{padding:0 4px;line-height:1.2}.ci-spin[data-v-1b65844e]{width:22px;height:22px;border:3px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:ci-spin-1b65844e .7s linear infinite}@keyframes ci-spin-1b65844e{to{transform:rotate(360deg)}}.ci-fields[data-v-1b65844e]{flex:1;display:flex;flex-direction:column;gap:8px}.ci-fields input[data-v-1b65844e],.ci-fields textarea[data-v-1b65844e]{width:100%;padding:8px 10px;border:1px solid #d7e0e4;border-radius:8px;font:inherit}.ci-remove[data-v-1b65844e]{border:none;background:transparent;color:#c0392b;cursor:pointer;font-size:1.1rem;padding:4px 8px}.btn-add[data-v-1b65844e]{margin-top:12px;border:1px dashed var(--brand);background:transparent;color:var(--brand-dark);border-radius:8px;padding:10px 16px;font-weight:700;cursor:pointer}.actions[data-v-1b65844e]{margin-top:20px}.modal-backdrop[data-v-b6dd801f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.modal-card[data-v-b6dd801f]{background:#fff;border-radius:10px;padding:24px;width:100%;max-width:520px;display:flex;flex-direction:column;gap:14px;box-shadow:0 12px 48px #0000004d}.modal-title[data-v-b6dd801f]{font-size:1.2rem;font-weight:800;margin:0}.modal-sub[data-v-b6dd801f]{font-size:.85rem;color:var(--text-secondary, #555);margin:0;line-height:1.4}.modal-label[data-v-b6dd801f]{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:700}.modal-actions[data-v-b6dd801f]{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.req[data-v-b6dd801f]{color:#b4170c}.modal-backdrop[data-v-c9a7e15b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.modal-card[data-v-c9a7e15b]{background:#fff;border-radius:10px;padding:24px;width:100%;max-width:520px;display:flex;flex-direction:column;gap:14px;box-shadow:0 12px 48px #0000004d}.modal-title[data-v-c9a7e15b]{font-size:1.2rem;font-weight:800;margin:0}.modal-sub[data-v-c9a7e15b]{font-size:.85rem;color:var(--text-secondary, #555);margin:0;line-height:1.4}.modal-label[data-v-c9a7e15b]{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:700}.modal-label input[data-v-c9a7e15b]{padding:8px 12px;border:1px solid #d1d7dc;border-radius:4px;font:inherit}.lookup-state[data-v-c9a7e15b]{font-size:.85rem;color:#6a6f73}.lookup-state.empty[data-v-c9a7e15b]{color:#8c5d00}.user-card[data-v-c9a7e15b]{border:1px solid #d6f3df;background:#f3fbf5;border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.user-card.self[data-v-c9a7e15b]{border-color:#f0c860;background:#fff7e0}.user-main[data-v-c9a7e15b]{display:flex;align-items:center;gap:8px}.user-name[data-v-c9a7e15b]{font-weight:700}.user-role[data-v-c9a7e15b]{font-size:.72rem;font-weight:700;padding:1px 8px;border-radius:999px;background:var(--bg-tag);color:var(--brand)}.user-email[data-v-c9a7e15b]{font-size:.85rem;color:#444}.user-warn[data-v-c9a7e15b]{font-size:.8rem;color:#8c5d00;font-weight:600}.user-note[data-v-c9a7e15b]{font-size:.8rem;color:#1a7d3a}.modal-actions[data-v-c9a7e15b]{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.req[data-v-c9a7e15b]{color:#b4170c}.btn-ghost[data-v-c9a7e15b],.btn-primary[data-v-c9a7e15b]{padding:8px 16px;border-radius:4px;font:inherit;font-weight:700;cursor:pointer}.btn-ghost[data-v-c9a7e15b]{border:1px solid #1c1d1f;background:#fff}.btn-primary[data-v-c9a7e15b]{border:1px solid var(--brand);background:var(--brand);color:#fff}.btn-ghost[data-v-c9a7e15b]:disabled,.btn-primary[data-v-c9a7e15b]:disabled{opacity:.5;cursor:not-allowed}.overlay[data-v-87b39b5e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.dialog[data-v-87b39b5e]{background:#fff;border-radius:12px;width:100%;max-width:560px;max-height:90vh;overflow:auto;padding:20px;box-shadow:0 12px 40px #00000040}.head[data-v-87b39b5e]{display:flex;align-items:center;justify-content:space-between}.head h2[data-v-87b39b5e]{font-size:18px;margin:0}.x[data-v-87b39b5e]{border:none;background:none;font-size:18px;cursor:pointer;color:#666}.sub[data-v-87b39b5e]{margin:8px 0 4px}.hint[data-v-87b39b5e]{font-size:13px;color:#555;background:#f6f8fa;border-radius:8px;padding:10px 12px}.picker[data-v-87b39b5e]{display:flex;gap:12px;align-items:center;margin:14px 0;flex-wrap:wrap}.btn[data-v-87b39b5e]{border:1px solid #d0d7de;background:#fff;border-radius:8px;padding:8px 14px;cursor:pointer;font-size:14px}.btn.primary[data-v-87b39b5e]{background:#1f6feb;border-color:#1f6feb;color:#fff}.btn[data-v-87b39b5e]:disabled{opacity:.55;cursor:not-allowed}.bar[data-v-87b39b5e]{position:relative;height:22px;background:#eaeef2;border-radius:6px;overflow:hidden;margin-bottom:10px}.bar-fill[data-v-87b39b5e]{height:100%;background:#1f6feb;transition:width .2s}.bar-text[data-v-87b39b5e]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#111}.alert[data-v-87b39b5e]{border-radius:8px;padding:10px 12px;font-size:13px;margin:10px 0}.alert.error[data-v-87b39b5e]{background:#ffebe9;color:#b3261e}.alert.warn[data-v-87b39b5e]{background:#fff8c5;color:#6b5900}.alert.warn pre[data-v-87b39b5e]{white-space:pre-wrap;word-break:break-word;margin:6px 0 0;font-size:12px}.result[data-v-87b39b5e]{margin-top:6px}.status-row[data-v-87b39b5e]{display:flex;align-items:center;gap:8px}.badge[data-v-87b39b5e]{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.badge.pending[data-v-87b39b5e],.badge.processing[data-v-87b39b5e]{background:#ddf4ff;color:#0969da}.badge.completed[data-v-87b39b5e]{background:#dafbe1;color:#1a7f37}.badge.failed[data-v-87b39b5e]{background:#ffebe9;color:#b3261e}.counts[data-v-87b39b5e]{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:6px}.counts li.ok strong[data-v-87b39b5e]{color:#1a7f37}.counts li.bad strong[data-v-87b39b5e]{color:#b3261e}.muted[data-v-87b39b5e]{color:#666;font-size:13px}.spinner[data-v-87b39b5e]{width:14px;height:14px;border:2px solid #c8d1da;border-top-color:#0969da;border-radius:50%;animation:spin-87b39b5e .8s linear infinite}@keyframes spin-87b39b5e{to{transform:rotate(360deg)}}.foot[data-v-87b39b5e]{display:flex;justify-content:flex-end;margin-top:16px}.pager[data-v-491f9263]{display:flex;align-items:center;gap:12px;margin-top:12px}.pinfo[data-v-491f9263]{font-size:13px;color:#57606a}.pbtn[data-v-491f9263]{border:1px solid #d0d7de;background:#fff;border-radius:8px;padding:6px 12px;cursor:pointer;font-size:14px;line-height:1}.pbtn[data-v-491f9263]:disabled{opacity:.45;cursor:not-allowed}.pbtn[data-v-491f9263]:not(:disabled):hover{background:#f3f5f7}.filters[data-v-90d978e9]{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.input[data-v-90d978e9]{padding:8px 12px;border:1px solid #d1d7dc;border-radius:6px;font:inherit;min-width:240px}.btn[data-v-90d978e9]{padding:8px 16px;border:1px solid #1c1d1f;background:#fff;border-radius:6px;font:inherit;font-weight:600;cursor:pointer}.btn.ghost[data-v-90d978e9]{border-color:#d1d7dc;color:#57606a;font-weight:500}.counts[data-v-90d978e9]{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.pill[data-v-90d978e9]{background:#eef2f6;border-radius:999px;padding:4px 12px;font-size:13px}.pill.warn[data-v-90d978e9]{background:#fff4d6}.grid[data-v-90d978e9]{width:100%;border-collapse:collapse}.grid th[data-v-90d978e9],.grid td[data-v-90d978e9]{text-align:left;padding:10px 12px;border-bottom:1px solid #eaeef2;font-size:14px}.grid th[data-v-90d978e9]{color:#57606a;font-weight:600}.grid tbody tr[data-v-90d978e9]:hover{background:#fafbfc}.empty[data-v-90d978e9]{color:#6a6f73;text-align:center;padding:24px 0}.invites[data-v-90d978e9]{margin-top:28px}.invites h3[data-v-90d978e9]{font-size:15px;margin:0 0 4px}.alert.error[data-v-90d978e9]{background:#ffebe9;color:#b3261e;border-radius:8px;padding:10px 12px;font-size:13px}.muted[data-v-90d978e9]{color:#6a6f73;font-size:14px}.muted.small[data-v-90d978e9]{font-size:12px;margin:0 0 10px}.tiles[data-v-96f12146]{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;margin-bottom:22px}.tile[data-v-96f12146]{border:1px solid #eaeef2;border-left-width:4px;border-radius:10px;padding:14px 16px;background:#fff}.tile .num[data-v-96f12146]{font-size:26px;font-weight:800;line-height:1}.tile .lbl[data-v-96f12146]{font-size:12px;color:#57606a;margin-top:6px}.tile.ok[data-v-96f12146]{border-left-color:#1a7f37}.tile.ok .num[data-v-96f12146]{color:#1a7f37}.tile.skip[data-v-96f12146]{border-left-color:#8b949e}.tile.fail[data-v-96f12146]{border-left-color:#b3261e}.tile.fail .num[data-v-96f12146]{color:#b3261e}.tile.total[data-v-96f12146]{border-left-color:#2e7d32}.grid[data-v-96f12146]{width:100%;border-collapse:collapse}.grid th[data-v-96f12146],.grid td[data-v-96f12146]{text-align:left;padding:10px 12px;border-bottom:1px solid #eaeef2;font-size:14px}.grid th[data-v-96f12146]{color:#57606a;font-weight:600}.num-col[data-v-96f12146]{text-align:right;width:70px}.bad[data-v-96f12146]{color:#b3261e;font-weight:600}.file[data-v-96f12146]{font-weight:500}.link[data-v-96f12146]{background:none;border:none;padding:0;font:inherit;font-weight:500;color:var(--brand, #2563eb);text-decoration:underline;cursor:pointer;text-align:left}.link[data-v-96f12146]:hover{text-decoration:none}.link[data-v-96f12146]:disabled{opacity:.5;cursor:default}.clickable[data-v-96f12146]{cursor:pointer}.clickable[data-v-96f12146]:hover{background:#f3f8f4}.chev[data-v-96f12146]{color:#8b949e;text-align:right;font-size:18px}.reason[data-v-96f12146]{color:#6a6f73}.badge[data-v-96f12146]{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;white-space:nowrap}.badge.ok[data-v-96f12146]{background:#dafbe1;color:#1a7f37}.badge.skip[data-v-96f12146]{background:#eef2f6;color:#57606a}.badge.fail[data-v-96f12146]{background:#ffebe9;color:#b3261e}.badge.run[data-v-96f12146]{background:#ddf4ff;color:#0969da}.detail-head[data-v-96f12146]{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap}.back[data-v-96f12146]{border:1px solid #d0d7de;background:#fff;border-radius:8px;padding:6px 12px;cursor:pointer;font-size:13px}.back[data-v-96f12146]:hover{background:#f3f5f7}.detail-title[data-v-96f12146]{font-size:15px}.empty[data-v-96f12146]{color:#6a6f73;text-align:center;padding:24px 0}.alert.error[data-v-96f12146]{background:#ffebe9;color:#b3261e;border-radius:8px;padding:10px 12px;font-size:13px}.muted[data-v-96f12146]{color:#6a6f73;font-size:14px}.muted.small[data-v-96f12146]{font-size:12px}.wrap[data-v-28e2a254]{padding:8px 0}.topbar[data-v-28e2a254]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.segmented[data-v-28e2a254]{display:inline-flex;background:#eef2f6;border-radius:10px;padding:3px}.seg[data-v-28e2a254]{border:none;background:transparent;border-radius:8px;padding:7px 16px;font-size:14px;font-weight:600;color:#57606a;cursor:pointer;transition:all .15s}.seg.active[data-v-28e2a254]{background:#fff;color:#1a7f37;box-shadow:0 1px 2px #00000014}.btn.primary[data-v-28e2a254]{border:1px solid #2e7d32;background:#2e7d32;color:#fff;border-radius:8px;padding:9px 16px;font-size:14px;font-weight:600;cursor:pointer}.btn.primary[data-v-28e2a254]:hover{background:#276a2b}.wrap[data-v-5409729a]{max-width:1180px;margin:0 auto;padding:24px 24px 64px}.head[data-v-5409729a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.btn-back[data-v-5409729a]{background:none;border:none;color:var(--brand);font-weight:700;cursor:pointer;padding:0;font-size:.9rem}.btn-back[data-v-5409729a]:hover{text-decoration:underline}.head-actions[data-v-5409729a]{display:flex;align-items:center;gap:12px}h1[data-v-5409729a]{font-size:1.6rem;font-weight:800;margin:8px 0 24px}.tabs[data-v-5409729a]{display:flex;gap:4px;border-bottom:1px solid #d1d7dc;margin-bottom:24px;flex-wrap:wrap}.tab[data-v-5409729a]{background:none;border:none;padding:12px 18px;font-weight:700;cursor:pointer;font-size:.95rem;color:#6a6f73;border-bottom:3px solid transparent;margin-bottom:-1px}.tab.active[data-v-5409729a]{color:#1c1d1f;border-bottom-color:var(--brand)}.ro-shell[data-v-5409729a]{border:0;padding:0;margin:0;min-width:0}.ro-badge[data-v-5409729a]{background:#fff4d6;color:#8c5d00}.btn-ghost[data-v-5409729a]{border:1px solid #1c1d1f;padding:8px 16px;border-radius:4px;background:#fff;font-weight:700;cursor:pointer;font-size:.85rem}.btn-ghost[data-v-5409729a]:disabled{opacity:.5;cursor:not-allowed}.badge[data-v-5409729a]{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.75rem;font-weight:700}.b-pub[data-v-5409729a]{background:#d6f3df;color:#1a7d3a}.b-draft[data-v-5409729a]{background:var(--bg-tag);color:var(--brand)}.b-pending[data-v-5409729a]{background:#fff4d6;color:#8c5d00}.unpublish-pending-banner[data-v-5409729a]{margin:6px 0 18px;padding:10px 14px;background:#fff7e0;border:1px solid #f0c860;border-radius:6px;color:#5a4400;font-size:.9rem}.home[data-v-e7fec05b]{padding-bottom:80px}.courses[data-v-e7fec05b]{max-width:1200px;margin:0 auto;padding:48px 24px 0}.section-head[data-v-e7fec05b]{margin-bottom:36px;text-align:left}.section-label[data-v-e7fec05b]{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--brand-dark);display:inline-block;margin-bottom:8px}.section-head h2[data-v-e7fec05b]{font-size:2rem;font-weight:800;margin:0 0 8px;letter-spacing:-.8px}.sub[data-v-e7fec05b]{margin:0;color:var(--text-secondary);font-size:.98rem}.clear-filter[data-v-e7fec05b]{background:none;border:none;color:var(--brand-dark);font-weight:700;cursor:pointer;font-size:.92rem;padding:0;text-decoration:underline}.clear-filter[data-v-e7fec05b]:hover{color:var(--brand)}.state-msg[data-v-e7fec05b]{margin:0;padding:48px 0;text-align:center;color:var(--text-secondary);font-size:.98rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:12px}.spinner[data-v-e7fec05b]{width:20px;height:20px;border:3px solid rgba(106,174,58,.2);border-top-color:var(--brand);border-radius:50%;animation:spin-e7fec05b .8s linear infinite}@keyframes spin-e7fec05b{to{transform:rotate(360deg)}}.error-msg[data-v-e7fec05b]{color:#c92a2a}.empty-state[data-v-e7fec05b]{text-align:center;padding:60px 24px;background:#fff;border:1px dashed var(--border);border-radius:var(--radius-lg)}.empty-icon[data-v-e7fec05b]{font-size:3rem;margin-bottom:12px;display:block}.grid[data-v-e7fec05b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:28px}.card[data-v-e7fec05b]{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(106,174,58,.15);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;color:inherit;cursor:pointer;height:100%}.card[data-v-e7fec05b]:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px);border-color:var(--brand)}.thumb-wrapper[data-v-e7fec05b]{position:relative;overflow:hidden;background:#f2f4f7}.thumb-wrapper[data-v-e7fec05b] .thumb-frame{transition:transform .4s ease}.card:hover .thumb-wrapper[data-v-e7fec05b] .thumb-frame{transform:scale(1.05)}.badge-level[data-v-e7fec05b]{position:absolute;top:12px;left:12px;background:#111111d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:6px}.card-body[data-v-e7fec05b]{padding:20px;display:flex;flex-direction:column;flex:1}.title[data-v-e7fec05b]{margin:0 0 10px;font-size:1.05rem;font-weight:800;line-height:1.4;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}.desc[data-v-e7fec05b]{margin:0 0 16px;font-size:.88rem;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}.card-footer[data-v-e7fec05b]{margin-top:auto;padding-top:12px;border-top:1px solid rgba(106,174,58,.1);display:flex;align-items:center;justify-content:space-between}.author[data-v-e7fec05b]{font-size:.8rem;color:var(--brand-dark);font-weight:700;display:flex;align-items:center;gap:4px}.author-icon[data-v-e7fec05b]{font-size:.85rem;opacity:.8}.wrap[data-v-c24f54eb]{max-width:1180px;margin:0 auto;padding:40px 24px 64px}.head[data-v-c24f54eb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}h1[data-v-c24f54eb]{font-size:1.6rem;font-weight:800;margin:0}.muted[data-v-c24f54eb]{color:#6a6f73;font-size:.95rem}.error[data-v-c24f54eb]{color:#b4170c}.btn-primary[data-v-c24f54eb]{background:var(--brand);color:#fff;border:none;padding:10px 18px;border-radius:4px;font-weight:700;cursor:pointer}.btn-primary[data-v-c24f54eb]:hover{background:var(--brand-dark)}.grid[data-v-c24f54eb]{width:100%;border-collapse:collapse;font-size:.95rem}.grid th[data-v-c24f54eb],.grid td[data-v-c24f54eb]{text-align:left;padding:12px 14px;border-bottom:1px solid #e4e8eb}.grid .right[data-v-c24f54eb]{text-align:right}.badge[data-v-c24f54eb]{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.75rem;font-weight:700}.b-pub[data-v-c24f54eb]{background:#d6f3df;color:#1a7d3a}.b-draft[data-v-c24f54eb]{background:var(--bg-tag);color:var(--brand)}.b-co[data-v-c24f54eb]{background:#e6eefc;color:#2a4ba0;margin-left:8px}.btn-link[data-v-c24f54eb]{background:none;border:none;color:var(--brand);font-weight:700;cursor:pointer;margin-left:12px;font-size:.9rem}.btn-link.danger[data-v-c24f54eb]{color:#b4170c}.btn-link[data-v-c24f54eb]:hover{text-decoration:underline}.login-page[data-v-d868c40d]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px;background-image:url(/login_bg_widescreen.png);background-size:cover;background-position:center;background-repeat:no-repeat;position:relative}.panel[data-v-d868c40d]{width:100%;max-width:440px;background:#fff;border-radius:8px;padding:48px 40px;box-shadow:0 10px 40px #1a2e1a2e;z-index:10;text-align:left;border:1px solid rgba(106,174,58,.15)}.brand[data-v-d868c40d]{font-size:1.125rem;font-weight:800;color:var(--text-primary);margin-bottom:24px;letter-spacing:-.3px}.welcome[data-v-d868c40d]{margin:0 0 32px;font-size:1.35rem;font-weight:900;color:var(--text-primary);letter-spacing:-.5px;line-height:1.3}.login-form[data-v-d868c40d]{margin-bottom:28px}.btn-continue[data-v-d868c40d]{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;border:none;border-radius:var(--radius-sm);background:var(--brand);color:#1a2e1a;font-weight:800;font-size:.98rem;cursor:pointer;box-shadow:0 4px 14px #6aae3a59;transition:all .25s cubic-bezier(.4,0,.2,1)}.btn-continue[data-v-d868c40d]:hover{background:var(--brand-light);transform:translateY(-1px);box-shadow:0 6px 20px #6aae3a80}.btn-continue[data-v-d868c40d]:active{transform:translateY(1px);box-shadow:0 2px 8px #6aae3a33}.g-icon[data-v-d868c40d]{width:20px;height:20px;flex-shrink:0}.support-section[data-v-d868c40d]{text-align:center;font-size:.85rem;color:var(--text-primary);background:#cde9f326;border-radius:var(--radius-sm);padding:16px;border:1px solid rgba(106,174,58,.1)}.support-text[data-v-d868c40d]{margin:0 0 6px;color:var(--text-secondary);font-weight:600}.support-link[data-v-d868c40d]{color:var(--brand-dark);font-weight:800;text-decoration:none;display:inline-block;margin-bottom:10px;transition:color .2s ease}.support-link[data-v-d868c40d]:hover{color:var(--brand);text-decoration:underline}.policy-links[data-v-d868c40d]{font-size:.78rem;color:var(--text-muted);font-weight:500}.policy-link[data-v-d868c40d]{color:var(--brand-dark);font-weight:700;text-decoration:none}.policy-link[data-v-d868c40d]:hover{text-decoration:underline;color:var(--brand)}.back[data-v-d868c40d]{display:inline-block;width:100%;text-align:center;font-size:.88rem;font-weight:800;color:var(--brand-dark);margin-top:24px;transition:all .2s ease}.back[data-v-d868c40d]:hover{color:var(--brand);transform:translate(-2px)}.animate-fade-in[data-v-d868c40d]{animation:fadeIn-d868c40d .4s cubic-bezier(.4,0,.2,1)}@keyframes fadeIn-d868c40d{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.form{display:flex;flex-direction:column;gap:18px;max-width:820px}.ro-shell{border:0;padding:0;margin:0;min-width:0}.ro-shell[disabled] input,.ro-shell[disabled] textarea,.ro-shell[disabled] select{background:#f4f6f8;cursor:not-allowed}.form label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:700}.form input,.form textarea,.form select{border:1px solid #d1d7dc;border-radius:4px;padding:10px 12px;font:inherit;font-weight:400;background:#fff}.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid var(--brand);outline-offset:-1px}.req{color:#b4170c}.muted{color:#6a6f73}.actions{display:flex;gap:12px}.btn-primary{background:var(--brand);color:#fff;border:none;padding:10px 20px;border-radius:4px;font-weight:700;cursor:pointer}.btn-primary:disabled{opacity:.6;cursor:wait}.row-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:600px){.row-2{grid-template-columns:1fr}}.ms-list{border:1px solid #d1d7dc;border-radius:4px;padding:12px 14px 14px;margin:0}.ms-list legend{font-weight:700;font-size:.85rem;padding:0 6px}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px 16px}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px 12px}.cat-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border:1px solid #e3e7ea;border-radius:6px;background:#fff;transition:border-color .15s ease,background .15s ease;min-width:0}.cat-row:hover{border-color:var(--brand-light);background:var(--brand-glow)}.cat-row:has(input[type=checkbox]:checked){border-color:var(--brand);background:var(--brand-glow)}.chk{display:inline-flex;flex-direction:row;align-items:center;gap:8px;font-weight:400;font-size:.9rem;cursor:pointer;color:var(--text-primary)}.chk input{width:16px;height:16px;flex-shrink:0;accent-color:var(--brand);cursor:pointer;margin:0}.chk input:disabled{cursor:not-allowed}.chk input:disabled+span{color:#aaa}.cat-row .chk{flex:1;min-width:0;gap:10px;font-weight:500}.cat-row .chk span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.primary-radio{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-weight:700;font-size:.78rem;color:var(--brand-dark);cursor:pointer;flex-shrink:0;padding:2px 6px;border-radius:4px}.primary-radio:hover{background:#fff9}.primary-radio input{width:14px;height:14px;accent-color:var(--brand);cursor:pointer}.thumb-field{display:flex;flex-direction:column;gap:8px;font-size:.9rem;font-weight:700}.thumb-label{font-weight:700;color:var(--text-primary)}.thumb-placeholder-box{width:100%;max-width:480px;aspect-ratio:16 / 9;border:2px dashed var(--brand-light);border-radius:var(--radius, 12px);background:var(--brand-glow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--brand-dark);cursor:pointer;transition:background .15s ease,border-color .15s ease}.thumb-placeholder-box:hover{background:var(--brand-glow-strong);border-color:var(--brand)}.ph-title{margin:4px 0 0;font-weight:800;font-size:1rem;color:var(--text-primary)}.ph-sub{margin:0;font-weight:400;font-size:.85rem;color:var(--text-secondary)}.thumb-preview-wrap{position:relative;width:100%;max-width:480px;border-radius:var(--radius, 12px);overflow:hidden;background:#000}.thumb-preview-wrap .thumb-frame{border-radius:var(--radius, 12px)}.thumb-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#0000008c,#0000 50%);display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;padding:12px;opacity:0;transition:opacity .2s ease}.thumb-preview-wrap:hover .thumb-overlay{opacity:1}.ov-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--text-primary);border:none;padding:8px 14px;border-radius:8px;font-weight:700;font-size:.85rem;cursor:pointer;box-shadow:0 2px 8px #0000004d;transition:background .15s ease,transform .12s ease}.ov-btn:hover{background:var(--brand);color:#fff;transform:translateY(-1px)}
