@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@300;400;500;600;700&family=Poppins:wght@600;700&display=swap";:root{--color-primary: #1a7a3c;--color-primary-dark: #135c2c;--color-primary-light: #2da854;--color-primary-subtle: #e8f5ed;--color-accent: #00c853;--color-accent-dim: rgba(0, 200, 83, .15);--color-bg: #f8faf9;--color-surface: #ffffff;--color-surface-2: #f2f5f3;--color-surface-3: #e8ede9;--color-border: #dde5df;--color-border-subtle: #eef2ef;--color-text: #0d1f14;--color-text-secondary: #4a5c50;--color-text-muted: #8a9e90;--color-text-inverse: #ffffff;--color-error: #d32f2f;--color-error-subtle: #fde8e8;--color-warning: #f57c00;--color-warning-subtle: #fff3e0;--color-success: #2e7d32;--color-success-subtle: #e8f5e9;--color-info: #0277bd;--color-info-subtle: #e1f5fe;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .06);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .16);--shadow-primary: 0 4px 20px rgba(26, 122, 60, .25);--font-heading: "Bebas Neue", sans-serif;--font-title: "Poppins", sans-serif;--font-body: "Inter", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 2rem;--text-3xl: 2.5rem;--text-4xl: 3.5rem;--text-5xl: 5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--transition-spring: .3s cubic-bezier(.34, 1.56, .64, 1);--container-max: 1280px;--navbar-height: 70px;--z-base: 0;--z-above: 10;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500}[data-theme=dark]{--color-primary: #2da854;--color-primary-dark: #1a7a3c;--color-primary-light: #4fc870;--color-primary-subtle: rgba(45, 168, 84, .12);--color-accent: #00e676;--color-accent-dim: rgba(0, 230, 118, .12);--color-bg: #080f0a;--color-surface: #0f1a12;--color-surface-2: #162019;--color-surface-3: #1d2b20;--color-border: #243029;--color-border-subtle: #1a2520;--color-text: #e8f5ed;--color-text-secondary: #a8c5b0;--color-text-muted: #5a7a62;--color-text-inverse: #080f0a;--color-error: #ef5350;--color-error-subtle: rgba(239, 83, 80, .12);--color-warning: #ffa726;--color-warning-subtle: rgba(255, 167, 38, .12);--color-success: #66bb6a;--color-success-subtle: rgba(102, 187, 106, .12);--color-info: #29b6f6;--color-info-subtle: rgba(41, 182, 246, .12);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .7);--shadow-primary: 0 4px 20px rgba(45, 168, 84, .3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background-color:var(--color-bg);line-height:1.6;transition:background-color var(--transition-slow),color var(--transition-slow);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:1.1;letter-spacing:.02em;color:var(--color-text)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-md)}p{color:var(--color-text-secondary);line-height:1.7}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-light)}strong{font-weight:600;color:var(--color-text)}img{max-width:100%;display:block}button{cursor:pointer;font-family:var(--font-body);border:none;background:none}input,textarea,select{font-family:var(--font-body);font-size:var(--text-base)}ul,ol{list-style:none}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--space-6);padding-right:var(--space-6)}@media (max-width: 640px){.container{padding-left:var(--space-4);padding-right:var(--space-4)}}.navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:var(--z-sticky);transition:background-color var(--transition-slow),border-color var(--transition-slow);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex}.navbar.scrolled{background:#fffffff2;box-shadow:var(--shadow-sm)}[data-theme=dark] .navbar.scrolled{background:#0f1a12f2}.navbar__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:100%}.navbar__logo{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text);letter-spacing:.05em}.navbar__logo-icon{width:36px;height:36px;background:var(--color-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:18px}.navbar__links{display:flex;align-items:center;justify-content:center;gap:var(--space-8)}.navbar__links a{font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);transition:color var(--transition-fast);position:relative}.navbar__links a:after{content:"";position:absolute;bottom:-4px;left:0;right:0;height:2px;background:var(--color-primary);transform:scaleX(0);transition:transform var(--transition-base)}.navbar__links a:hover,.navbar__links a.active{color:var(--color-primary)}.navbar__links a:hover:after,.navbar__links a.active:after{transform:scaleX(1)}.navbar__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.navbar__hamburger{display:none;flex-direction:column;gap:5px;width:28px;padding:var(--space-2);cursor:pointer}.navbar__hamburger span{display:block;height:2px;background:var(--color-text);transition:all var(--transition-base);border-radius:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.625rem var(--space-5);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);transition:all var(--transition-base);position:relative;overflow:hidden;white-space:nowrap;text-decoration:none;cursor:pointer;border:2px solid transparent;letter-spacing:.01em}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn--primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn--primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:var(--shadow-primary);transform:translateY(-1px);color:#fff}.btn--primary:active{transform:translateY(0)}.btn--outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn--outline:hover{background:var(--color-primary);color:#fff;transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn--ghost:hover{background:var(--color-surface-2);color:var(--color-text)}.btn--danger{background:var(--color-error);color:#fff;border-color:var(--color-error)}.btn--danger:hover{filter:brightness(.9);transform:translateY(-1px);color:#fff}.btn--sm{padding:.375rem var(--space-4);font-size:var(--text-xs)}.btn--lg{padding:.875rem var(--space-8);font-size:var(--text-base);border-radius:var(--radius-lg)}.btn--icon{width:40px;height:40px;padding:0;border-radius:var(--radius-md)}.btn.loading .btn__text{opacity:0}.btn.loading .btn__spinner{display:block}.btn__spinner{display:none;position:absolute;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:var(--text-sm);font-weight:600;color:var(--color-text);letter-spacing:.01em}.form-label .required{color:var(--color-error);margin-left:2px}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem var(--space-4);font-size:var(--text-base);color:var(--color-text);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-slow);outline:none;line-height:1.5}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--color-primary-light)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-accent-dim);background:var(--color-surface)}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-error);box-shadow:0 0 0 3px #d32f2f1a}.form-error{font-size:var(--text-xs);color:var(--color-error);display:flex;align-items:center;gap:var(--space-1);min-height:18px}.form-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.form-textarea{resize:vertical;min-height:100px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234a5c50' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px;cursor:pointer}.input-password-wrapper{position:relative}.input-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--color-text-muted);transition:color var(--transition-fast);display:flex;align-items:center;padding:var(--space-1)}.input-password-toggle:hover{color:var(--color-primary)}.password-strength{display:flex;flex-direction:column;gap:var(--space-2)}.password-strength__bars{display:flex;gap:var(--space-1)}.password-strength__bar{flex:1;height:4px;background:var(--color-border);border-radius:var(--radius-full);transition:background var(--transition-base)}.password-strength__bar.active.weak{background:var(--color-error)}.password-strength__bar.active.fair{background:var(--color-warning)}.password-strength__bar.active.strong{background:var(--color-success)}.password-strength__label{font-size:var(--text-xs);color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-subtle)}.card__cover{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--color-surface-2)}.card__body{padding:var(--space-5)}.card__tag{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:600;padding:3px 10px;border-radius:var(--radius-full);background:var(--color-primary-subtle);color:var(--color-primary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-3)}.card__title{font-size:var(--text-lg);color:var(--color-text);margin-bottom:var(--space-2)}.card__description{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-full);letter-spacing:.04em}.badge--success{background:var(--color-success-subtle);color:var(--color-success)}.badge--warning{background:var(--color-warning-subtle);color:var(--color-warning)}.badge--error{background:var(--color-error-subtle);color:var(--color-error)}.badge--info{background:var(--color-info-subtle);color:var(--color-info)}.badge--primary{background:var(--color-primary-subtle);color:var(--color-primary)}.progress-bar{width:100%;height:6px;background:var(--color-surface-3);border-radius:var(--radius-full);overflow:hidden}.progress-bar__fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);transition:width var(--transition-slow)}.skeleton{background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-surface-3) 50%,var(--color-surface-2) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast-container{position:fixed;top:calc(var(--navbar-height) + var(--space-4));right:var(--space-4);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);max-width:360px;width:100%;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:all;animation:toast-enter .35s var(--transition-spring) both;border-left:4px solid currentColor}.toast.success{color:var(--color-success)}.toast.error{color:var(--color-error)}.toast.warning{color:var(--color-warning)}.toast.info{color:var(--color-info)}.toast.leaving{animation:toast-leave .3s ease forwards}.toast__icon{width:20px;height:20px;flex-shrink:0;margin-top:2px}.toast__content{flex:1}.toast__title{font-size:var(--text-sm);font-weight:600;color:var(--color-text);line-height:1.4}.toast__message{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:2px;line-height:1.5}.toast__close{color:var(--color-text-muted);transition:color var(--transition-fast);flex-shrink:0;padding:2px}.toast__close:hover{color:var(--color-text)}@keyframes toast-enter{0%{transform:translate(110%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-leave{0%{transform:translate(0);opacity:1}to{transform:translate(110%);opacity:0}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.modal-overlay.open{opacity:1;pointer-events:all}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);max-width:560px;width:100%;box-shadow:var(--shadow-xl);transform:scale(.95) translateY(8px);transition:transform var(--transition-spring);max-height:90vh;overflow-y:auto}.modal-overlay.open .modal{transform:scale(1) translateY(0)}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);border-bottom:1px solid var(--color-border)}.modal__title{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text);letter-spacing:.03em}.modal__body{padding:var(--space-6)}.modal__footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-top:1px solid var(--color-border)}.modal__icon{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--color-surface-2);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;margin:var(--space-6) auto var(--space-4);flex-shrink:0}.modal__icon--warning{background:var(--color-warning-subtle);color:var(--color-warning)}.modal__icon--success{background:var(--color-success-subtle);color:var(--color-success)}.modal__text{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;padding:0 var(--space-6) var(--space-4)}.modal__actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6) var(--space-6)}.modal--centered{text-align:center}.modal--centered .modal__title{padding:0 var(--space-6)}.modal--centered .modal__actions{justify-content:center}.modal__thumb{width:100%;height:180px;background-size:cover;background-position:center;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;flex-shrink:0;background-color:var(--color-surface-2)}.modal--enroll .modal__thumb{height:240px;position:relative;display:flex;align-items:flex-end;margin:var(--space-3) var(--space-3) 0;width:auto;border-radius:var(--radius-xl);overflow:hidden}.modal--enroll .modal__thumb:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,.72) 100%);border-radius:var(--radius-xl);pointer-events:none}.modal__close-overlay{position:absolute;top:var(--space-3);right:var(--space-3);z-index:2;width:32px;height:32px;border-radius:50%;background:#0006;border:1.5px solid rgba(255,255,255,.25);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast)}.modal__close-overlay:hover{background:#000000a6}.modal__thumb-footer{position:relative;z-index:1;padding:var(--space-4) var(--space-5);width:100%}.modal--enroll .modal__title{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.4);margin:0}.modal--enroll .modal__body,.modal--enroll .modal__footer{padding:var(--space-4) var(--space-5)}.enroll-desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-3)}.enroll-desc:empty{display:none}.enroll-cta{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-3)}.dropdown{position:relative}.dropdown__menu{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);overflow:hidden;opacity:0;pointer-events:none;transform:translateY(-8px);transition:all var(--transition-base)}.dropdown.open .dropdown__menu{opacity:1;pointer-events:all;transform:translateY(0)}.dropdown__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);width:100%;border:none;background:none;font-family:var(--font-body);text-align:left}.dropdown__item:hover{background:var(--color-surface-2);color:var(--color-text)}.dropdown__item.danger{color:var(--color-error)}.dropdown__item.danger:hover{background:var(--color-error-subtle)}.dropdown__divider{height:1px;background:var(--color-border);margin:var(--space-1) 0}.theme-toggle{width:44px;height:24px;background:var(--color-surface-3);border-radius:var(--radius-full);border:1.5px solid var(--color-border);position:relative;cursor:pointer;transition:background var(--transition-base)}.theme-toggle:after{content:"";position:absolute;width:16px;height:16px;background:var(--color-primary);border-radius:50%;top:2px;left:2px;transition:transform var(--transition-spring)}[data-theme=dark] .theme-toggle:after{transform:translate(20px)}.sidebar{position:fixed;left:0;top:var(--navbar-height);bottom:0;width:260px;background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-6);overflow-y:auto;transition:all var(--transition-base);z-index:var(--z-above)}.sidebar__nav{display:flex;flex-direction:column;gap:var(--space-1)}.sidebar__item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.sidebar__item:hover{background:var(--color-surface-2);color:var(--color-text)}.sidebar__item.active{background:var(--color-primary-subtle);color:var(--color-primary)}.sidebar__section-label{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin:var(--space-5) 0 var(--space-2) var(--space-4)}.table-wrapper{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th{background:var(--color-surface-2);padding:var(--space-4) var(--space-5);text-align:left;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--color-border);white-space:nowrap}.table td{padding:var(--space-4) var(--space-5);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-subtle)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:var(--color-surface-2)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn var(--transition-base) both}.animate-slide-up{animation:slideUp var(--transition-base) both}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-error{color:var(--color-error)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.w-full{width:100%}.mt-4{margin-top:var(--space-4)}.mb-4{margin-bottom:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-6{margin-bottom:var(--space-6)}.mt-8{margin-top:var(--space-8)}.hidden{display:none!important}.invisible{visibility:hidden}@media (max-width: 768px){h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}.navbar__inner{display:flex;justify-content:space-between;align-items:center}.navbar__links{display:none}.navbar__hamburger{display:flex}.sidebar{transform:translate(-100%);width:280px;z-index:var(--z-overlay)}.sidebar.open{transform:translate(0)}}@media (max-width: 480px){:root{--text-4xl: 2.5rem;--text-3xl: 2rem}.toast-container{left:var(--space-4);right:var(--space-4);max-width:none}}.settings-modal{max-width:460px}.settings-modal__body{padding:0}.settings-section{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.settings-section--last{border-bottom:none}.settings-section__title{font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--space-4)}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.settings-row__info{display:flex;flex-direction:column;gap:2px}.settings-row__label{font-size:var(--text-sm);font-weight:500;color:var(--color-text)}.settings-row__desc{font-size:var(--text-xs);color:var(--color-text-muted)}.settings-theme-options{display:flex;gap:var(--space-2);flex-shrink:0}.settings-theme-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);background:var(--color-surface-2);border:2px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-body);white-space:nowrap}.settings-theme-btn:hover{background:var(--color-surface-3);color:var(--color-text)}.settings-theme-btn.active{background:var(--color-primary-subtle);color:var(--color-primary);border-color:var(--color-primary)}.settings-shortcuts{display:flex;flex-direction:column;gap:var(--space-3)}.shortcut-row{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.shortcut-row span{color:var(--color-text-secondary);margin-left:var(--space-1)}kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;min-width:28px;font-size:var(--text-xs);font-family:var(--font-body);font-weight:600;color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-bottom-width:2px;border-radius:var(--radius-sm);white-space:nowrap}.settings-about{display:flex;flex-direction:column;gap:var(--space-3)}.settings-about__logo{display:flex;align-items:baseline;gap:4px}.settings-about__logo-text{font-family:var(--font-heading);font-size:var(--text-lg);color:var(--color-text);letter-spacing:.05em}.settings-about__logo-badge{font-family:var(--font-heading);font-size:var(--text-sm);color:var(--color-primary);background:var(--color-primary-subtle);padding:1px 6px;border-radius:var(--radius-sm);letter-spacing:.02em}.settings-about__desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;margin:0}.settings-about__version{display:inline-block;font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500;font-family:var(--font-body)}.settings-section--danger{padding-top:var(--space-4);padding-bottom:var(--space-4)}.settings-logout-btn{display:inline-flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:600;color:var(--color-error);background:transparent;border:1.5px solid var(--color-error);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-body);width:100%;justify-content:center}.settings-logout-confirm{padding:var(--space-2) 0;text-align:center}.settings-logout-confirm p{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4)}.settings-logout-confirm__actions{display:flex;gap:var(--space-3);justify-content:center}.page-loading{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-bg);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .3s ease}.page-loading.done{opacity:0;pointer-events:none}.spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}.spinner--sm{width:20px;height:20px;border-width:2px}.spinner--lg{width:56px;height:56px;border-width:4px}.mobile-menu{position:fixed;top:var(--navbar-height);left:0;right:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);z-index:calc(var(--z-sticky) - 1);transform:translateY(-110%);transition:transform var(--transition-base);box-shadow:var(--shadow-lg)}.mobile-menu.open{transform:translateY(0)}.mobile-menu a{font-size:var(--text-base);font-weight:500;color:var(--color-text-secondary);padding:var(--space-2) 0}.mobile-menu a:hover{color:var(--color-primary)}.mobile-menu .btn--primary{color:#fff}.mobile-menu .btn--outline{color:var(--color-primary)}.navbar__hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.navbar__hamburger.open span:nth-child(2){opacity:0}.navbar__hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.hero{min-height:100vh;display:flex;align-items:center;padding-top:var(--navbar-height);position:relative;overflow:hidden}.hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero__glow{position:absolute;top:-20%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(26,122,60,.12) 0%,transparent 70%);border-radius:50%}[data-theme=dark] .hero__glow{background:radial-gradient(circle,rgba(45,168,84,.15) 0%,transparent 70%)}.hero__court-lines{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--color-border) 1px,transparent 1px),linear-gradient(90deg,var(--color-border) 1px,transparent 1px);background-size:60px 60px;opacity:.3;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 20%,transparent 80%);mask-image:radial-gradient(ellipse 70% 70% at 50% 50%,black 20%,transparent 80%)}.hero>.container{position:relative;z-index:1;display:flex;align-items:center;gap:var(--space-16);padding-top:var(--space-20);padding-bottom:var(--space-20)}.hero__content{flex:1;max-width:640px}.hero__eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;color:var(--color-primary);text-transform:uppercase;margin-bottom:var(--space-6);background:var(--color-primary-subtle);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full)}.hero__dot{width:6px;height:6px;border-radius:50%;background:var(--color-accent);animation:pulse 2s ease-in-out infinite}.hero__title{font-size:clamp(3rem,7vw,6rem);line-height:.95;margin-bottom:var(--space-6);color:var(--color-text)}.hero__title-accent{color:var(--color-primary);-webkit-text-stroke:2px var(--color-primary);color:transparent;display:inline-block}[data-theme=dark] .hero__title-accent{-webkit-text-stroke-color:var(--color-primary-light)}.hero__subtitle{font-size:var(--text-md);color:var(--color-text-secondary);margin-bottom:var(--space-8);max-width:480px;line-height:1.7}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-12)}.hero__stats{display:flex;align-items:center;gap:var(--space-6)}.hero__stat{display:flex;flex-direction:column;gap:2px}.hero__stat-number{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-text);line-height:1;letter-spacing:.02em}.hero__stat-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.hero__stat-divider{width:1px;height:40px;background:var(--color-border)}.hero__visual{display:none}.hero__visual-art{position:relative;flex-shrink:0;color:var(--color-primary);opacity:.9;animation:float 8s ease-in-out infinite}.section{padding:var(--space-24) 0}.section--alt{background:var(--color-surface-2);border-top:1px solid var(--color-border-subtle);border-bottom:1px solid var(--color-border-subtle)}.section__header{text-align:center;max-width:600px;margin:0 auto var(--space-16)}.section__tag{display:inline-flex;font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;color:var(--color-primary);text-transform:uppercase;margin-bottom:var(--space-4)}.section__header h2{font-size:var(--text-3xl);margin-bottom:var(--space-4)}.section__header p{font-size:var(--text-md)}.section__subheader{margin-bottom:var(--space-6);margin-top:var(--space-16)}.categories-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-12)}.category-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;transition:all var(--transition-base)}.category-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-4px)}.category-card__icon{font-size:2.5rem;margin-bottom:var(--space-4);display:flex;justify-content:center}.category-card__icon svg{color:var(--color-primary)}.category-card h3{font-size:var(--text-lg);color:var(--color-text);margin-bottom:var(--space-2)}.category-card p{font-size:var(--text-sm);color:var(--color-text-secondary)}.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.courses-grid .card{background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;transition:transform var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.courses-grid .card:hover{transform:translateY(-4px);border-color:var(--color-primary-light);box-shadow:var(--shadow-lg)}.card__thumb{width:100%;height:200px;background-size:cover;background-position:center;background-color:var(--color-surface-2)}.card__category{display:inline-flex;align-items:center;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 9px;border-radius:var(--radius-full);background:var(--color-primary-subtle);color:var(--color-primary);margin-bottom:var(--space-3)}.courses-grid .card__title{font-family:var(--font-heading);font-size:1.3rem;color:var(--color-text);text-transform:uppercase;letter-spacing:.02em;line-height:1.1;margin-bottom:var(--space-2)}.card__instructor{font-size:var(--text-xs);color:var(--color-text-muted)}.courses-grid .card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle)}.card__meta{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.card__meta:before{content:"";display:inline-block;width:14px;height:14px;flex-shrink:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a9e90' stroke-width='2'%3E%3Cpolygon points='23 7 16 12 23 17 23 7'/%3E%3Crect x='1' y='5' width='15' height='14' rx='2' ry='2'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center}.card__cta{font-size:var(--text-xs);color:var(--color-primary);font-weight:600;text-decoration:none;transition:color var(--transition-fast);white-space:nowrap}.card__cta:hover{color:var(--color-primary-dark)}[data-theme=dark] .card__meta:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235a7a62' stroke-width='2'%3E%3Cpolygon points='23 7 16 12 23 17 23 7'/%3E%3Crect x='1' y='5' width='15' height='14' rx='2' ry='2'/%3E%3C/svg%3E")}.steps-grid{display:flex;align-items:center;gap:0}.step{flex:1;text-align:center;padding:var(--space-8)}.step__connector{width:80px;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));flex-shrink:0;opacity:.4}.step__number{font-family:var(--font-heading);font-size:var(--text-5xl);color:var(--color-primary);opacity:.15;line-height:1;margin-bottom:var(--space-4)}.step h3{font-size:var(--text-xl);color:var(--color-text);margin-bottom:var(--space-3)}.step p{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:240px;margin:0 auto;line-height:1.7}.cta-section{padding:var(--space-24) 0;background:var(--color-primary);position:relative;overflow:hidden}[data-theme=dark] .cta-section{background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 100%)}.cta-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px}.cta-section__inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;text-align:center;gap:var(--space-8)}.cta-section__content{max-width:580px}.cta-section .section__tag{color:#ffffffb3}.cta-section h2{font-size:var(--text-4xl);color:#fff;margin-bottom:var(--space-4)}.cta-section p{font-size:var(--text-md);color:#fffc;margin-bottom:var(--space-8)}.cta-section .btn--primary{background:#fff;color:var(--color-primary);border-color:#fff}.cta-section .btn--primary:hover{background:#ffffffe6;transform:translateY(-2px);box-shadow:0 8px 32px #0003}.cta-ball{font-size:120px;opacity:.15;animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(10deg)}}.footer{background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-16) 0 var(--space-8)}.footer__grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-12);margin-bottom:var(--space-12)}.footer__heading{font-size:var(--text-xs);font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-4)}.footer__links{display:flex;flex-direction:column;gap:var(--space-3)}.footer__links a{font-size:var(--text-sm);color:var(--color-text-secondary);transition:color var(--transition-fast)}.footer__links a:hover{color:var(--color-primary)}.footer__bottom{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-6);text-align:center}.footer__bottom p{font-size:var(--text-sm);color:var(--color-text-muted)}@media (max-width: 1024px){.categories-grid,.courses-grid{grid-template-columns:repeat(2,1fr)}.hero__visual,.hero__visual-art{display:none}}@media (max-width: 768px){.steps-grid{flex-direction:column}.step__connector{width:2px;height:40px;background:linear-gradient(180deg,var(--color-primary),var(--color-accent))}.footer__grid{grid-template-columns:1fr;gap:var(--space-8)}.cta-section__inner{flex-direction:column;text-align:center}.cta-ball{font-size:80px}.hero__stats{gap:var(--space-4)}}@media (max-width: 640px){.categories-grid{grid-template-columns:repeat(2,1fr)}.courses-grid{grid-template-columns:1fr}.hero__actions{flex-direction:column}.hero__actions .btn{width:100%;justify-content:center}}.footer__social{display:flex;gap:var(--space-3)}.footer__social-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);color:var(--color-text-muted);border:1px solid var(--color-border);transition:all var(--transition-base)}.footer__social-link:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-subtle)}.auth-page{min-height:100vh;background:var(--color-bg)}.auth-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-panel{background:var(--color-primary);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-10);min-height:100vh}[data-theme=dark] .auth-panel{background:linear-gradient(160deg,#0d1a10 0%,var(--color-primary-dark) 100%);border-right:1px solid var(--color-border)}.auth-panel__logo{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-heading);font-size:var(--text-xl);color:#fff;letter-spacing:.05em;text-decoration:none;z-index:1;position:relative}.auth-panel__logo .navbar__logo-icon{background:#ffffff26;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-panel__content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center}.auth-panel__content h1{font-size:clamp(2.5rem,4vw,4rem);color:#fff;line-height:.95;margin-bottom:var(--space-6)}.auth-panel__content p{font-size:var(--text-md);color:#ffffffbf;line-height:1.7;max-width:400px;margin-bottom:var(--space-8)}.auth-panel__benefits{display:flex;flex-direction:column;gap:var(--space-3)}.auth-panel__benefits li{display:flex;align-items:center;gap:var(--space-3);color:#ffffffd9;font-size:var(--text-sm);font-weight:500}.auth-panel__benefits svg{flex-shrink:0;color:var(--color-accent)}.auth-panel__court{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.08}.court-line{position:absolute;background:#fff}.court-line--h{top:50%;left:5%;right:5%;height:1px;transform:translateY(-50%)}.court-line--v{left:50%;top:5%;bottom:5%;width:1px;transform:translate(-50%)}.court-line--service{top:35%;left:5%;right:5%;height:1px}.court-circle{position:absolute;width:80px;height:80px;border:1px solid white;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-panel__bg-text{position:absolute;bottom:-40px;right:-40px;font-size:220px;opacity:.08;pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1;animation:float 8s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(-10deg)}50%{transform:translateY(-15px) rotate(-5deg)}}.auth-form-container{display:flex;align-items:center;justify-content:center;padding:var(--space-10) var(--space-8);overflow-y:auto}.auth-form-wrapper{width:100%;max-width:440px;animation:slideUp .4s var(--transition-spring) both}.auth-mobile-header{display:none;margin-bottom:var(--space-8)}.auth-form-header{margin-bottom:var(--space-8)}.auth-form-header h2{font-size:var(--text-3xl);color:var(--color-text);margin-bottom:var(--space-2)}.auth-form-header p{color:var(--color-text-secondary);font-size:var(--text-base)}.auth-form-wrapper .form-group{margin-bottom:var(--space-5)}.form-remember{margin-top:var(--space-4)}.form-remember__label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm);color:var(--color-text-secondary);-webkit-user-select:none;user-select:none}.form-remember__label:hover{color:var(--color-text)}.form-remember__input{position:absolute;opacity:0;width:0;height:0}.form-remember__box{width:18px;height:18px;border:2px solid var(--color-border);border-radius:4px;background:var(--color-surface);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color var(--transition-fast),background var(--transition-fast)}.form-remember__label:has(input:checked) .form-remember__box{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.form-remember__box svg{width:10px;height:10px}.form-label-row{display:flex;align-items:center;justify-content:space-between}.form-forgot{font-size:var(--text-xs);color:var(--color-primary);font-weight:600;transition:color var(--transition-fast)}.form-forgot:hover{color:var(--color-primary-dark)}.form-alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;line-height:1.5}.form-alert--error{background:var(--color-error-subtle);color:var(--color-error);border:1px solid rgba(211,47,47,.2)}.form-alert--success{background:var(--color-success-subtle);color:var(--color-success);border:1px solid rgba(46,125,50,.2)}.form-alert--warning{background:#fff8e1;color:#e65100;border:1px solid rgba(230,81,0,.2)}[data-theme=dark] .form-alert--warning{background:#e651001a;color:#ffb74d;border-color:#ffb74d4d}.form-alert svg{flex-shrink:0;margin-top:1px}.auth-divider{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-6) 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.auth-divider span{font-size:var(--text-sm);color:var(--color-text-muted);white-space:nowrap}.auth-theme-toggle{display:flex;justify-content:center;margin-top:var(--space-8)}.form-section-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4)}.auth-terms{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;margin-top:var(--space-4);line-height:1.6}.auth-terms a{color:var(--color-primary);font-weight:600}.auth-layout--centered{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-8)}.auth-centered-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-10);width:100%;max-width:440px;box-shadow:var(--shadow-lg);animation:slideUp .4s var(--transition-spring) both}.auth-centered-card .auth-logo{text-align:center;margin-bottom:var(--space-8)}.auth-centered-card .auth-form-header{text-align:center}@media (max-width: 768px){.auth-layout{grid-template-columns:1fr}.auth-panel{display:none}.auth-mobile-header{display:flex;justify-content:center}.auth-form-container{padding:var(--space-8) var(--space-5);min-height:100vh;align-items:flex-start}.auth-form-wrapper{max-width:100%}}.auth-layout--register{grid-template-columns:480px 1fr}@media (max-width: 900px){.auth-layout--register{grid-template-columns:1fr}}.admin-back-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:5px 12px;font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-primary);background:var(--color-primary-subtle);border:1.5px solid var(--color-primary);border-radius:var(--radius-full);text-decoration:none;transition:all var(--transition-fast);white-space:nowrap}.admin-back-link:hover{background:var(--color-primary);color:#fff}.admin-back-link svg{width:13px;height:13px;flex-shrink:0}.app-header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-surface);border-bottom:1px solid var(--color-border);height:64px;display:flex;align-items:center}.app-header__inner{display:flex;align-items:center;gap:var(--space-6);height:100%}.app-header__logo{display:flex;align-items:center;gap:4px;text-decoration:none;flex-shrink:0}.logo-text{font-family:var(--font-heading);font-size:20px;letter-spacing:.05em;color:var(--color-primary)}.logo-badge{font-family:var(--font-heading);font-size:14px;color:var(--color-accent);letter-spacing:.02em}.app-header__back{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast);white-space:nowrap}.app-header__back:hover{color:var(--color-primary)}.app-header__back svg{width:18px;height:18px}.app-nav{display:flex;align-items:center;gap:var(--space-1);flex:1}.app-nav__link{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);text-decoration:none;transition:all var(--transition-fast);white-space:nowrap}.app-nav__link svg{width:16px;height:16px;flex-shrink:0}.app-nav__link:hover,.app-nav__link--active{background:var(--color-primary-subtle);color:var(--color-primary)}.app-nav__mobile-toggle{display:none}.app-header__actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.user-menu{position:relative}.user-menu__trigger{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border:1px solid var(--color-border);border-radius:var(--radius-full);background:none;cursor:pointer;transition:all var(--transition-fast);color:var(--color-text)}.user-menu__trigger:hover{border-color:var(--color-primary)}.user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.user-name{font-size:var(--text-sm);font-weight:500}.user-menu__dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2);z-index:var(--z-dropdown);opacity:0;pointer-events:none;transform:translateY(-8px);transition:all .2s ease}.user-menu__dropdown.open{opacity:1;pointer-events:all;transform:translateY(0)}.user-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text);background:none;border:none;cursor:pointer;text-decoration:none;transition:background var(--transition-fast)}.user-menu__item svg{width:16px;height:16px}.user-menu__item:hover{background:var(--color-surface-2)}.user-menu__item--danger{color:var(--color-error)}.user-menu__item--danger:hover{background:var(--color-error-subtle)}.user-menu__divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-1) 0}.app-main{min-height:calc(100vh - 64px);padding:var(--space-8) 0 var(--space-16)}.welcome-section{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-6);padding:var(--space-5) var(--space-8);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);border-radius:var(--radius-2xl);color:#fff}.welcome-section__greeting{font-size:var(--text-sm);color:#ffffffe0;margin-bottom:var(--space-1)}.welcome-section__name{font-family:var(--font-heading);font-size:var(--text-2xl);letter-spacing:.03em;margin-bottom:var(--space-1);line-height:1;color:#fff;display:flex;align-items:center;gap:10px}.welcome-section__subtitle{font-size:var(--text-sm);color:#ffffffd1}.welcome-section__stats{display:flex;gap:var(--space-3);flex-shrink:0}.stat-chip{background:#ffffff26;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-5);text-align:center;min-width:80px}.stat-chip--accent{background:#00c85340;border-color:#00c85366}.stat-chip__value{display:block;font-family:var(--font-heading);font-size:var(--text-2xl);letter-spacing:.03em;color:#fff}.stat-chip__label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.75}.dashboard-section{margin-bottom:var(--space-10)}.community-widget{display:flex;align-items:center;gap:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-6)}.community-widget__icon{width:44px;height:44px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;flex-shrink:0}.community-widget__text{flex:1;min-width:0}.community-widget__title{font-family:var(--font-title);font-size:var(--text-base);color:var(--color-text);margin-bottom:var(--space-1)}.community-widget__desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.5}.community-widget__btn{flex-shrink:0;display:inline-flex;align-items:center;padding:var(--space-2) var(--space-5);background:#25d366;color:#fff;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:600;text-decoration:none;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease}.community-widget__btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #25d36659}@media (max-width: 600px){.community-widget{flex-wrap:wrap;gap:var(--space-4)}.community-widget__btn{width:100%;justify-content:center}}.section-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.section-title{font-family:var(--font-heading);font-size:var(--text-2xl);letter-spacing:.03em;color:var(--color-text)}.section-badge{background:var(--color-primary);color:#fff;font-size:11px;font-weight:700;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center}.link-more{margin-left:auto;font-size:var(--text-sm);font-weight:500;color:var(--color-primary);text-decoration:none;transition:opacity var(--transition-fast)}.link-more:hover{opacity:.7}.continue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}.continue-card{text-decoration:none;border-radius:var(--radius-xl);overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:all var(--transition-base);display:flex;flex-direction:column}.continue-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.continue-card__thumb{height:140px;background-size:cover;background-position:center;background-color:var(--color-primary-dark);position:relative;overflow:hidden}.continue-card__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s}.continue-card:hover .continue-card__overlay{opacity:1}.continue-card__play{width:48px;height:48px;border-radius:50%;background:#ffffffe6;display:flex;align-items:center;justify-content:center;color:var(--color-primary)}.continue-card__play svg{width:20px;height:20px}.continue-card__progress-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff4d}.continue-card__progress-fill{height:100%;background:var(--color-accent);transition:width .5s}.continue-card__info{padding:var(--space-4)}.continue-card__category{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);font-weight:600}.continue-card__title{font-size:var(--text-sm);font-weight:600;color:var(--color-text);margin:4px 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.continue-card__pct{font-size:11px;color:var(--color-text-muted)}.filter-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap}.filter-tab{padding:6px 16px;border-radius:var(--radius-full);border:1px solid var(--color-border);background:none;font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.filter-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-tab--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}.course-card{text-decoration:none;border-radius:var(--radius-xl);overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:all var(--transition-base);display:flex;flex-direction:column}.course-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.course-card__thumb{height:200px;background-size:cover;background-position:center;background-color:var(--color-primary-dark);position:relative}.course-card__badge{position:absolute;top:var(--space-3);left:var(--space-3);background:#0009;color:#fff;font-size:11px;font-weight:600;padding:3px 10px;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.course-card__badge--completed{background:#00c853d9}.course-card__body{padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;flex:1}.course-card__category{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);font-weight:600;margin-bottom:4px}.course-card__title{font-family:var(--font-title);font-size:var(--text-md);font-weight:700;color:var(--color-text);margin-bottom:var(--space-2);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-card__instructor{font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-3)}.course-card__footer-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:auto}.course-card__meta{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:500}.course-card__cta{font-size:var(--text-xs);font-weight:700;color:var(--color-primary);letter-spacing:.02em}.course-card--enrollable{cursor:pointer}.enroll-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0}.enroll-meta-chip{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-secondary);background:var(--color-surface-2);padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--color-border)}.course-card__progress{display:flex;align-items:center;gap:var(--space-2);margin-top:auto;width:100%}.progress-bar{flex:1;height:4px;background:var(--color-surface-3);border-radius:var(--radius-full);overflow:hidden}.progress-bar__fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);transition:width .5s ease}.progress-bar__fill--completed{background:var(--color-accent)}.progress-label{font-size:11px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap;min-width:32px;text-align:right}.course-card-skeleton{height:280px;border-radius:var(--radius-xl);background:var(--color-surface-2);animation:skeleton-pulse 1.5s ease-in-out infinite}.empty-state{flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-16) var(--space-8);background:var(--color-surface);border:2px dashed var(--color-border);border-radius:var(--radius-2xl)}.empty-state__icon{font-size:56px;margin-bottom:var(--space-4)}.empty-state__title{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-text);margin-bottom:var(--space-2)}.empty-state__text{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-6)}.course-hero{position:relative;min-height:280px;display:flex;align-items:flex-end;overflow:hidden;margin-bottom:var(--space-8)}.course-hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-color:var(--color-primary-dark);filter:brightness(.4)}.course-hero__content{position:relative;z-index:1;padding-top:var(--space-12);padding-bottom:var(--space-10);color:#fff}.course-hero__category{display:inline-block;background:#00c8534d;border:1px solid rgba(0,200,83,.5);color:var(--color-accent);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:3px 12px;border-radius:var(--radius-full);margin-bottom:var(--space-3)}.course-hero__title{font-family:var(--font-heading);font-size:var(--text-5xl);letter-spacing:.03em;line-height:1;margin-bottom:var(--space-3);color:#fff}.course-hero__desc{font-size:var(--text-sm);opacity:.8;max-width:540px;margin-bottom:var(--space-4);line-height:1.6}.course-hero__instructor{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);opacity:.75;margin-bottom:var(--space-4)}.course-hero__meta{display:flex;gap:var(--space-3)}.meta-chip{display:flex;align-items:center;gap:5px;background:#ffffff26;color:#fff;font-size:var(--text-xs);font-weight:500;padding:4px 12px;border-radius:var(--radius-full)}.meta-chip--progress{background:#00c85340}.course-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--space-8);align-items:start}.progress-widget{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-6);position:sticky;top:80px}.progress-widget__title{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:var(--space-5)}.progress-circle-wrap{position:relative;width:120px;height:120px;margin:0 auto var(--space-5)}.progress-circle{width:100%;height:100%;transform:rotate(-90deg)}.progress-circle__track{fill:none;stroke:var(--color-surface-3);stroke-width:8}.progress-circle__fill{fill:none;stroke:url(#progressGradient);stroke:var(--color-primary);stroke-width:8;stroke-linecap:round;stroke-dasharray:263.9;stroke-dashoffset:263.9;transition:stroke-dashoffset 1s ease}.progress-circle__label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-circle__pct{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-text);line-height:1}.progress-circle__sub{font-size:10px;color:var(--color-text-muted)}.progress-meta{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.progress-meta__item{display:flex;justify-content:space-between;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-subtle)}.progress-meta__label{font-size:var(--text-xs);color:var(--color-text-muted)}.progress-meta__value{font-size:var(--text-xs);font-weight:600;color:var(--color-text)}.completed-banner{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-3);background:var(--color-success-subtle);border:1px solid var(--color-success);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:600;color:var(--color-success)}.course-content__heading{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-text);margin-bottom:var(--space-5)}.lessons-list{display:flex;flex-direction:column;gap:var(--space-2)}.lesson-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);text-decoration:none;color:var(--color-text);transition:all var(--transition-fast)}.lesson-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translate(4px)}.lesson-item--completed{background:var(--color-primary-subtle);border-color:#1a7a3c33}.lesson-item__thumb{width:180px;height:101px;flex-shrink:0;border-radius:var(--radius-md);background-size:cover;background-position:center;background-color:var(--color-surface-2);position:relative;overflow:hidden}.lesson-item__thumb-play,.lesson-item__thumb-check{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000059;color:#fff;transition:background var(--transition-fast)}.lesson-item:hover .lesson-item__thumb-play{background:#0000008c}.lesson-item__thumb-check{background:#1a7a3cb3}.lesson-item__number{width:36px;height:36px;border-radius:50%;background:var(--color-surface-2);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700;color:var(--color-text-secondary);flex-shrink:0;transition:all var(--transition-fast)}.lesson-item--completed .lesson-item__number{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.lesson-item__number .lesson-check{width:16px;height:16px}.lesson-item__info{flex:1;min-width:0}h4.lesson-item__title{font-family:Poppins,sans-serif;font-size:var(--text-base);font-weight:600;color:var(--color-text);margin-bottom:3px;line-height:1.4;letter-spacing:0}.lesson-item__desc{font-size:var(--text-xs);color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.lesson-item__meta{display:flex;gap:var(--space-2);margin-top:4px}.lesson-meta-chip{font-size:10px;font-weight:500;color:var(--color-text-muted);display:flex;align-items:center;gap:3px}.lesson-meta-chip--progress{color:var(--color-primary)}.lesson-meta-chip--done{color:var(--color-success)}.lesson-item__action{color:var(--color-text-muted);flex-shrink:0}.lesson-item__action svg{width:18px;height:18px}.lesson-item-skeleton{height:80px;border-radius:var(--radius-xl);background:var(--color-surface-2);animation:skeleton-pulse 1.5s ease-in-out infinite;margin-bottom:var(--space-2)}.lesson-page{background:var(--color-bg)}.lesson-header{position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-surface);border-bottom:1px solid var(--color-border);height:72px}.lesson-header__inner{max-width:1400px;margin:0 auto;padding:0 var(--space-5);height:100%;display:flex;align-items:center;gap:var(--space-4)}.lesson-header__back{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);background:none;border:none;cursor:pointer;padding:0;min-width:0;max-width:220px;transition:color var(--transition-fast);flex-shrink:0}.lesson-header__back span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.lesson-header__back:hover{color:var(--color-primary)}.lesson-header__back svg{width:18px;height:18px;flex-shrink:0}.lesson-header__title-wrap{flex:1;min-width:0;text-align:center}.lesson-header__lesson-num{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);display:block}.lesson-header__title{font-family:Poppins,sans-serif;font-size:var(--text-base);font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-header__actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.lesson-layout{max-width:1400px;margin:0 auto;padding:var(--space-5);display:grid;grid-template-columns:1fr 340px;gap:var(--space-5);align-items:start}.player-wrap,#player-container{width:100%}.lesson-info{margin-top:var(--space-5);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.lesson-info__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.lesson-info__title{font-family:var(--font-body);font-size:var(--text-xl);font-weight:700;color:var(--color-text);line-height:1.35;letter-spacing:0}.lesson-info__desc{font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--space-2);line-height:1.6}.lesson-info__desc p{margin:0 0 var(--space-2) 0}.lesson-info__desc p:last-child{margin-bottom:0}.lesson-info__desc strong{font-weight:700;color:var(--color-text)}.lesson-info__desc em{font-style:italic}.lesson-info__desc u{text-decoration:underline}.lesson-info__desc ul,.lesson-info__desc ol{padding-left:var(--space-6);margin:var(--space-2) 0}.lesson-info__desc li{margin-bottom:var(--space-1)}.lesson-info__desc ul{list-style:disc}.lesson-info__desc ol{list-style:decimal}.lesson-info__instructor{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-1);font-style:italic}.lesson-info__completion{display:flex;align-items:center;gap:6px;background:var(--color-success-subtle);border:1px solid var(--color-success);color:var(--color-success);font-size:var(--text-xs);font-weight:600;padding:6px 14px;border-radius:var(--radius-full);white-space:nowrap;flex-shrink:0}.lesson-info__completion svg{width:14px;height:14px}.lesson-nav{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.lesson-nav__spacer{flex:1}.lesson-nav__btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:none;font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.lesson-nav__btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-subtle)}.lesson-nav__btn svg{width:16px;height:16px}.lesson-nav__btn--next{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.lesson-nav__btn--next:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#fff}.player-no-video{aspect-ratio:16/9;background:var(--color-surface-2);border-radius:var(--radius-xl);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);font-size:var(--text-lg);color:var(--color-text-muted)}.player-no-video span{font-size:48px}.lesson-sidebar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);position:sticky;top:70px;max-height:calc(100vh - 90px);overflow:hidden;display:flex;flex-direction:column}.lesson-sidebar__header{padding:var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0}.lesson-sidebar__title{font-size:var(--text-sm);font-weight:700;color:var(--color-text);margin-bottom:var(--space-3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.mini-progress{display:flex;align-items:center;gap:var(--space-2)}.mini-progress__fill{height:4px;border-radius:var(--radius-full);background:var(--color-primary)}.mini-progress{flex-wrap:nowrap;gap:var(--space-2)}.lesson-sidebar__progress{display:flex;align-items:center;gap:var(--space-2)}.lesson-sidebar__progress .mini-progress{flex:1;height:4px;background:var(--color-surface-3);border-radius:var(--radius-full);overflow:hidden}.lesson-sidebar__progress .mini-progress__fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);transition:width .5s}.mini-progress__label{font-size:11px;font-weight:600;color:var(--color-primary);white-space:nowrap}.lesson-sidebar__list{flex:1;overflow-y:auto;padding:var(--space-3)}.sidebar-lesson{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-lg);text-decoration:none;color:var(--color-text);transition:all var(--transition-fast);margin-bottom:2px}.sidebar-lesson:hover{background:var(--color-surface-2)}.sidebar-lesson--active{background:var(--color-primary-subtle);border:1px solid rgba(26,122,60,.2)}.sidebar-lesson--completed .sidebar-lesson__num{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.sidebar-lesson__num{width:28px;height:28px;border-radius:50%;background:var(--color-surface-2);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.sidebar-lesson__num svg{width:12px;height:12px}.sidebar-lesson__thumb{width:80px;height:50px;flex-shrink:0;border-radius:var(--radius-sm);background-size:cover;background-position:center;background-color:var(--color-surface-2);position:relative;overflow:hidden}.sidebar-lesson__thumb-play,.sidebar-lesson__thumb-check{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.sidebar-lesson__thumb-play{background:#0006}.sidebar-lesson__thumb-check{background:#1a7a3ca6}.sidebar-lesson__info{flex:1;min-width:0}.sidebar-lesson__title{font-family:var(--font-title);font-size:13px;font-weight:600;display:block;line-height:1.35}.sidebar-lesson__duration{font-size:10px;color:var(--color-text-muted)}.sidebar-lesson__playing{display:flex;align-items:center}.playing-dot{width:8px;height:8px;border-radius:50%;background:var(--color-primary);animation:pulse-dot 1.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.profile-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--space-8);align-items:start;padding-top:var(--space-8);padding-bottom:var(--space-16)}.profile-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-8);text-align:center;margin-bottom:var(--space-5)}.profile-avatar-wrap{position:relative;width:96px;height:96px;margin:0 auto var(--space-4)}.profile-avatar-wrap input[type=file]{display:none}.profile-avatar{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));background-size:cover;background-position:center;color:#fff;font-size:32px;font-weight:700;display:flex;align-items:center;justify-content:center;border:3px solid var(--color-border);transition:border-color var(--transition-fast);overflow:hidden}.profile-avatar--photo{font-size:0;color:transparent}.profile-avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#00000085;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#fff;font-size:11px;font-weight:600;opacity:0;cursor:pointer;transition:opacity var(--transition-fast);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);letter-spacing:.02em}.profile-avatar-wrap:hover .profile-avatar{border-color:var(--color-primary)}.profile-avatar-wrap:hover .profile-avatar-overlay{opacity:1}.user-avatar--photo{font-size:0!important;color:transparent!important;background-size:cover!important;background-position:center!important}.profile-card__name{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-text)}.profile-card__email{font-size:var(--text-sm);color:var(--color-text-muted);margin:4px 0}.profile-card__since{font-size:var(--text-xs);color:var(--color-text-muted)}.profile-stats{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-5);display:flex;flex-direction:column;gap:1px;position:sticky;top:80px}.profile-stat{padding:var(--space-4) 0;display:flex;flex-direction:column;align-items:center;border-bottom:1px solid var(--color-border-subtle)}.profile-stat:last-child{border-bottom:none}.profile-stat--accent .profile-stat__value{color:var(--color-accent)}.profile-stat__value{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-primary)}.profile-stat__label{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center}.profile-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-7);margin-bottom:var(--space-5)}.profile-section--danger{border-color:#d32f2f40}.profile-section__header{margin-bottom:var(--space-6)}.profile-section__title{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text)}.profile-section .form-group{padding-top:var(--space-5);margin-bottom:0}.profile-section .form-group:first-of-type{padding-top:0}.profile-section .form-row{margin-top:var(--space-5)}.profile-section .form-row .form-group{padding-top:0}.form-actions{display:flex;justify-content:flex-end;margin-top:var(--space-6)}.password-strength{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.password-strength__bars{display:flex;gap:4px}.pw-bar{width:32px;height:4px;border-radius:var(--radius-full);background:var(--color-border);transition:background .3s}.password-strength__label{font-size:var(--text-xs);font-weight:600}.skeleton-text{background:var(--color-surface-2);border-radius:var(--radius-md);animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.app-nav-backdrop{display:none;position:fixed;right:0;bottom:0;left:0;top:64px;background:#00000059;z-index:calc(var(--z-sticky) - 1)}.student-bottom-nav{display:none}.student-bottom-nav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;font-weight:500;color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast);padding:var(--space-1) 0;background:none;border:none;cursor:pointer;font-family:var(--font-body);line-height:1}.student-bottom-nav__item svg{width:20px;height:20px;flex-shrink:0}.student-bottom-nav__item--active,.student-bottom-nav__item:hover{color:var(--color-primary)}@media (max-width: 1024px){.lesson-layout{grid-template-columns:1fr}.lesson-sidebar{position:static;max-height:400px}.course-layout{grid-template-columns:1fr}.progress-widget{position:static}.courses-grid,.continue-grid{grid-template-columns:repeat(2,1fr)}.profile-layout{grid-template-columns:1fr}.profile-stats{position:static;flex-direction:row}.profile-stat{flex:1}}@media (max-width: 768px){.app-nav{display:none;position:fixed;top:64px;left:0;right:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-4);flex-direction:column;gap:0;z-index:var(--z-sticky);box-shadow:var(--shadow-lg)}.app-nav.open{display:flex}.app-nav-backdrop.open{display:block}.app-nav .app-nav__link{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-base);justify-content:flex-start}.user-name{display:none}.app-main{padding:var(--space-5) 0 calc(var(--space-10) + 64px)}.student-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--color-surface);border-top:1px solid var(--color-border);z-index:var(--z-sticky);box-shadow:0 -2px 12px #00000014}.student-bottom-nav__item{flex:1}.welcome-section{flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.welcome-section__name{font-size:var(--text-2xl)}.welcome-section__stats{width:100%;justify-content:space-between}.courses-grid,.continue-grid{grid-template-columns:1fr}.lesson-header__title-wrap{display:none}.course-hero{min-height:200px}.course-hero__title{font-size:var(--text-3xl)}.course-hero__meta{flex-wrap:wrap;gap:var(--space-2)}}@media (max-width: 600px){.filter-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--space-1);-webkit-overflow-scrolling:touch;scrollbar-width:none}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab{flex-shrink:0}.section-title{font-size:var(--text-lg)}}@media (max-width: 480px){.profile-stats{flex-direction:column}.filter-tabs{gap:var(--space-1)}.filter-tab{padding:5px 12px;font-size:var(--text-xs)}.stat-chip{min-width:60px;padding:var(--space-2) var(--space-3)}.stat-chip__value{font-size:var(--text-xl)}.stat-chip__label{font-size:9px}.course-hero__title{font-size:var(--text-2xl)}.lesson-header__back span{display:none}}@media (max-width: 640px){.lesson-item{padding:var(--space-3);gap:var(--space-3)}.lesson-item__thumb{width:112px;height:63px}h4.lesson-item__title{font-size:var(--text-sm);-webkit-line-clamp:2}.lesson-item__desc{display:none}.course-layout{gap:var(--space-4)}.course-content__heading{font-size:var(--text-lg)}}.admin-layout{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.admin-body{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden}.admin-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-sidebar__brand{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border)}.admin-logo{display:flex;align-items:center;gap:4px;text-decoration:none}.admin-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-primary-subtle);color:var(--color-primary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-left:auto}.admin-nav{flex:1;padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:2px}.admin-nav__item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary);text-decoration:none;transition:all var(--transition-fast)}.admin-nav__item svg{width:18px;height:18px;flex-shrink:0}.admin-nav__item:hover{background:var(--color-surface-2);color:var(--color-text)}.admin-nav__item--active{background:var(--color-primary-subtle);color:var(--color-primary);font-weight:600}.admin-nav__divider{height:1px;background:var(--color-border);margin:var(--space-3) var(--space-1)}.admin-nav__item--danger{color:var(--color-error);background:none;border:none;font-family:var(--font-body);cursor:pointer;width:100%;text-align:left}.admin-user-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--color-border-subtle)}.admin-user-option:last-child{border-bottom:none}.admin-user-option:hover{background:var(--color-surface-2)}.admin-user-option--selected{background:var(--color-primary-subtle);color:var(--color-primary)}.admin-nav__item--danger:hover{background:var(--color-error-subtle);color:var(--color-error)}.admin-main{flex:1;padding:var(--space-8);background:var(--color-bg)}.admin-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}.admin-topbar__title{font-family:var(--font-heading);font-size:var(--text-4xl);letter-spacing:.03em;color:var(--color-text);line-height:1}.admin-topbar__sub{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-1)}.admin-topbar__actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.admin-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5);margin-bottom:var(--space-8)}.admin-stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;align-items:center;gap:var(--space-4);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast)}.admin-stat-card:hover{box-shadow:var(--shadow-md)}.admin-stat-card__icon{width:48px;height:48px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-stat-card__icon svg{width:22px;height:22px}.admin-stat-card__icon--blue{background:#e3f2fd;color:#1565c0}.admin-stat-card__icon--green{background:var(--color-primary-subtle);color:var(--color-primary)}.admin-stat-card__icon--purple{background:#f3e5f5;color:#7b1fa2}.admin-stat-card__icon--orange{background:#fff3e0;color:#e65100}[data-theme=dark] .admin-stat-card__icon--blue{background:#1565c026}[data-theme=dark] .admin-stat-card__icon--purple{background:#7b1fa226}[data-theme=dark] .admin-stat-card__icon--orange{background:#e6510026}.admin-stat-card__value{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-text);display:block;line-height:1}.admin-stat-card__label{font-size:var(--text-xs);color:var(--color-text-muted);display:block;margin-top:3px}.admin-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;margin-bottom:var(--space-6)}.admin-section__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.admin-section__title{font-family:var(--font-heading);font-size:var(--text-xl);letter-spacing:.02em;color:var(--color-text)}.admin-toolbar{display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.search-wrap{flex:1;position:relative;display:flex;align-items:center}.search-wrap svg{position:absolute;left:12px;width:16px;height:16px;color:var(--color-text-muted);pointer-events:none}.search-input{width:100%;padding:9px 12px 9px 38px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-body);transition:border-color var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-primary)}.filter-select-wrap{min-width:180px}.filter-select{width:100%;padding:9px 12px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-body);cursor:pointer;transition:border-color var(--transition-fast)}.filter-select:focus{outline:none;border-color:var(--color-primary)}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.admin-table thead{background:var(--color-surface-2)}.admin-table th{padding:10px 16px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);white-space:nowrap;border-bottom:1px solid var(--color-border)}.admin-table td{padding:12px 16px;color:var(--color-text);border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:var(--color-surface-2)}.table-loading,.table-empty{text-align:center;color:var(--color-text-muted);padding:var(--space-8)!important;font-size:var(--text-sm)}.table-title{font-weight:600;color:var(--color-text)}.table-sub{font-size:var(--text-xs);color:var(--color-text-muted);display:block}.text-muted{color:var(--color-text-muted)}.table-actions{display:flex;align-items:center;gap:var(--space-2)}.table-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:none;cursor:pointer;color:var(--color-text-muted);text-decoration:none;transition:all var(--transition-fast)}.table-btn:hover{transform:scale(1.05)}.table-btn svg{width:14px;height:14px}.table-btn--edit:hover{background:var(--color-primary-subtle);border-color:var(--color-primary);color:var(--color-primary)}.table-btn--delete:hover{background:var(--color-error-subtle);border-color:var(--color-error);color:var(--color-error)}.table-btn--view:hover{background:var(--color-primary-subtle);border-color:var(--color-primary);color:var(--color-primary)}.table-btn--warn:hover{background:#fff3e0;border-color:#f57c00;color:#f57c00}.table-btn--success:hover{background:var(--color-primary-subtle);border-color:var(--color-primary);color:var(--color-primary)}.admin-table tbody tr{cursor:default}.admin-table tbody tr.clickable{cursor:pointer}.admin-table tbody tr.clickable:hover td{background:var(--color-surface-2)}.status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:600;white-space:nowrap}.status-badge--active{background:var(--color-success-subtle);color:var(--color-success)}.status-badge--draft,.status-badge--inactive{background:var(--color-surface-3);color:var(--color-text-muted)}.tag{display:inline-flex;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-surface-3);color:var(--color-text-secondary);font-size:11px;font-weight:500}.tag--you{background:var(--color-primary-subtle);color:var(--color-primary);margin-left:var(--space-2)}.user-cell{display:flex;align-items:center;gap:var(--space-3)}.user-cell__avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-cell__avatar--admin{background:linear-gradient(135deg,#7b1fa2,#e91e63)}.user-cell__name{font-weight:500}.user-cell__email{display:block;font-size:var(--text-xs);color:var(--color-text-muted)}.users-tabs{display:flex;gap:0;margin-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.users-tab{padding:var(--space-3) var(--space-5);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:600;cursor:pointer;display:flex;align-items:center;gap:var(--space-2);transition:color var(--transition-fast),border-color var(--transition-fast)}.users-tab:hover{color:var(--color-text)}.users-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.users-tab__badge{background:var(--color-primary);color:#fff;font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;min-width:20px;text-align:center;line-height:1.6}.pending-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-4)}.pending-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.pending-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border)}.pending-card__header{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-subtle)}.pending-card__avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-size:var(--text-lg);font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pending-card__meta{flex:1;min-width:0}.pending-card__name{font-weight:600;font-size:var(--text-base);color:var(--color-text)}.pending-card__email{font-size:var(--text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.pending-card__date{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.pending-card__fields{display:flex;flex-direction:column;background:var(--color-surface-2);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border-subtle)}.pending-field{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:9px var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.pending-field:last-child{border-bottom:none}.pending-field__label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.pending-field__value{font-size:var(--text-sm);color:var(--color-text);font-weight:500;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-card__actions{display:flex;gap:var(--space-2);justify-content:flex-end;padding-top:var(--space-1)}.empty-state{text-align:center;padding:4rem var(--space-6);color:var(--color-text-secondary)}.empty-state__icon{display:flex;justify-content:center;margin-bottom:var(--space-4);color:var(--color-border)}.empty-state__title{font-family:var(--font-body);font-size:var(--text-base);font-weight:400;color:var(--color-text-secondary)}.course-cell{display:flex;flex-direction:column}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-5)}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-7);max-width:440px;width:100%;box-shadow:var(--shadow-xl)}.modal--wide{max-width:560px;padding:0}.modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.modal__title{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text)}.modal__text{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-2)}.modal__close{width:32px;height:32px;border-radius:var(--radius-md);border:none;background:none;cursor:pointer;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.modal__close:hover{background:var(--color-surface-2);color:var(--color-text)}.modal__close svg{width:16px;height:16px}.modal__body{margin-bottom:var(--space-5)}.modal__icon{width:56px;height:56px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4)}.modal__icon svg{width:24px;height:24px}.modal__icon--danger{background:var(--color-error-subtle);color:var(--color-error)}.modal__actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-5)}.admin-form-layout{display:flex;flex-direction:column;gap:var(--space-6);max-width:760px}.admin-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:var(--space-8)}.admin-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.admin-card__title{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text);margin-bottom:var(--space-5)}.admin-card__header .admin-card__title{margin-bottom:0}.admin-card .form-group{margin-bottom:var(--space-5)}.form-grid{display:grid;gap:var(--space-4)}.form-grid--2{grid-template-columns:1fr 1fr}.form-group--full{grid-column:1 / -1}.form-textarea{resize:vertical;min-height:80px}.rich-editor-wrap .ql-toolbar.ql-snow{border:1px solid var(--color-border);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--color-surface-2);padding:6px 10px}.rich-editor-wrap .ql-container.ql-snow{border:1px solid var(--color-border);border-radius:0 0 var(--radius-md) var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);background:var(--color-surface)}.rich-editor-wrap .ql-editor{min-height:120px;color:#1a1a1a;line-height:1.6;padding:10px 14px}.rich-editor-wrap .ql-editor.ql-blank:before{color:#9ca3af;font-style:normal}.rich-editor-wrap .ql-snow .ql-stroke{stroke:var(--color-text-secondary)}.rich-editor-wrap .ql-snow .ql-fill{fill:var(--color-text-secondary)}.rich-editor-wrap .ql-snow.ql-toolbar button:hover .ql-stroke,.rich-editor-wrap .ql-snow.ql-toolbar button.ql-active .ql-stroke{stroke:var(--color-primary)}.rich-editor-wrap .ql-snow.ql-toolbar button:hover .ql-fill,.rich-editor-wrap .ql-snow.ql-toolbar button.ql-active .ql-fill{fill:var(--color-primary)}[data-theme=dark] .rich-editor-wrap .ql-toolbar.ql-snow,[data-theme=dark] .rich-editor-wrap .ql-container.ql-snow{border-color:var(--color-border)}[data-theme=dark] .rich-editor-wrap .ql-editor{color:#e5e7eb}[data-theme=dark] .rich-editor-wrap .ql-editor.ql-blank:before{color:#6b7280}.thumbnail-upload-box{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface-2)}.thumbnail-upload-box__preview{height:180px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;justify-content:center}.thumbnail-upload-box__overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:#00000073;opacity:0;transition:opacity var(--transition-fast)}.thumbnail-upload-box__preview:hover .thumbnail-upload-box__overlay{opacity:1}.thumbnail-upload-box__empty{height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);cursor:pointer;color:var(--color-text-muted);border:2px dashed var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);transition:all var(--transition-fast)}.thumbnail-upload-box__empty:hover{border-color:var(--color-primary);color:var(--color-primary)}.form-hint{display:block;font-size:var(--text-xs);color:var(--color-primary);margin-top:var(--space-2)}.lessons-admin-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}.lesson-admin-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);transition:border-color var(--transition-fast)}.lesson-admin-item:hover{border-color:var(--color-primary)}.lesson-admin-item__num{width:28px;height:28px;border-radius:50%;background:var(--color-surface-2);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--color-text-secondary);flex-shrink:0}.lesson-admin-item__info{flex:1;min-width:0}.lesson-admin-item__title{font-weight:600;font-size:var(--text-sm);display:block}.lesson-admin-item__meta{font-size:11px;color:var(--color-text-muted);display:block;margin-top:2px}.lesson-admin-item__thumb{width:56px;height:36px;border-radius:var(--radius-sm);background-size:cover;background-position:center;background-color:var(--color-surface-2);flex-shrink:0}.lesson-admin-item__actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.lesson-admin-item__drag{cursor:grab;color:var(--color-text-muted);padding:4px 2px;flex-shrink:0;display:flex;align-items:center;-webkit-user-select:none;user-select:none;opacity:.45;transition:opacity var(--transition-fast)}.lesson-admin-item:hover .lesson-admin-item__drag{opacity:1}.lesson-admin-item__drag:active{cursor:grabbing}.lesson-admin-item.is-dragging{opacity:.35}.lesson-admin-item.drag-over-top{border-top:2px solid var(--color-primary);margin-top:-1px}.lesson-admin-item.drag-over-bottom{border-bottom:2px solid var(--color-primary);margin-bottom:-1px}.lesson-order-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:#27ae6012;border-bottom:1px solid rgba(39,174,96,.18);flex-wrap:wrap}.lesson-order-bar__msg{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-primary);font-weight:500}.lesson-order-bar__actions{display:flex;align-items:center;gap:var(--space-2)}.security-alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-warning-subtle);border:1px solid rgba(245,124,0,.3);border-radius:var(--radius-xl);font-size:var(--text-sm);color:var(--color-text);margin-bottom:var(--space-6)}.security-alert svg{width:20px;height:20px;color:var(--color-warning);flex-shrink:0;margin-top:1px}.settings-section{padding:var(--space-5) 0;border-bottom:1px solid var(--color-border)}.settings-section__label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-4)}.settings-app-name{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.settings-app-name__title{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text)}.settings-app-name__badge{background:var(--color-primary-subtle);color:var(--color-primary);font-size:11px;font-weight:700;padding:2px 8px;border-radius:var(--radius-md)}.settings-app-desc{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.6}.settings-theme-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.settings-theme-row__label{font-weight:600;font-size:var(--text-sm)}.settings-theme-row__sub{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:2px}.settings-theme-btns{display:flex;gap:var(--space-2);flex-shrink:0}.settings-theme-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);background:none;color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.settings-theme-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.settings-theme-btn--active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-subtle)}.settings-logout-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-4);margin-top:var(--space-5);border:1.5px solid var(--color-error);border-radius:var(--radius-xl);background:none;color:var(--color-error);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--transition-fast)}.settings-logout-btn:hover{background:var(--color-error-subtle)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.admin-mobile-topbar{display:none}.admin-hamburger-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-md);background:transparent;color:var(--color-text);flex-shrink:0;cursor:pointer;border:none;padding:0;transition:background var(--transition-fast)}.admin-hamburger-btn:hover{background:var(--color-surface-2)}.admin-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:190;opacity:0;pointer-events:none;transition:opacity .28s ease}.admin-backdrop.open{opacity:1;pointer-events:all}@media (max-width: 1200px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.admin-layout{display:block}.admin-sidebar{display:flex!important;position:fixed;top:0;left:0;height:100vh;width:260px;transform:translate(-100%);transition:transform .28s ease;z-index:200}.admin-sidebar.open{transform:translate(0)}.admin-backdrop{display:block}.admin-mobile-topbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.admin-main{padding:var(--space-4)}.admin-topbar{margin-bottom:var(--space-5)}.admin-topbar__title{font-size:var(--text-2xl)}.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}}@media (max-width: 600px){.admin-toolbar{flex-direction:column}.filter-select-wrap{min-width:unset}.form-grid--2{grid-template-columns:1fr}.form-group--full{grid-column:unset}.modal{padding:var(--space-5)}.admin-topbar{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.admin-section__header{padding:var(--space-4)}.admin-table{font-size:var(--text-xs)}.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table{min-width:480px}.security-alert{font-size:var(--text-xs)}.pending-grid{grid-template-columns:1fr}.admin-topbar__actions{width:100%}.admin-topbar__actions .btn{width:100%;justify-content:center}}.modal--lesson{max-width:620px;padding:0}.lesson-modal-header{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:linear-gradient(135deg,var(--color-primary) 0%,#1e7c45 100%);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}.lesson-modal-header__icon{width:44px;height:44px;background:#ffffff2e;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.lesson-modal-header__text{flex:1;min-width:0}.lesson-modal-header__title{font-size:var(--text-lg);font-weight:700;color:#fff;margin:0;line-height:1.2}.lesson-modal-header__sub{font-size:var(--text-xs);color:#ffffffb3;margin:3px 0 0}.lesson-modal-close{background:#ffffff26;border:none;border-radius:var(--radius-md);color:#fff;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast);flex-shrink:0}.lesson-modal-close:hover{background:#ffffff47}.lesson-modal-body{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.lesson-modal-section{display:flex;flex-direction:column;gap:var(--space-4)}.lesson-modal-section__label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-subtle)}.input-icon-wrap{position:relative}.input-icon-wrap .input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:red;pointer-events:none;display:flex}.input-icon-wrap .form-input{padding-left:40px}#video-id-preview:not(:empty){display:inline-flex;align-items:center;gap:5px;margin-top:var(--space-2);padding:3px 10px;background:var(--color-success-subtle);color:var(--color-success);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);font-family:monospace}.lesson-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6) var(--space-5);border-top:1px solid var(--color-border-subtle);background:var(--color-surface-2);border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}.course-manage-header{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-xs)}.course-manage-header__thumb{width:200px;flex-shrink:0;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface-3);display:flex;align-items:center;justify-content:center}.course-manage-header__thumb img{width:100%;height:100%;object-fit:cover;display:block}.course-manage-header__thumb-placeholder{color:var(--color-text-muted);text-align:center;font-size:var(--text-xs);padding:var(--space-4)}.course-manage-header__info{flex:1;min-width:0}.course-manage-header__category{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);background:var(--color-primary-subtle);padding:2px 10px;border-radius:var(--radius-full);display:inline-block;margin-bottom:var(--space-3)}.course-manage-header__title{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-text);letter-spacing:.02em;line-height:1.1;margin-bottom:var(--space-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-manage-header__instructor{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.course-manage-header__stats{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.course-manage-header__stat{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:500}.course-manage-header__stat svg{width:14px;height:14px;color:var(--color-text-muted);flex-shrink:0}.course-manage-header__actions{flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-end}.thumb-upload-area{border:2px dashed var(--color-border);border-radius:var(--radius-lg);cursor:pointer;position:relative;overflow:hidden;transition:border-color var(--transition-base);background:var(--color-surface-2);min-height:160px;display:flex;align-items:center;justify-content:center}.thumb-upload-area:hover{border-color:var(--color-primary)}.thumb-upload-area.has-preview{border-style:solid;border-color:var(--color-border);min-height:unset;max-height:220px}.thumb-upload-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%;z-index:1}.thumb-upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--color-text-muted);pointer-events:none;padding:var(--space-6);text-align:center}.thumb-upload-placeholder svg{width:32px;height:32px;margin-bottom:var(--space-1);opacity:.5}.thumb-upload-placeholder span{font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary)}.thumb-upload-placeholder small{font-size:var(--text-xs)}.thumb-preview-img{width:100%;height:100%;max-height:220px;object-fit:contain;display:block;background:var(--color-surface-3)}.thumb-upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#0000008c;display:flex;align-items:center;justify-content:center;gap:var(--space-3);opacity:0;transition:opacity var(--transition-base);pointer-events:none;border-radius:calc(var(--radius-lg) - 2px)}.thumb-upload-area.has-preview:hover .thumb-upload-overlay{opacity:1;pointer-events:all}.thumb-overlay-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);cursor:pointer;border:2px solid white;font-family:var(--font-body);transition:all var(--transition-fast);white-space:nowrap;background:#ffffff26;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.thumb-overlay-btn svg{width:15px;height:15px;flex-shrink:0}.thumb-overlay-btn:hover{background:#fff;color:var(--color-text)}.thumb-overlay-btn--danger{border-color:#ff5050cc;color:#f99}.thumb-overlay-btn--danger:hover{background:#f44;border-color:#f44;color:#fff}.course-edit-form-wrap{overflow:hidden;transition:all var(--transition-base)}.course-edit-form-wrap.collapsed{display:none}@media (max-width: 768px){.course-manage-header{flex-direction:column}.course-manage-header__thumb{width:100%}.course-manage-header__actions{flex-direction:row;width:100%}}@media (max-width: 600px){.lesson-row{flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3)}.lesson-row__drag{display:none}.lesson-row__thumb{width:72px;height:41px;flex-shrink:0}.lesson-row__info{flex:1;min-width:0}.lesson-row__actions{flex-shrink:0}}.t360-player{position:relative;width:100%;background:#000;border-radius:var(--radius-xl);overflow:hidden;aspect-ratio:16 / 9;box-shadow:var(--shadow-xl);-webkit-user-select:none;user-select:none}.t360-player.t360-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;border-radius:0;z-index:var(--z-modal);aspect-ratio:unset}.t360-player__video-wrap{position:relative;width:100%;height:100%}.t360-player__video-wrap iframe{position:absolute;top:-60px;left:0;width:100%;height:calc(100% + 120px);border:none;pointer-events:none}.t360-player__overlay{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;z-index:1}.t360-player__controls{position:absolute;bottom:0;left:0;right:0;padding:var(--space-3) var(--space-4) var(--space-4);background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.4) 60%,transparent 100%);z-index:2;opacity:0;transform:translateY(8px);transition:opacity .3s ease,transform .3s ease}.t360-player:hover .t360-player__controls,.t360-player__controls.visible{opacity:1;transform:translateY(0)}.t360-player__progress-wrap{position:relative;height:20px;display:flex;align-items:center;cursor:pointer;margin-bottom:var(--space-2)}.t360-player__progress-wrap:before{content:"";position:absolute;left:0;right:0;height:3px;background:#fff3;border-radius:var(--radius-full);top:50%;transform:translateY(-50%);transition:height .2s ease}.t360-player__progress-wrap:hover:before{height:5px}.t360-player__buffer{position:absolute;left:0;top:50%;transform:translateY(-50%);height:3px;background:#ffffff59;border-radius:var(--radius-full);pointer-events:none;transition:width .5s linear,height .2s ease}.t360-player__progress-wrap:hover .t360-player__buffer{height:5px}.t360-player__hover{position:absolute;left:0;top:50%;transform:translateY(-50%);height:3px;background:#ffffff4d;border-radius:var(--radius-full);pointer-events:none;transition:height .2s ease}.t360-player__progress-wrap:hover .t360-player__hover{height:5px}.t360-player__watched{position:absolute;left:0;top:50%;transform:translateY(-50%);height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);pointer-events:none;transition:width .1s linear,height .2s ease}.t360-player__progress-wrap:hover .t360-player__watched{height:5px}.t360-player__seek{position:absolute;left:0;right:0;width:100%;opacity:0;height:20px;cursor:pointer;z-index:1;-webkit-appearance:none}.t360-player__seek::-webkit-slider-runnable-track{background:transparent;height:20px}.t360-player__seek::-moz-range-track{background:transparent;height:20px;border:none}.t360-player__seek::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;cursor:pointer;opacity:0;transition:opacity .2s}.t360-player__progress-wrap:hover .t360-player__seek{opacity:1}.t360-player__progress-wrap:hover .t360-player__seek::-webkit-slider-thumb{opacity:1}.t360-player__progress-tooltip{position:absolute;bottom:100%;transform:translate(-50%);background:#000c;color:#fff;font-size:11px;padding:2px 6px;border-radius:4px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s}.t360-player__progress-wrap:hover .t360-player__progress-tooltip{opacity:1}.t360-player__controls-row{display:flex;align-items:center;justify-content:space-between}.t360-player__controls-left,.t360-player__controls-right{display:flex;align-items:center;gap:var(--space-2)}.t360-btn{background:none;border:none;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);transition:background var(--transition-fast),transform var(--transition-fast);padding:6px;flex-shrink:0}.t360-btn:hover{background:#ffffff26;transform:scale(1.1)}.t360-btn:active{transform:scale(.95)}.t360-btn svg{width:100%;height:100%}.t360-btn--play{width:42px;height:42px}.t360-volume-wrap{display:flex;align-items:center;gap:var(--space-1)}.t360-volume-range{-webkit-appearance:none;width:0;height:3px;background:#ffffff4d;border-radius:var(--radius-full);cursor:pointer;transition:width .25s ease;overflow:hidden}.t360-volume-wrap:hover .t360-volume-range,.t360-volume-range:focus{width:72px}.t360-volume-range::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;cursor:pointer;box-shadow:-72px 0 0 68px #fffc}.t360-time{font-family:var(--font-body);font-size:12px;font-weight:500;color:#ffffffe6;white-space:nowrap;letter-spacing:.03em}.t360-completion{display:flex;align-items:center;gap:6px;background:#00c85333;border:1px solid rgba(0,200,83,.4);color:var(--color-accent);font-size:12px;font-weight:600;padding:4px 10px;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.t360-completion svg{width:14px;height:14px;flex-shrink:0}.t360-player__loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;z-index:3}.t360-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.t360-player__complete-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:4;display:flex;align-items:center;justify-content:center}.t360-complete-card{text-align:center;padding:var(--space-8);max-width:320px}.t360-complete-icon{font-size:56px;margin-bottom:var(--space-4)}.t360-complete-card h3{font-family:var(--font-heading);font-size:var(--text-2xl);color:#fff;margin-bottom:var(--space-3)}.t360-complete-card p{color:#ffffffbf;font-size:var(--text-sm);margin-bottom:var(--space-6)}@media (max-width: 480px){.t360-volume-wrap{display:none}.t360-btn{width:32px;height:32px}.t360-btn--play{width:38px;height:38px}.t360-time{font-size:11px}}/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}
