:root{--nova-bg:#ffffff;--nova-ink:#0f172a;--nova-muted:#64748b;--nova-line:#e5e7eb;--nova-accent:#4f46e5;--nova-accent-ink:#ffffff;--nova-radius:14px;--nova-shadow:0 1px 2px rgba(15,23,42,.04), 0 8px 24px rgba(15,23,42,.06);--nova-font:inherit}.nova-grid,.nova-carousel,.nova-single,.nova-archive,.nova-card,.nova-dashboard,.nova-auth-form{overflow:hidden;box-sizing:border-box}.nova-grid *,.nova-carousel *,.nova-single *{box-sizing:border-box}.nova-grid,.nova-carousel,.nova-single,.nova-archive,.nova-card,.nova-dashboard,.nova-auth-form,.nova-carousel-wrap{font-family:var(--nova-font)}.nova-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;padding:8px 0}.nova-card{display:flex;flex-direction:column;background:var(--nova-bg);border:1px solid var(--nova-line);border-radius:var(--nova-radius);box-shadow:var(--nova-shadow);color:var(--nova-ink);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease;flex:0 0 auto}.nova-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgb(15 23 42 / .12)}.nova-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;flex:1 1 auto}.nova-card-buy-btn{display:block;text-align:center;margin:auto 16px 16px;padding:9px 14px;font-size:14px;border-radius:calc(var(--nova-radius) - 6px);text-decoration:none;font-weight:600;flex-shrink:0;min-height:20px}.nova-btn-secondary{background:#fff0;color:var(--nova-accent);border:1px solid var(--nova-accent)}.nova-card-thumb{position:relative;overflow:hidden;aspect-ratio:16/9;background:#f1f5f9}.nova-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}.nova-card-level{position:absolute;top:10px;left:10px;background:rgb(15 23 42 / .75);color:#fff;font-size:11px;font-weight:600;padding:4px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.nova-card-body{padding:14px 16px 16px;overflow:hidden}.nova-card-title{margin:0 0 4px;font-size:16px;line-height:1.35;font-weight:700;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.nova-card-tutor{margin:0 0 10px;font-size:13px;color:var(--nova-muted)}.nova-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--nova-muted)}.nova-card-price{font-weight:700;color:var(--nova-ink);font-size:15px}.nova-carousel-wrap{position:relative;overflow:hidden;padding:4px 2px}.nova-carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding-bottom:6px}.nova-carousel::-webkit-scrollbar{display:none}.nova-carousel{scrollbar-width:none}.nova-carousel .nova-card{scroll-snap-align:start;width:270px}.nova-carousel-nav{position:absolute;top:40%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;border:1px solid var(--nova-line);background:#fff;box-shadow:var(--nova-shadow);cursor:pointer;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center}.nova-prev{left:-6px}.nova-next{right:-6px}.nova-single-hero{display:flex;gap:28px;flex-wrap:wrap;align-items:flex-start;overflow:hidden}.nova-single-thumb{flex:1 1 380px;border-radius:var(--nova-radius);overflow:hidden}.nova-single-thumb img{width:100%;display:block}.nova-single-info{flex:1 1 320px;overflow:hidden}.nova-single-tutor{color:var(--nova-muted);margin:4px 0 12px}.nova-single-meta{display:flex;gap:8px;margin-bottom:14px}.nova-badge{background:#eef2ff;color:var(--nova-accent);font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px}.nova-single-price{font-size:26px;font-weight:800;margin-bottom:16px}.nova-btn{display:inline-block;padding:12px 22px;border-radius:10px;font-weight:700;text-decoration:none}.nova-btn-primary{background:var(--nova-accent);color:var(--nova-accent-ink)}.nova-locked-note{font-size:13px;color:var(--nova-muted);margin-top:10px}.nova-single-content{margin-top:32px;overflow:hidden}.nova-locked{background:#f8fafc;border:1px dashed var(--nova-line);border-radius:var(--nova-radius);padding:32px;text-align:center;color:var(--nova-muted)}.nova-archive-title{margin-bottom:20px}.nova-mpesa-banner{background:var(--nova-accent,#4f46e5);color:#fff;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-weight:600;text-align:center}.nova-buy-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center}.nova-buy-modal-backdrop{position:absolute;inset:0;background:rgb(15 23 42 / .55)}.nova-buy-modal-box{position:relative;background:#fff;border-radius:16px;padding:32px 28px 28px;width:min(360px, 90vw);box-shadow:0 20px 50px rgb(15 23 42 / .25);text-align:center;overflow:hidden}.nova-buy-modal-close{position:absolute;top:12px;right:14px;background:none;border:none;font-size:22px;line-height:1;cursor:pointer;color:#64748b}.nova-buy-modal-title{margin:0 0 6px;font-size:18px;font-weight:700}.nova-buy-modal-sub{margin:0 0 18px;color:#64748b;font-size:14px}.nova-buy-form{display:flex;flex-direction:column;gap:8px;text-align:left}.nova-buy-label{font-size:13px;font-weight:600;color:#334155}.nova-buy-phone-input{padding:11px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:15px}.nova-buy-error{color:#dc2626;font-size:13px;margin:0}.nova-buy-submit{margin-top:6px;width:100%;text-align:center;border:none;cursor:pointer}.nova-buy-spinner{width:36px;height:36px;margin:8px auto 18px;border-radius:50%;border:3px solid #e5e7eb;border-top-color:#4f46e5;animation:nova-spin 0.8s linear infinite}@keyframes nova-spin{to{transform:rotate(360deg)}}.nova-buy-status{font-size:15px;font-weight:600;margin:0 0 8px}.nova-buy-hint{font-size:13px;color:#94a3b8;margin:0}.nova-buy-icon{width:52px;height:52px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700}.nova-buy-icon-success{background:#dcfce7;color:#16a34a}.nova-buy-icon-failure{background:#fee2e2;color:#dc2626}.nova-buy-status.nova-buy-success{color:#16a34a}.nova-buy-status.nova-buy-failure{color:#dc2626}.nova-buy-reload{width:100%;text-align:center;border:none;cursor:pointer}.nova-buy-retry{width:100%;padding:11px;border-radius:10px;border:1px solid #e5e7eb;background:#f8fafc;cursor:pointer;font-weight:600}.nova-lessons-heading{margin-top:32px}.nova-lesson-list{list-style:none;margin:0;padding:0;overflow:hidden}.nova-lesson-list li{border:1px solid var(--nova-line,#e5e7eb);border-radius:10px;margin-bottom:8px;overflow:hidden}.nova-lesson-list li a{display:block;padding:14px 16px;text-decoration:none;color:var(--nova-ink,#0f172a);font-weight:600;touch-action:manipulation;-webkit-tap-highlight-color:rgb(79 70 229 / .15)}.nova-lesson-locked{display:block;padding:14px 16px;color:var(--nova-muted,#64748b)}.nova-lesson-crumb{margin-bottom:16px}.nova-lesson-crumb a{text-decoration:none;color:var(--nova-muted,#64748b);font-size:14px}.nova-lesson-layout{display:flex;gap:32px;align-items:flex-start;overflow:hidden}.nova-lesson-sidebar{flex:0 0 260px;overflow:hidden}.nova-lesson-sidebar h3{margin-top:0}.nova-lesson-list-course{margin-top:12px}.nova-lesson-current{border-color:var(--nova-accent,#4f46e5)!important}.nova-lesson-main{flex:1 1 auto;min-width:0;overflow:hidden}@media (max-width:700px){.nova-lesson-layout{flex-direction:column}.nova-lesson-sidebar{flex:1 1 auto;width:100%}}.nova-dashboard{overflow:hidden}.nova-dash-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}.nova-dash-welcome{font-weight:700;font-size:16px;color:var(--nova-ink,#0f172a);margin:0}.nova-dash-logout{text-decoration:none;padding:8px 16px;font-size:13px}.nova-dash-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px}.nova-dash-card{background:#fff;border:1px solid var(--nova-line,#e5e7eb);border-radius:14px;padding:22px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:4px;overflow:hidden;font-family:inherit}.nova-dash-card:hover{border-color:var(--nova-accent,#4f46e5)}.nova-dash-card-active{border-color:var(--nova-accent,#4f46e5);background:#f8fafc}.nova-dash-num{font-size:28px;font-weight:800;color:var(--nova-ink,#0f172a)}.nova-dash-label{font-size:14px;color:var(--nova-muted,#64748b);font-weight:600}.nova-dash-panel{margin-top:8px;overflow:hidden}.nova-wishlist-btn{background:none;border:none;font-size:22px;cursor:pointer;color:#94a3b8;vertical-align:middle;margin-left:8px;line-height:1}.nova-wishlist-btn.nova-wishlist-active{color:#dc2626}.nova-auth-box{max-width:400px;margin:0 auto;background:#fff;border:1px solid var(--nova-line,#e5e7eb);border-radius:16px;padding:28px;overflow:hidden}.nova-auth-box h2{margin-top:0}.nova-auth-error{background:#fee2e2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:14px;margin-bottom:14px}.nova-auth-form{display:flex;flex-direction:column;gap:12px}.nova-auth-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#334155}.nova-auth-form input{padding:10px 12px;border:1px solid var(--nova-line,#e5e7eb);border-radius:10px;font-size:15px;font-weight:400}.nova-auth-form .nova-btn{border:none;cursor:pointer;margin-top:4px}.nova-google-btn{display:block;width:100%;text-align:center;background:#fff;color:#334155;border:1px solid var(--nova-line,#e5e7eb);font-weight:600}.nova-auth-divider{text-align:center;color:#94a3b8;font-size:12px;margin:14px 0;position:relative}.nova-auth-alt{text-align:center;font-size:13px;margin-top:16px;color:#64748b}.nova-auth-actions{display:flex;gap:10px;margin-top:14px}.nova-auth-actions .nova-btn{flex:1;text-align:center;text-decoration:none}.nova-buy-modal-price{font-weight:700;font-size:15px;color:var(--nova-accent,#4f46e5);margin:0 0 10px}.nova-buy-receipt{text-align:left;border:1px solid var(--nova-line,#e5e7eb);border-radius:10px;padding:12px 14px;margin:14px 0}.nova-buy-receipt-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:13px;border-bottom:1px solid var(--nova-line,#e5e7eb)}.nova-buy-receipt-row:last-child{border-bottom:none}.nova-buy-receipt-row span{color:var(--nova-muted,#64748b)}.nova-lesson-video-wrap{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:var(--nova-radius,14px);margin:16px 0;background:#000}.nova-lesson-video-wrap iframe.nova-lesson-iframe{position:absolute;inset:0;width:100%;height:100%;border:none}video.nova-lesson-video{width:100%;height:auto;max-width:100%;border-radius:var(--nova-radius,14px);display:block;margin:16px 0;background:#000}.nova-menu-auth-item a{font-weight:600}.nova-progress-wrap{margin:14px 0}.nova-progress-wrap-sm{margin:8px 0 0}.nova-progress-track{width:100%;height:8px;border-radius:999px;background:var(--nova-surface,#f1f5f9);overflow:hidden;border:1px solid var(--nova-line,#e5e7eb)}.nova-progress-fill{height:100%;background:var(--nova-accent,#4f46e5);border-radius:999px;transition:width .3s ease}.nova-progress-label{font-size:12px;color:var(--nova-muted,#64748b);margin:6px 0 0}.nova-lesson-check{color:#16a34a}.nova-mark-done-btn{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:10px 18px;border-radius:10px;border:1px solid var(--nova-line,#e5e7eb);background:var(--nova-bg,#fff);color:var(--nova-ink,#0f172a);font-weight:600;cursor:pointer;touch-action:manipulation}.nova-mark-done-active{background:#16a34a;border-color:#16a34a;color:#fff}.nova-mark-done-icon{font-weight:700}.nova-tutor-course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:16px 0 28px;overflow:hidden}.nova-tutor-course-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.nova-tutor-course-thumb{aspect-ratio:16/9;background:#f1f5f9;overflow:hidden}.nova-tutor-course-thumb img{width:100%;height:100%;object-fit:cover;display:block}.nova-tutor-course-thumb-empty{width:100%;height:100%}.nova-tutor-course-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:8px}.nova-tutor-course-card-body h3{margin:0;font-size:15px}.nova-tutor-course-meta{display:flex;justify-content:space-between;align-items:center}.nova-tutor-course-students{margin:0;font-size:13px;color:#64748b}.nova-class-list{display:flex;flex-direction:column;gap:10px;overflow:hidden}.nova-class-card{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--nova-line,#e5e7eb);border-radius:12px;padding:14px 16px;overflow:hidden}.nova-class-info h4{margin:6px 0 2px;font-size:15px}.nova-class-info p{margin:0;font-size:13px;color:var(--nova-muted,#64748b)}.nova-class-badge-upcoming{background:#eef2ff;color:#4f46e5}.nova-class-badge-live{background:#dcfce7;color:#16a34a}.nova-class-badge-ended{background:#f1f5f9;color:#94a3b8}.nova-card,.nova-dash-card,.nova-buy-modal-box,.nova-auth-box,.nova-class-card,.nova-tutor-course-card,.nova-lesson-list li,.nova-locked,.nova-stat-card,.nova-account-panel,.nova-theme-panel{border:none!important;border-radius:28px!important;background:var(--nova-bg,#fff)!important;box-shadow:10px 10px 22px rgb(0 0 0 / .3),-8px -8px 18px rgb(255 255 255 / .12)!important}.nova-btn,.nova-mark-done-btn,.nova-dash-card,.nova-buy-phone-input,.nova-auth-form input,.nova-lesson-video,.nova-lesson-video-wrap,.nova-card-thumb,.nova-tutor-course-thumb{border-radius:20px!important}.nova-btn-primary,.nova-mark-done-active{border:none!important;box-shadow:6px 6px 14px rgb(0 0 0 / .3),-5px -5px 12px rgb(255 255 255 / .18)!important}.nova-btn-secondary{border:none!important;background:var(--nova-bg,#fff)!important;box-shadow:5px 5px 12px rgb(0 0 0 / .22),-4px -4px 10px rgb(255 255 255 / .1)!important}.nova-progress-track{border:none!important;border-radius:999px!important;box-shadow:inset 3px 3px 6px rgb(0 0 0 / .28),inset -3px -3px 6px rgb(255 255 255 / .08)}.nova-progress-fill{border-radius:999px!important;box-shadow:none!important}.nova-card:hover,.nova-tutor-course-card:hover{transform:translateY(-2px)}