:root{--teal:#00b5b5;--teal-dark:#008f8f;--teal-light:#00d4d4;--font-body:"Barlow",system-ui,sans-serif;--font-display:"Barlow Condensed","Barlow",sans-serif;--r-sm:3px;--r-md:5px;--r-lg:8px}[data-theme=dark]{--bg:#0d0f12;--bg-2:#14161c;--bg-card:#1a1c24;--bg-raised:#20222c;--bg-input:#181a22;--border:#282b38;--border-hi:#363a4e;--text:#eeeef2;--text-dim:#8890aa;--text-muted:#52587a;--accent:#00b5b5;--accent-bg:#00b5b51a;--accent-dark:#008f8f;--green:#22c55e;--danger:#ef4444;--shadow:0 4px 24px #00000080;--shadow-sm:0 2px 8px #00000059}[data-theme=light]{--bg:#f2f4f7;--bg-2:#fff;--bg-card:#fff;--bg-raised:#eaecf0;--bg-input:#fff;--border:#d4d8e2;--border-hi:#b0b8cc;--text:#0e1018;--text-dim:#3a4060;--text-muted:#7080a0;--accent:#00999a;--accent-bg:#00999a14;--accent-dark:#007878;--green:#15803d;--danger:#dc2626;--shadow:0 2px 12px #00000017;--shadow-sm:0 1px 6px #00000012}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:15px}body{-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text);font-family:Barlow,system-ui,sans-serif;font-family:var(--font-body);line-height:1.6;transition:background .2s,color .2s}button{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit}input,select,textarea{background:var(--bg-input);border:1.5px solid var(--border);border-radius:5px;border-radius:var(--r-md);color:var(--text);font-family:inherit;font-size:14px;outline:none;padding:9px 12px;transition:border-color .15s,box-shadow .15s;width:100%}input:focus,select:focus,textarea:focus{border-color:#00b5b5;border-color:var(--accent);box-shadow:0 0 0 3px #00b5b51a;box-shadow:0 0 0 3px var(--accent-bg)}[data-theme=light] input,[data-theme=light] select,[data-theme=light] textarea{background:#fff;color:#0e1018}[data-theme=light] input::placeholder{color:#9098b8}::-webkit-scrollbar{height:5px;width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-hi);border-radius:3px}body{overscroll-behavior-y:contain}.app-body,.auth-page,.landing,body{max-width:100%;overflow-x:hidden}:root{--accent:#00b5b5;--accent-dark:#008f8f;--accent-bg:#00b5b51a}#root svg{display:inline!important;max-height:none!important;max-width:none!important;overflow:visible!important;visibility:visible!important}#root button:focus,#root button:focus-visible,#root button:focus-within{background-color:inherit!important;box-shadow:none!important;outline:none!important}#root .topnav-link:focus,#root .topnav-link:focus-visible{background-color:initial!important;border-bottom-color:#00b5b5!important;border-bottom-color:var(--accent)!important;color:#00b5b5!important;color:var(--accent)!important}#root .btn:focus,#root .btn:focus-visible{box-shadow:none!important;outline:none!important}#root .btn-outline:focus,#root .btn-outline:focus-visible,#root .btn-outline:hover{background-color:initial!important}#root .landing-footer button:focus,#root .landing-footer button:focus-visible,#root .landing-footer button:hover{background-color:inherit!important;color:inherit!important}#root a,#root a:hover,#root a:visited{color:inherit!important;text-decoration:none!important}#root{font-family:Barlow,system-ui,sans-serif!important;font-family:var(--font-body)!important}#root img{display:inline-block!important;visibility:visible!important}#root .site-logo{height:34px!important}#root .site-logo,#root .site-logo-sm{max-width:none!important;width:auto!important}#root .site-logo-sm{height:26px!important}.site-logo{height:34px}.site-logo,.site-logo-sm{display:block;object-fit:contain;width:auto}.site-logo-sm{height:26px}.logo-block{align-items:center;display:flex;gap:10px;text-decoration:none}.logo-text-stack{display:flex;flex-direction:column;line-height:1.1}.logo-cfmoto-word{color:var(--text);font-family:var(--font-display);font-size:17px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase}.logo-academy-word{color:var(--accent);font-size:10px;letter-spacing:4px}.btn,.logo-academy-word{font-family:var(--font-display);font-weight:700;text-transform:uppercase}.btn{align-items:center;border:2px solid #0000;border-radius:var(--r-md);display:inline-flex;font-size:13px;gap:7px;letter-spacing:1px;padding:10px 22px;transition:all .15s;white-space:nowrap}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}.btn-primary:disabled{cursor:not-allowed;opacity:.45}.btn-outline{background:#0000;border-color:var(--border-hi);color:var(--text)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}[data-theme=light] .btn-outline{border-color:#b0b8cc;color:#0e1018}[data-theme=light] .btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-ghost{background:#0000;border-color:#0000;color:var(--text-dim)}.btn-ghost:hover{background:var(--bg-raised);color:var(--text)}.btn-danger{background:#dc26261a;border-color:#dc262640;color:var(--danger)}.btn-danger:hover{background:#dc262633}.btn-lg{font-size:15px;padding:13px 30px}.btn-full{justify-content:center;width:100%}.btn-sm{font-size:11px;padding:5px 12px}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:inherit;font-weight:600;text-decoration:underline}.btn-outline-white{background:#0000;border:2px solid #fff6;color:#fff}.btn-outline-white:hover{background:#ffffff14;border-color:#fff}.stats-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:32px}.stat-block{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);border-top:3px solid var(--accent);flex:1 1;min-width:120px;padding:20px 22px}[data-theme=light] .stat-block{background:#fff;box-shadow:0 1px 4px #0000000f}.stat-num{color:var(--accent);font-size:36px;font-weight:800;line-height:1;margin-bottom:4px}.stat-label,.stat-num{font-family:var(--font-display)}.stat-label{color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.card-grid{grid-gap:18px;align-items:stretch;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.card-grid>*,.content-card{display:flex;flex-direction:column}.content-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);box-sizing:border-box;cursor:pointer;gap:8px;height:100%;padding:22px;transition:all .18s}.content-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}[data-theme=light] .content-card{background:#fff;box-shadow:0 1px 5px #00000012}[data-theme=light] .content-card:hover{box-shadow:0 4px 16px #0000001a}.card-icon{font-size:26px;margin-bottom:4px}.content-card h3{color:var(--text);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}[data-theme=light] .content-card h3{color:#0e1018}.content-card p{color:var(--text-dim);flex:1 1;font-size:13px;line-height:1.5}[data-theme=light] .content-card p{color:#3a4060}.card-action{color:var(--accent);font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:1px;margin-top:4px;text-transform:uppercase}@keyframes cardFadeUp{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.card-reveal{opacity:0;transform:translateY(22px)}.card-reveal--visible{animation:cardFadeUp .55s cubic-bezier(.22,1,.36,1) both}@media (max-width:600px){.card-grid{gap:10px!important;grid-template-columns:1fr 1fr!important}.content-card{padding:10px 9px}.content-card h3{font-size:11px}.content-card p{font-size:12px}.card-action{font-size:11px}.theme-card-img{height:110px!important;object-fit:cover}}.render-pdf-title{color:var(--text-muted);font-family:var(--font-display);font-size:14px;font-weight:700;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.pdf-action-bar{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}@media (max-width:640px){.pdf-action-bar{display:none}}.pdf-embed-wrap{-webkit-overflow-scrolling:touch;background:var(--bg-raised);border:1.5px solid var(--border);border-radius:8px;height:600px;overflow-x:auto;overflow-y:auto;width:100%}.pdf-embed-wrap embed,.pdf-embed-wrap iframe{display:block;height:100%;min-width:850px;width:100%}@media (max-width:768px){.pdf-embed-wrap{height:480px}}.pdf-embed-wrap:fullscreen{border:none;border-radius:0;height:100vh;width:100vw}.pdf-embed-wrap:-webkit-full-screen{border:none;border-radius:0;height:100vh;width:100vw}.pdf-embed-wrap:-moz-full-screen{border:none;border-radius:0;height:100vh;width:100vw}@keyframes spin{to{transform:rotate(1turn)}}.pdf-open-link{align-items:center;color:var(--accent);display:inline-flex;font-family:var(--font-display);font-size:12px;font-weight:700;gap:5px;letter-spacing:.5px;margin-top:8px;text-decoration:none;text-transform:uppercase}.pdf-open-link:hover{text-decoration:underline}.zip-download-card{align-items:center;background:var(--bg-card);border:1.5px solid var(--border);border-radius:10px;color:inherit;display:flex;gap:14px;padding:14px 18px;text-decoration:none;transition:border-color .15s,transform .15s,background .15s}.zip-download-card:hover{background:var(--accent-bg);border-color:var(--accent);transform:translateY(-1px)}.zip-download-icon{flex-shrink:0;font-size:30px;line-height:1}.zip-download-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.zip-download-name{color:var(--text);font-family:var(--font-display);font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zip-download-hint{color:var(--text-muted);font-size:11px;letter-spacing:.2px}.zip-download-cta{color:var(--accent);flex-shrink:0;font-family:var(--font-display);font-size:12px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}@media (max-width:520px){.zip-download-card{flex-wrap:wrap}.zip-download-cta{flex-basis:100%;text-align:right}}.pub-badge{align-items:center;border-radius:8px;display:inline-flex;font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.5px;padding:1px 7px;text-transform:uppercase}.pub-live{background:#22c55e1f;border:1px solid #22c55e40;color:#16a34a}.pub-draft{background:#eab3081f;border:1px solid #eab3084d;color:#b45309}[data-theme=light] .pub-live{color:#15803d}[data-theme=light] .pub-draft{color:#92400e}.content-card--draft{border-style:dashed;opacity:.7}.draft-banner{background:#eab3081a;border:1px solid #eab3084d;border-radius:4px;color:#b45309;font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;padding:3px 8px;text-transform:uppercase}.table-wrap{border:1.5px solid var(--border);border-radius:var(--r-lg);overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th{background:var(--bg-raised);border-bottom:1px solid var(--border);color:var(--text-muted);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:1.5px;padding:10px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}[data-theme=light] .data-table th{background:#f0f2f7;color:#7080a0}.data-table td{border-bottom:1px solid var(--border);color:var(--text);font-size:14px;padding:10px 14px}[data-theme=light] .data-table td{color:#0e1018}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--bg-raised)}[data-theme=light] .data-table tr:hover td{background:#f5f6fa}.result-badge{border-radius:3px;display:inline-block;font-family:var(--font-display);font-size:12px;font-weight:700;padding:2px 8px}.result-badge.pass{background:#15803d1a;color:var(--green)}.result-badge.fail{background:#dc26261a;color:var(--danger)}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{color:var(--text-muted);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}[data-theme=light] .form-group label{color:#7080a0}.form-row{display:flex;gap:12px}.form-group.flex-1{flex:1 1}.form-actions{display:flex;gap:10px;padding-top:8px}@keyframes formCardIn{0%{opacity:0;transform:translateY(-10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.form-card{animation:formCardIn .2s cubic-bezier(.22,1,.36,1) both;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:14px;margin-bottom:16px;padding:22px 24px}[data-theme=light] .form-card{background:#fff;box-shadow:0 2px 8px #0000000f}.form-card h3{align-items:center;border-bottom:1px solid var(--border);color:var(--text-muted);display:flex;font-family:var(--font-display);font-size:11px;font-weight:700;gap:8px;letter-spacing:1.5px;margin-bottom:2px;padding-bottom:12px;text-transform:uppercase}.profile-header-card{align-items:center;display:flex;gap:18px}.profile-avatar{align-items:center;background:var(--accent);border:3px solid var(--accent);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-family:var(--font-display);font-size:30px;font-weight:800;height:72px;justify-content:center;overflow:hidden;width:72px}.profile-avatar img{height:100%;object-fit:cover;width:100%}.profile-name{color:var(--text);font-family:var(--font-display);font-size:20px;font-weight:800;line-height:1.1}.profile-meta{color:var(--text-muted);font-size:13px;margin-top:3px}.profile-info-grid{grid-gap:10px 20px;display:grid;gap:10px 20px;grid-template-columns:1fr 1fr}.profile-info-label{color:var(--text-muted);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:1px;margin-bottom:4px;text-transform:uppercase}.profile-info-val{background:var(--bg-raised);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:14px;padding:7px 10px}.input-wrap{position:relative}.input-wrap input{padding-right:36px}.input-valid-icon{color:var(--green);font-weight:700;position:absolute;right:12px;top:50%;transform:translateY(-50%)}input.input-error{border-color:var(--danger)!important}.field-error-msg{color:var(--danger);font-family:var(--font-display);font-size:12px;font-weight:600}.error-msg{background:#dc262614;border:1px solid #dc262640;border-radius:var(--r-md);color:var(--danger)}.error-msg,.success-msg{font-size:13px;padding:8px 12px}.success-msg{background:#0a8e8e14;border:1px solid #0a8e8e4d;border-radius:var(--r-md);color:var(--accent)}.search-bar{margin-bottom:16px}.search-bar input{max-width:360px}@keyframes listItemIn{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}.item-list{display:flex;flex-direction:column;gap:6px}.list-item{align-items:center;animation:listItemIn .18s cubic-bezier(.22,1,.36,1) both;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-md);display:flex;gap:12px;padding:11px 14px}.list-item:nth-child(2){animation-delay:.03s}.list-item:nth-child(3){animation-delay:.06s}.list-item:nth-child(4){animation-delay:.09s}.list-item:nth-child(5){animation-delay:.12s}.list-item:nth-child(n+6){animation-delay:.14s}@keyframes toastIn{0%{opacity:0;transform:translateX(40px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}[data-theme=light] .list-item{background:#fff}.list-item:hover{border-color:var(--border-hi)}.item-icon{flex-shrink:0;font-size:17px;text-align:center;width:26px}.item-info{flex:1 1;min-width:0}.item-info strong{color:var(--text);display:block;font-size:14px;font-weight:600}[data-theme=light] .item-info strong{color:#0e1018}.item-info span{color:var(--text-muted);display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-actions{display:flex;flex-shrink:0;gap:6px}.tab-bar{border-bottom:2px solid var(--border);display:flex;gap:0;margin-bottom:24px;overflow-x:auto;scrollbar-width:none}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{border-bottom:2px solid #0000;color:var(--text-muted);font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:-2px;padding:10px 18px;text-transform:uppercase;transition:all .15s;white-space:nowrap}.tab-btn:hover{color:var(--text)}[data-theme=light] .tab-btn:hover{color:#0e1018}.tab-btn.active{border-bottom-color:var(--accent);color:var(--accent)}.cfmoto-pager-btn,.cfmoto-pager-btn:active,.cfmoto-pager-btn:focus,.cfmoto-pager-btn:focus-visible,.cfmoto-pager-btn:hover{background:var(--bg-raised)!important;background-image:none!important;border:1.5px solid var(--border);border-radius:6px;box-shadow:none!important;color:var(--text)!important;cursor:pointer;font-family:var(--font-display);font-size:13px;font-weight:700;height:32px;min-width:32px;outline:none!important;text-shadow:none;text-transform:none;transition:all .15s}.cfmoto-pager-btn.is-active,.cfmoto-pager-btn.is-active:active,.cfmoto-pager-btn.is-active:focus,.cfmoto-pager-btn.is-active:focus-visible,.cfmoto-pager-btn.is-active:hover{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}.cfmoto-pager-btn:hover:not(.is-active){border-color:var(--accent)!important;color:var(--accent)!important}.cfmoto-edit-btn,.cfmoto-edit-btn:active,.cfmoto-edit-btn:focus,.cfmoto-edit-btn:focus-visible,.cfmoto-edit-btn:hover{align-items:center;background:var(--bg-raised)!important;background-image:none!important;border:1.5px solid var(--border);border-radius:8px;box-shadow:none!important;color:var(--text)!important;cursor:pointer;display:flex;font-size:15px;height:32px;justify-content:center;outline:none!important;transition:all .15s;width:32px}.cfmoto-edit-btn.is-active,.cfmoto-edit-btn.is-active:active,.cfmoto-edit-btn.is-active:focus,.cfmoto-edit-btn.is-active:focus-visible,.cfmoto-edit-btn.is-active:hover{background:var(--accent)!important;border-color:var(--accent)!important;box-shadow:0 0 0 3px #0a8e8e40!important;color:#fff!important}.topnav{align-items:center;background:var(--bg-2);border-bottom:2px solid var(--accent);box-shadow:0 2px 12px #0000001f;display:flex;height:60px;justify-content:space-between;padding:0 40px;position:-webkit-sticky;position:sticky;top:0;z-index:100}[data-theme=light] .topnav{background:#fff}.topnav-left{align-items:center;display:flex;gap:32px}.topnav-desktop-right,.topnav-right{align-items:center;display:flex;gap:10px}.topnav-mob-right{align-items:center;display:none;gap:8px}.topnav-links{align-items:center;display:flex;gap:4px}.topnav-link{border-bottom:2px solid #0000;color:var(--text-dim);font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.8px;margin-bottom:-2px;padding:8px 14px;text-transform:uppercase;transition:all .15s}.topnav-link.active,.topnav-link:hover{border-bottom-color:var(--accent);color:var(--accent)}[data-theme=light] .topnav-link{color:#3a4060}[data-theme=light] .topnav-link.active,[data-theme=light] .topnav-link:hover{color:var(--accent)}.topnav-user{align-items:center;color:var(--text-dim);display:flex;font-size:13px;gap:10px}.topnav-avatar{background:var(--accent);color:#fff;font-family:var(--font-display);font-size:14px;font-weight:800}.theme-btn,.topnav-avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.theme-btn{background:var(--bg-raised);border:1.5px solid var(--border);color:var(--text-dim);font-size:15px;transition:all .15s}.theme-btn:hover{border-color:var(--accent);color:var(--accent)}[data-theme=light] .theme-btn{background:var(--bg-raised);color:var(--text-dim)}.mob-menu-btn{align-items:center;background:var(--bg-raised);border:1.5px solid var(--border);border-radius:var(--r-md);display:none;flex-direction:column;gap:4px;height:36px;justify-content:center;width:36px}.mob-menu-btn span{background:var(--text-dim);border-radius:1px;display:block;height:2px;width:16px}.mob-menu-btn:hover span{background:var(--accent)}.mob-drawer-overlay{background:#0000008c;display:none;inset:0;position:fixed;z-index:200}.mob-drawer{animation:slideFromRight .22s cubic-bezier(.25,.46,.45,.94);background:var(--bg-2);border-left:1px solid var(--border);bottom:0;display:flex;flex-direction:column;overflow:hidden;padding:20px 0;position:absolute;right:0;top:0;width:260px}[data-theme=light] .mob-drawer{background:#fff}@keyframes slideFromRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.mob-close-btn{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:50%;color:var(--text-dim);display:flex;font-size:13px;height:30px;justify-content:center;position:absolute;right:14px;top:14px;width:30px}.mob-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow-y:auto;padding:20px 0}.mob-nav-item{align-items:center;color:var(--text-dim);display:flex;font-family:var(--font-display);font-size:14px;font-weight:700;gap:10px;letter-spacing:.5px;padding:12px 20px;text-transform:uppercase;transition:all .15s}.mob-nav-item.active,.mob-nav-item:hover{background:var(--accent-bg);color:var(--accent)}.mob-nav-item.logout{color:var(--text-muted)}.mob-nav-item.logout:hover{background:#dc26260f;color:var(--danger)}.mob-user{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:10px;margin-bottom:8px;padding:16px 20px}.mob-uname{font-family:var(--font-display);font-size:14px;font-weight:700}.mob-urole{color:var(--text-muted);font-size:11px}.mob-bottom{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:2px;padding:12px 0}.mob-bottom .btn{margin:0 20px;width:calc(100% - 40px)}.mob-menu-btn-white span{background:#ffffffd9!important}.mob-menu-btn-white{background:#00000040!important;border-color:#ffffff40!important}.theme-btn-white{background:#00000040!important;border-color:#ffffff4d!important;color:#ffffffd9!important}.theme-btn-white:hover{border-color:#ffffffb3!important}.app-body{background:var(--bg);min-height:calc(100vh - 60px)}@media (max-width:768px){.topnav{padding:0 16px}.topnav-links,.topnav-user .topnav-uname{display:none}.mob-menu-btn{display:flex}.mob-drawer-overlay{display:block}.topnav-desktop-right{display:none!important}.topnav-mob-right{display:flex!important}}@media (max-width:400px){.topnav{padding:0 10px}}.landing{background:var(--bg);display:flex;flex-direction:column;min-height:100vh}[data-theme=light] .landing{background:#f2f4f7}.landing-nav{align-items:center;background:var(--bg-2);border-bottom:2px solid var(--accent);box-shadow:0 2px 12px #0000001a;display:flex;height:60px;justify-content:space-between;padding:0 40px;position:-webkit-sticky;position:sticky;top:0;z-index:100}[data-theme=light] .landing-nav{background:#fff}.landing-nav-right{align-items:center;display:flex;gap:10px}.hero-fullbleed{display:flex;flex-direction:column;justify-content:flex-start;min-height:100vh;overflow:hidden;position:relative}.hero-fb-bg{inset:0;position:absolute;z-index:0}.hero-fb-img{animation:heroZoom 10s ease forwards;height:100%;object-fit:cover;object-position:60% center;width:100%}.hero-fb-video{height:auto;min-height:100%;min-width:100%;object-fit:cover;width:auto}.hero-fb-video,.hero-yt-wrap{left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}.hero-yt-wrap{height:max(56.25vw,100vh);overflow:hidden;width:max(100vw,177.78vh);z-index:0}.hero-yt-wrap iframe{border:0!important;height:100%!important;left:0!important;pointer-events:none!important;position:absolute!important;top:0!important;width:100%!important}.hero-yt-loading{background:#0d0f12;inset:0;pointer-events:none;position:absolute;transition:opacity .8s ease;z-index:1}@keyframes heroZoom{0%{transform:scale(1.06)}to{transform:scale(1)}}.hero-fb-overlay{background:linear-gradient(135deg,#0d0f12e0,#0d0f12a6 45%,#0d0f122e);inset:0;position:absolute}.hero-fb-content{margin-top:0;max-width:680px;padding:100px 60px 80px;position:relative;z-index:2}.hero-fb-model-badge{display:none}.hero-fullbleed .hero-eyebrow{align-items:center;color:var(--accent);display:flex;font-family:var(--font-display);font-size:11px;font-weight:700;gap:12px;letter-spacing:5px;margin-bottom:20px;text-transform:uppercase}.hero-fullbleed .hero-eyebrow:before{background:var(--accent);content:"";display:block;flex-shrink:0;height:2px;width:32px}.hero-fullbleed .hero-title{color:#fff!important;font-family:var(--font-display);font-size:clamp(52px,7vw,92px);font-weight:900;letter-spacing:-2px;line-height:.9;margin-bottom:8px;text-shadow:0 2px 24px #00000059}.hero-fullbleed .hero-title-line2{color:var(--accent)}.hero-fullbleed .hero-desc{color:#eeeef2c7;font-size:16px;line-height:1.75;margin:22px 0 36px;max-width:500px}.hero-fullbleed .hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px}.hero-fullbleed .hero-divider{background:#ffffff26;border:none;height:1px;margin-bottom:28px}.hero-fullbleed .hero-stats{display:flex;flex-wrap:wrap;gap:36px}.hero-fullbleed .hero-stat-num{color:var(--accent);font-family:var(--font-display);font-size:28px;font-weight:800;overflow:hidden}@keyframes statRollIn{0%{opacity:0;transform:translateY(60%)}to{opacity:1;transform:translateY(0)}}.hero-fullbleed .hero-stat-label{color:#eeeef273;font-size:11px;letter-spacing:1px;margin-top:3px;text-transform:uppercase}.landing-hero-nav{align-items:center;background:linear-gradient(180deg,#0d0f1299,#0000);display:flex;height:68px;justify-content:space-between;left:0;padding:0 48px;position:absolute;right:0;top:0;z-index:10}.landing-nav-desktop{align-items:center;display:flex;gap:10px}.landing .mob-menu-btn{display:none}.features-section{margin:0 auto;max-width:1100px;padding:72px 40px 64px;width:100%}.features-eyebrow{color:var(--text-muted);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:4px;margin-bottom:8px;text-transform:uppercase}.features-title{color:var(--text);font-family:var(--font-display);font-size:28px;font-weight:800;margin-bottom:0}[data-theme=light] .features-title{color:#0e1018}.features-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.feature-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:26px 22px;transition:border-color .2s}.feature-card:hover{border-color:var(--accent)}[data-theme=light] .feature-card{background:#fff;border-color:#d4d8e2;box-shadow:0 1px 4px #0000000f}.feature-icon{font-size:26px;margin-bottom:12px}.feature-card h3{color:var(--text);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}[data-theme=light] .feature-card h3{color:#0e1018}.feature-card p{color:var(--text-dim);font-size:14px;line-height:1.6}[data-theme=light] .feature-card p{color:#3a4060}.cookie-banner{align-items:center;background:var(--bg-2);border-bottom:2px solid var(--accent);box-shadow:0 4px 20px #0003;display:flex;flex-wrap:wrap;gap:20px;left:0;padding:14px 32px;position:fixed;right:0;top:0;z-index:9999}[data-theme=light] .cookie-banner{background:#fff}.cookie-banner-text{color:var(--text-dim);flex:1 1;font-size:13px;min-width:260px}[data-theme=light] .cookie-banner-text{color:#3a4060}.cookie-banner-text a{color:var(--accent);text-decoration:underline}.cookie-banner-actions{display:flex;flex-wrap:wrap;gap:10px}.policy-page{margin:0 auto;max-width:760px;padding:48px 32px 80px}.policy-page h1{font-family:var(--font-display);font-size:32px;font-weight:800;margin-bottom:8px}.policy-page h2{color:var(--accent);font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:.5px;margin:28px 0 10px;text-transform:uppercase}.policy-page li,.policy-page p{color:var(--text-dim);font-size:14px;line-height:1.8;margin-bottom:8px}[data-theme=light] .policy-page li,[data-theme=light] .policy-page p{color:#3a4060}.policy-page ul{margin-bottom:12px;padding-left:20px}.policy-page a{color:var(--accent)}.policy-page .policy-date{color:var(--text-muted);font-size:12px;margin-bottom:32px}.policy-table{border-collapse:collapse;font-size:13px;margin:12px 0 20px;width:100%}.policy-table th{background:var(--bg-raised);color:var(--text-muted);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:1px;text-align:left;text-transform:uppercase}.policy-table td,.policy-table th{border-bottom:1px solid var(--border);padding:8px 12px}.policy-table td{color:var(--text-dim)}[data-theme=light] .policy-table td{color:#3a4060}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.hero-animate-in .hero-eyebrow{animation:heroFadeUp .7s cubic-bezier(.22,1,.36,1) .1s both}.hero-animate-in .hero-title{animation:heroFadeUp .8s cubic-bezier(.22,1,.36,1) .22s both}.hero-animate-in .hero-desc{animation:heroFadeUp .8s cubic-bezier(.22,1,.36,1) .38s both}.hero-animate-in .hero-cta{animation:heroFadeUp .7s cubic-bezier(.22,1,.36,1) .52s both}.hero-animate-in .hero-divider,.hero-animate-in .hero-stats{animation:heroFadeUp .7s cubic-bezier(.22,1,.36,1) .66s both}@keyframes revealFadeUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.reveal-item{opacity:0;transform:translateY(28px)}.reveal-item.revealed{animation:revealFadeUp .65s cubic-bezier(.22,1,.36,1) both}.features-header{margin-bottom:36px}.landing-footer{align-items:center;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:28px 40px}[data-theme=light] .landing-footer{background:#fff}.footer-links{display:flex;flex-wrap:wrap;gap:20px}.footer-links a{color:var(--text-muted);font-size:13px;transition:color .15s}.footer-links a:hover{color:var(--accent)}.landing-footer p{color:var(--text-muted);font-size:13px}.landing-footer-grid{background:var(--bg-card);border-top:1px solid var(--border)}[data-theme=light] .landing-footer-grid{background:#f8f9fb}.footer-grid-inner{grid-gap:40px;display:grid;gap:40px;grid-template-columns:2fr 1fr 1fr 1fr;margin:0 auto;max-width:1100px;padding:48px 60px 40px}.footer-col--brand{display:flex;flex-direction:column;gap:14px}.footer-brand-desc{color:var(--text-muted);font-size:13px;line-height:1.65;max-width:220px}.footer-col-title{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:2px;margin-bottom:12px;text-transform:uppercase}.footer-col{display:flex;flex-direction:column;gap:2px}.footer-col-link{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:14px;padding:5px 0;text-align:left;transition:color .15s}.footer-col-link:hover{color:var(--text)}.footer-bottom-bar{align-items:center;border-top:1px solid var(--border);display:flex;justify-content:space-between;margin:0 auto;max-width:1100px;padding:18px 60px}.footer-copy{color:var(--text-muted);font-size:13px}@media (max-width:768px){.landing-nav-desktop{display:none!important}.landing .mob-menu-btn{display:flex!important}.landing-nav{height:56px}.landing-hero-nav{height:60px;padding:0 20px}.hero-fullbleed{min-height:100svh}.hero-fb-content{max-width:100%;padding:100px 24px 60px}.hero-fullbleed .hero-title{font-size:clamp(42px,12vw,68px)}.hero-fb-model-badge{display:none}.hero-fullbleed .hero-stats{gap:20px}.hero-fullbleed .hero-stat-num{font-size:22px}.hero-cta{align-items:stretch;flex-direction:column;gap:10px}.hero-cta .btn{justify-content:center;text-align:center;width:100%}.hero-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.features-section{padding:40px 20px}.features-grid{gap:12px;grid-template-columns:1fr 1fr}.cookie-banner{flex-direction:column;gap:10px;padding:12px 16px}.cookie-banner-actions{display:flex;gap:8px;width:100%}.cookie-banner-actions .btn{flex:1 1;justify-content:center}.landing-footer{padding:20px 16px}.features-grid{grid-template-columns:1fr}.footer-grid-inner{gap:24px;grid-template-columns:1fr 1fr;padding:32px 20px 24px}.footer-col--brand{grid-column:1/-1}.footer-bottom-bar{align-items:flex-start;flex-direction:column;gap:12px;padding:14px 20px}}@media (max-width:400px){.hero{padding:32px 14px 28px}.hero-title{font-size:clamp(30px,10vw,48px)}}.auth-page{align-items:center;background:var(--bg);display:flex;justify-content:center;min-height:100vh;padding:24px}[data-theme=light] .auth-page{background:#eef0f5}.auth-card{background:var(--bg-2);border:1.5px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);max-width:400px;padding:40px 36px;width:100%}[data-theme=light] .auth-card{background:#fff;border-color:#d4d8e2}.auth-logo{align-items:center;display:flex;gap:10px;margin-bottom:28px}.auth-title{font-family:var(--font-display);font-size:26px;font-weight:800;letter-spacing:.3px;margin-bottom:4px}[data-theme=light] .auth-title{color:#0e1018}.auth-sub{color:var(--text-dim);font-size:14px;margin-bottom:24px}[data-theme=light] .auth-sub{color:#3a4060}.auth-form{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.auth-switch{color:var(--text-dim);font-size:13px;margin-bottom:12px}[data-theme=light] .auth-switch{color:#3a4060}.auth-theme-row{display:flex;justify-content:flex-end;margin-bottom:16px}@media (max-width:768px){.auth-card{border:none;border-radius:0;min-height:100dvh;padding:24px 20px 40px}.auth-page{align-items:flex-start;padding:0}}.page{margin:0 auto;max-width:1080px;padding:40px 40px 60px}.page-header{margin-bottom:32px}.page-eyebrow{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:3px;margin-bottom:6px;text-transform:uppercase}.page-eyebrow,.page-title{font-family:var(--font-display)}.page-title{font-size:34px;font-weight:800;letter-spacing:-.3px;line-height:1.1}[data-theme=light] .page-title{color:#0e1018}.page-header p{color:var(--text-dim);font-size:14px;margin-top:6px}.back-btn{align-items:center;color:var(--text-muted);display:inline-flex;font-family:var(--font-display);font-size:13px;font-weight:600;gap:5px;letter-spacing:.5px;margin-bottom:14px;padding:4px 0;text-transform:uppercase;transition:color .15s}.back-btn:hover{color:var(--accent)}.section{margin-top:32px}.section-title{border-bottom:2px solid var(--accent);color:var(--text);display:inline-block;font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:.5px;margin-bottom:16px;padding-bottom:8px;text-transform:uppercase}[data-theme=light] .section-title{color:#0e1018}.subsection{margin-top:24px}.subsection h3{color:var(--text-muted);font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:1px;margin-bottom:12px;text-transform:uppercase}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.loading{color:var(--text-muted);font-family:var(--font-display);font-size:13px;letter-spacing:2px;padding:60px;text-align:center;text-transform:uppercase}.skeleton{animation:skeleton-shimmer 1.4s ease infinite;background:linear-gradient(90deg,var(--bg-raised) 25%,var(--bg-card) 50%,var(--bg-raised) 75%);background-size:400% 100%;border-radius:4px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.skeleton-line{height:14px;margin-bottom:8px}.skeleton-title{height:24px;margin-bottom:16px;width:55%}.skeleton-card{border-radius:var(--r-lg);height:80px;margin-bottom:12px}.skeleton-stat{border-radius:var(--r-lg);flex:1 1;height:60px;min-width:100px}@keyframes backToTopIn{0%{opacity:0;transform:translateY(12px) scale(.85)}to{opacity:1;transform:translateY(0) scale(1)}}.back-to-top-btn{align-items:center;animation:backToTopIn .22s cubic-bezier(.34,1.56,.64,1) both;background:var(--accent);border:none;border-radius:50%;bottom:32px;box-shadow:0 4px 16px #0003;color:#fff;cursor:pointer;display:flex;font-size:20px;font-weight:700;height:44px;justify-content:center;position:fixed;right:32px;width:44px;z-index:100}.back-to-top-btn:hover{transform:translateY(-3px)}.lesson-table{border-collapse:collapse;font-size:14px;width:100%}.lesson-table th{background:var(--bg-raised);border-bottom:2px solid var(--accent);color:var(--text-muted);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:1px;padding:8px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.lesson-table td{border-bottom:1px solid var(--border);color:var(--text-dim);padding:8px 12px}.lesson-table tr:last-child td{border-bottom:none}.lesson-table tr:hover td{background:var(--bg-raised)}[data-theme=light] .lesson-table th{background:#f2f4f7;color:#555}[data-theme=light] .lesson-table td{color:#3a4060}[data-theme=light] .lesson-table tr:hover td{background:#f8f9fb}.empty-state{background:var(--bg-card);border:1.5px dashed var(--border);border-radius:var(--r-lg);color:var(--text-muted);font-size:14px;padding:40px;text-align:center}[data-theme=light] .empty-state{background:#f8f9fb}@media (max-width:768px){.page{padding:20px 16px 40px}.page-title{font-size:24px}.lesson-viewer .page-header{padding:16px 16px 0}}@media (max-width:400px){.page{padding:16px 12px 40px}}.course-shell{display:flex;min-height:calc(100vh - 60px);overflow:hidden}.course-nav-sidebar{background:var(--bg-2);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;max-width:300px;min-width:200px;padding:0;position:relative;transition:width .22s ease,min-width .22s ease,max-width .22s ease;width:260px}.course-nav-sidebar.collapsed{max-width:38px;min-width:38px;width:38px}.course-nav-sidebar.collapsed .sidebar-scroll-area{display:none}.sidebar-scroll-area{flex:1 1;overflow-y:auto;padding:4px 0 16px}.sidebar-collapse-toggle{align-items:center;align-self:flex-end;background:var(--bg-2);border:none;border-bottom:1px solid var(--border);border-left:1px solid var(--border);color:var(--text-muted);cursor:pointer;display:flex;font-size:20px;font-weight:700;height:38px;justify-content:center;line-height:1;position:-webkit-sticky;position:sticky;top:0;transition:color .15s,background .15s;width:38px;z-index:3}.sidebar-collapse-toggle:hover{background:var(--accent-bg);color:var(--accent)}[data-theme=light] .course-nav-sidebar,[data-theme=light] .sidebar-collapse-toggle{background:#f8f9fc}.course-main{flex:1 1;min-width:0;overflow-y:auto}.sn-theme{align-items:center;background:none;border:none;border-bottom:1.5px solid var(--border);color:var(--text-dim);cursor:pointer;display:flex;font-family:var(--font-display);font-size:11px;font-weight:800;gap:7px;letter-spacing:1px;padding:11px 14px 11px 12px;text-align:left;text-transform:uppercase;transition:color .15s,background .15s;width:100%}.sn-theme:hover{background:var(--bg-raised);color:var(--text)}.sn-theme.open{background:var(--accent-bg);color:var(--accent)}.sn-theme-chevron{font-size:14px;line-height:1;margin-right:4px;transition:transform .2s}.sn-theme.open .sn-theme-chevron{transform:rotate(90deg)}.sn-course{align-items:center;background:none;border:none;border-left:2px solid #0000;color:var(--text-dim);cursor:pointer;display:flex;font-family:var(--font-display);font-size:15px;gap:5px;overflow:hidden;padding:7px 12px 7px 20px;text-align:left;text-overflow:ellipsis;transition:color .15s,background .15s,border-color .15s;white-space:nowrap;width:100%}.sn-course:hover{background:var(--bg-raised);color:var(--text)}.sn-course.active{background:var(--accent-bg);border-left-color:var(--accent);color:var(--accent);font-weight:700}.sn-course-chevron{color:var(--text-muted);flex-shrink:0;font-size:12px;transition:transform .2s}.sn-course.active .sn-course-chevron{color:var(--accent);transform:rotate(90deg)}.sn-theme-panel{max-height:0;opacity:0;overflow:hidden;transition:max-height .28s cubic-bezier(.4,0,.2,1),opacity .22s ease}.sn-theme-panel.open{max-height:2000px;opacity:1}.sn-lessons-wrap{max-height:0;opacity:0;overflow:hidden;transition:max-height .28s cubic-bezier(.4,0,.2,1),opacity .22s ease}.sn-lessons-wrap.open{max-height:3000px;opacity:1}.sn-lessons{padding-bottom:4px}.sn-chapter-content{max-height:0;opacity:0;overflow:hidden;transition:max-height .22s ease,opacity .18s ease}.sn-chapter-content.open{max-height:1000px;opacity:1}.sn-chapter-header{align-items:center;background:none;border:none;border-top:1px solid var(--border);cursor:pointer;display:flex;gap:5px;padding:9px 10px 6px 22px;text-align:left;transition:background .12s;width:100%}.sn-chapter-header:hover{background:var(--bg-raised)}.sn-chapter-header-title{color:var(--text-dim);flex:1 1;font-family:var(--font-display);font-size:10px;font-weight:800;letter-spacing:1.2px;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.sn-chapter-count{font-family:var(--font-display);font-weight:700}.sn-chapter-chevron,.sn-chapter-count{color:var(--text-muted);flex-shrink:0;font-size:10px}.sn-chapter-chevron{line-height:1;transition:transform .2s}.sn-chapter-header.open .sn-chapter-chevron{transform:rotate(90deg)}.sn-chapter-progress{background:var(--border);border-radius:1px;height:2px;margin:0 22px 2px;overflow:hidden}.sn-chapter-progress-fill{border-radius:1px;height:100%;transition:width .4s ease}.sn-lesson-btn{align-items:center;background:none;border:none;border-left:3px solid #0000;color:var(--text-dim);cursor:pointer;display:flex;font-family:var(--font-display);font-size:14px;gap:7px;padding:6px 10px 6px 30px;text-align:left;transition:color .12s,background .12s,border-color .12s;width:100%}.sn-lesson-title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sn-lesson-btn:not(.locked):hover{background:var(--bg-raised);color:var(--text)}.sn-lesson-btn.active{background:var(--accent-bg);border-left-color:var(--accent);color:var(--accent);font-weight:700}.sn-lesson-btn.done{color:var(--green)}.sn-lesson-btn.done.active{color:var(--accent)}.sn-lesson-btn.next{color:var(--text)}.sn-lesson-btn.locked{cursor:default;opacity:.35}.sn-lesson-btn.rank-locked{cursor:default;opacity:.38}.sn-rank-badge{border:1px solid var(--accent);border-radius:4px;color:var(--accent);flex-shrink:0;font-family:var(--font-display);font-size:9px;font-weight:800;letter-spacing:.5px;margin-left:auto;padding:1px 5px}.sn-lesson-icon{flex-shrink:0;font-size:10px;line-height:1;text-align:center;width:13px}.sn-icon-done{color:var(--green)}.sn-icon-next{color:var(--accent)}.sn-icon-open{color:var(--text-muted);opacity:.6}.sn-icon-locked{color:var(--text-muted);opacity:.4}.sn-lesson-btn.active .sn-lesson-icon{color:var(--accent);opacity:1}.lesson-nav-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.lesson-progress-wrap{align-items:center;display:flex;gap:10px;margin:10px 0 4px}.lesson-progress-track{background:var(--border);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.lesson-progress-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .4s ease}.lesson-progress-label{color:var(--text-muted);font-family:var(--font-display);font-size:12px;font-weight:600;min-width:36px;text-align:right;white-space:nowrap}@media (max-width:700px){.course-shell{flex-direction:column}.course-nav-sidebar{display:none}}.course-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 250px}.lessons-list{display:flex;flex-direction:column;gap:5px}.chapter-group{margin-bottom:8px}.chapter-label{color:var(--text-muted);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:2px;padding:10px 4px 8px;text-transform:uppercase}@keyframes lessonItemIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.lesson-item{align-items:center;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-md);display:flex;font-size:14px;justify-content:space-between;padding:11px 15px;text-align:left;transition:all .15s;width:100%}[data-theme=light] .lesson-item{background:#fff}.lesson-item:not(.locked):hover{border-color:var(--accent);color:var(--accent)}.lesson-item.completed{border-left:3px solid var(--green)}.lesson-item.locked{cursor:not-allowed;opacity:.4}.lesson-item-left{align-items:center;display:flex;gap:10px}.lesson-done-chip{background:#15803d1a;border-radius:3px;color:var(--green);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:1px;padding:2px 8px;text-transform:uppercase}.lesson-locked-chip{color:var(--text-muted);font-family:var(--font-display);font-size:11px}.lesson-content{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);font-size:15px;font-size:var(--lesson-font-size,15px);margin-bottom:24px;padding:32px}[data-theme=light] .lesson-content{background:#fff}.lesson-actions,.lesson-done-row{align-items:center;display:flex;gap:12px}.lesson-done-row{flex-wrap:wrap}.done-chip{align-items:center;background:#15803d1a;border:1px solid #15803d4d;border-radius:var(--r-md);color:var(--green);display:inline-flex;font-family:var(--font-display);font-size:12px;font-weight:700;gap:4px;letter-spacing:1px;padding:8px 16px;text-transform:uppercase}.course-progress-wrap{align-items:center;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-md);display:flex;gap:14px;margin-bottom:24px;padding:12px 16px}[data-theme=light] .course-progress-wrap{background:#fff}.course-progress-track{background:var(--bg-raised);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.course-progress-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .4s ease}.course-progress-label{color:var(--text-dim);font-family:var(--font-display);font-size:12px;font-weight:600;text-transform:uppercase;white-space:nowrap}.progress-dots-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.pdot{align-items:center;background:var(--bg-raised);border:2px solid var(--border);border-radius:50%;color:var(--text-muted);display:flex;font-family:var(--font-display);font-size:9px;font-weight:700;height:26px;justify-content:center;transition:all .2s;width:26px}.pdot.done{background:#15803d1f;border-color:var(--green);color:var(--green)}.pdot.current{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.seq-badge{align-items:center;background:var(--accent-bg);border:1px solid #00b5b540;border-radius:3px;display:inline-flex;gap:4px;letter-spacing:.5px;padding:2px 10px;text-transform:uppercase}.seq-badge,.seq-badge-sm{color:var(--accent);font-family:var(--font-display);font-size:11px;font-weight:700}.seq-badge-sm{margin-left:4px}.quiz-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:10px;padding:22px}.quiz-card:not(.quiz-card--locked){border-top:3px solid var(--accent)}.quiz-card--locked{opacity:.6}[data-theme=light] .quiz-card{background:#fff}.quiz-card-icon{font-size:26px}.quiz-card h3{color:var(--text);font-family:var(--font-display);font-size:15px;font-weight:700;text-transform:uppercase}[data-theme=light] .quiz-card h3{color:#0e1018}.quiz-card p{color:var(--text-dim);font-size:13px}.quiz-lock-note{color:var(--text-muted);font-size:12px;font-style:italic}.card-progress-wrap{margin:10px 0 4px}.card-progress-track{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.card-progress-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .4s ease}.card-progress-label{color:var(--text-muted);display:block;font-size:11px;letter-spacing:.3px;margin-top:4px}.card-progress-label,.scroll-restored-toast{font-family:var(--font-display);font-weight:700}.scroll-restored-toast{align-items:center;animation:fadeInUp .3s ease;background:var(--accent-bg);border:1px solid var(--accent);border-radius:20px;color:var(--accent);display:inline-flex;font-size:12px;gap:6px;letter-spacing:.5px;margin-top:8px;padding:5px 12px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.course-layout{grid-template-columns:1fr}.lesson-content{padding:18px!important}.stats-row{gap:10px}.stat-block{min-width:calc(50% - 5px);padding:14px 12px}.stat-num{font-size:28px}.stats-row{display:grid;grid-template-columns:1fr 1fr}}@media (max-width:400px){.stat-block{padding:10px 8px}.stat-num{font-size:24px}}.quiz-questions{display:flex;flex-direction:column;gap:22px;max-width:680px}.quiz-question{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);padding:22px}[data-theme=light] .quiz-question{background:#fff}.question-label{color:var(--accent);font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:2px;margin-bottom:8px;text-transform:uppercase}.question-text{color:var(--text);font-size:15px;font-weight:500;line-height:1.5;margin-bottom:16px}[data-theme=light] .question-text{color:#0e1018}.options-list{display:flex;flex-direction:column;gap:7px}.option-btn{align-items:center;border:2px solid var(--border);border-radius:var(--r-md);color:var(--text);display:flex;font-size:14px;gap:12px;padding:11px 15px;text-align:left;transition:all .15s;width:100%}[data-theme=light] .option-btn{background:#fff;border-color:#d4d8e2;color:#0e1018}.option-btn.selected,.option-btn:hover{border-color:var(--accent);color:var(--accent)}.option-btn.selected{background:var(--accent-bg)}.option-letter{align-items:center;background:var(--bg-raised);border-radius:50%;display:flex;flex-shrink:0;font-family:var(--font-display);font-size:12px;font-weight:700;height:26px;justify-content:center;width:26px}[data-theme=light] .option-letter{background:#eaecf0;color:#3a4060}.option-btn.selected .option-letter{background:var(--accent);color:#fff}.quiz-result{align-items:center;display:flex;flex-direction:column;gap:6px;margin:0 auto;max-width:520px;padding:40px 20px;text-align:center}.result-fraction{color:var(--accent);font-size:50px;margin-bottom:8px}.result-fraction,.result-pct{font-family:var(--font-display);font-weight:800}.result-pct{border-radius:4px;display:inline-block;font-size:18px;margin-bottom:14px;padding:4px 16px}.result-pct.pass{background:#15803d1a;color:var(--green)}.result-pct.fail{background:#dc26261a;color:var(--danger)}.result-bar{background:var(--bg-raised);border-radius:4px;height:7px;margin-bottom:18px;overflow:hidden;width:100%}.result-fill{background:var(--accent);border-radius:4px;height:100%;transition:width .6s ease}.quiz-result h2{font-family:var(--font-display);font-size:30px;font-weight:800;letter-spacing:1px;margin-bottom:14px;text-transform:uppercase}.quiz-result p{color:var(--text-dim);margin-bottom:22px}.result-emoji{align-items:center;border-radius:50%;display:flex;font-size:28px;height:72px;justify-content:center;margin:0 auto 16px;width:72px}.result-emoji--pass{background:#00b5b51f;border:2px solid #00b5b559}.result-emoji--pass:after{border-bottom:3.5px solid var(--teal);border-left:3.5px solid var(--teal);content:"";display:block;height:16px;transform:rotate(-45deg) translateY(-4px);width:28px}.result-emoji--fail{background:#dc262614;border:2px solid #dc262640}.result-emoji--fail:after,.result-emoji--fail:before{background:var(--danger);border-radius:2px;content:"";display:block;height:3px;position:absolute;width:26px}.result-emoji--fail{position:relative}.result-emoji--fail:before{transform:rotate(45deg)}.result-emoji--fail:after{transform:rotate(-45deg)}.result-emoji--wait{align-items:center;background:#b453091a;border:2px solid #b4530940;display:flex;font-size:28px;justify-content:center}.sequential-toggle{padding:10px 0}.toggle-label{align-items:flex-start;cursor:pointer;display:flex;gap:12px}.toggle-label strong{color:var(--text);display:block;font-family:var(--font-display);font-size:13px;letter-spacing:.5px;margin-bottom:3px;text-transform:uppercase}[data-theme=light] .toggle-label strong{color:#0e1018}.toggle-label span{color:var(--text-dim);font-size:12px}.toggle-switch{background:var(--bg-raised);border:1.5px solid var(--border-hi);border-radius:11px;cursor:pointer;flex-shrink:0;height:22px;margin-top:2px;position:relative;transition:all .22s;width:40px}.toggle-switch.on{background:var(--accent);border-color:var(--accent)}.toggle-knob{background:#fff;border-radius:50%;box-shadow:0 1px 4px #00000040;height:15px;left:2px;position:absolute;top:2px;transition:all .22s;width:15px}.toggle-switch.on .toggle-knob{left:20px}.block-editor{gap:10px}.block-editor,.block-list{display:flex;flex-direction:column}.block-list{gap:7px}.block-item{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-md);overflow:hidden}[data-theme=light] .block-item{background:#fff}.block-item--heading{border-left:3px solid var(--accent)}.block-controls{align-items:center;background:var(--bg-raised);border-bottom:1px solid var(--border);display:flex;gap:6px;padding:6px 10px}[data-theme=light] .block-controls{background:#f0f2f7}.block-ctrl-btn{align-items:center;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-dim);display:flex;font-size:11px;height:24px;justify-content:center;transition:all .15s;width:24px}.block-ctrl-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.block-ctrl-btn:disabled{cursor:not-allowed;opacity:.3}.block-ctrl-btn.danger:hover{background:#dc26261a;border-color:#dc26264d;color:var(--danger)}.block-type-badge{color:var(--text-muted);flex:1 1;font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.block-content{display:flex;flex-direction:column;gap:10px;padding:12px 14px}.block-textarea{background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:14px;line-height:1.7;min-height:80px;outline:none;padding:10px 12px;resize:vertical;transition:border-color .15s;width:100%}.block-textarea:focus{border-color:var(--accent)}[data-theme=light] .block-textarea{background:#fff;color:#0e1018}.block-heading-input{background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--r-md);color:var(--text);font-family:var(--font-display);font-size:15px;font-weight:600;outline:none;padding:9px 12px;transition:border-color .15s;width:100%}.block-heading-input:focus{border-color:var(--accent)}[data-theme=light] .block-heading-input{background:#fff;color:#0e1018}.block-heading-preview{background:var(--bg-raised);border:1.5px dashed var(--border-hi);border-radius:var(--r-md);color:var(--text);font-family:var(--font-display);font-weight:700;padding:8px 12px}.block-heading-preview[data-level="1"]{font-size:24px}.block-heading-preview[data-level="2"]{font-size:19px}.block-heading-preview[data-level="3"]{color:var(--text-dim);font-size:14px}.block-preview{align-items:center;background:var(--bg-raised);border-radius:var(--r-md);display:flex;justify-content:center;max-height:260px;overflow:hidden}.block-preview img{display:block;max-height:260px;max-width:100%;object-fit:contain}.block-hint{color:var(--text-muted);font-size:12px;font-style:italic}.block-add-bar{align-items:center;background:var(--bg-raised);border:1.5px dashed var(--border-hi);border-radius:var(--r-md);display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}[data-theme=light] .block-add-bar{background:#f0f2f7}.block-add-label{color:var(--text-muted);letter-spacing:1px;margin-right:4px}.block-add-btn,.block-add-label{font-family:var(--font-display);font-size:11px;font-weight:700;text-transform:uppercase}.block-add-btn{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-sm);color:var(--text-dim);cursor:pointer;letter-spacing:.5px;padding:5px 11px;transition:all .15s}[data-theme=light] .block-add-btn{background:#fff}.block-add-btn:hover{border-color:var(--accent);color:var(--accent)}.block-renderer{display:flex;flex-direction:column;gap:18px}.render-heading{border-bottom:2px solid var(--border);padding:4px 0 10px}.render-heading--h1 h1{font-size:28px;font-weight:800}.render-heading--h1 h1,.render-heading--h2 h2{color:var(--text);font-family:var(--font-display)}.render-heading--h2 h2{font-size:21px;font-weight:700}.render-heading--h3 h3{color:var(--text-dim);font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.render-heading--h1 h1:before,.render-heading--h2 h2:before{background:var(--accent);border-radius:2px;content:"";display:inline-block;height:.8em;margin-right:10px;vertical-align:middle;width:4px}[data-theme=light] .render-heading--h1 h1,[data-theme=light] .render-heading--h2 h2{color:#0e1018}.render-text p{color:var(--text);font-size:15px;line-height:1.8;margin-bottom:10px}[data-theme=light] .render-text p{color:#0e1018}.render-text p:last-child{margin-bottom:0}.cfmoto-link,.render-text a.cfmoto-link{color:var(--accent)!important;cursor:pointer;font-weight:600;text-decoration:underline!important;text-decoration-thickness:2px;text-underline-offset:3px;transition:opacity .15s,text-decoration-thickness .15s;word-break:break-word}.cfmoto-link:hover,.render-text a.cfmoto-link:hover{opacity:.88;text-decoration-thickness:3px}.render-image{text-align:center}.render-image img{display:inline-block;max-width:100%}.render-image img,.render-image-frame{border-radius:var(--r-lg);box-shadow:var(--shadow)}.render-image-frame{align-items:center;background:var(--bg-card);border:1px solid var(--border);display:flex;justify-content:center;overflow:hidden}.render-image-frame img{border-radius:0;box-shadow:none;display:block;height:auto;max-height:100%;max-width:100%;object-fit:contain;width:auto}.render-video .video-embed-wrap{aspect-ratio:16/9;background:#000;border-radius:var(--r-lg);box-shadow:var(--shadow);margin:0 auto;max-width:900px;overflow:hidden}.render-video .video-embed-wrap iframe,.render-video .video-embed-wrap video{background:#000;border:0;display:block;height:100%;object-fit:contain;width:100%}.render-caption{color:var(--text-muted);font-size:12px;font-style:italic;margin-top:5px;text-align:center}.render-divider{border:none;border-top:1px solid var(--border);margin:4px 0}@media (max-width:768px){.quiz-result{padding:24px 12px}.option-btn{width:100%}.form-row{flex-direction:column;gap:0}.tab-bar,.table-wrap{-webkit-overflow-scrolling:touch}.tab-bar{padding-bottom:4px}.data-table{min-width:480px}.tab-bar{flex-wrap:nowrap;overflow-x:auto}.tab-btn{flex-shrink:0}}.modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:300}.modal{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:80vh;max-width:540px;width:100%}[data-theme=light] .modal{background:#fff}.modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:14px 18px}.modal-header h3{font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.modal-close{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:50%;color:var(--text-dim);display:flex;font-size:12px;height:26px;justify-content:center;width:26px}.modal-body{display:flex;flex-direction:column;gap:9px;overflow-y:auto;padding:14px 18px}.answer-row{border:1.5px solid var(--border);border-radius:var(--r-md);padding:11px 13px}.answer-row.correct{background:#15803d0a;border-color:#15803d4d}.answer-row.wrong{background:#dc26260a;border-color:#dc26264d}.answer-q{color:var(--text);font-size:13px;font-weight:600;margin-bottom:5px}[data-theme=light] .answer-q{color:#0e1018}.answer-detail{align-items:center;color:var(--text-dim);display:flex;flex-wrap:wrap;font-size:13px;gap:10px}.correct-ans{color:var(--green)}.hotspot-canvas-wrap{border:1.5px solid var(--border);max-width:100%}.hotspot-viewer-wrap{border-radius:var(--r-md);overflow:hidden}.hotspot-question{margin-bottom:10px;padding:10px 14px}.hotspot-feedback{margin-top:8px;padding:10px 14px;text-align:center}.hotspot-feedback.correct{background:#22c55e1f;border:1.5px solid #22c55e66}.hotspot-feedback.wrong{background:#ef44441a;border:1.5px solid #ef44444d}.active-shape{background:var(--accent-bg)!important;border-color:var(--accent)!important;color:var(--accent)!important}.hotspot-editor-wrap{margin-top:12px}.hotspot-editor-toolbar{align-items:center;border:1px solid var(--border);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;padding:8px 12px}.hotspot-canvas-wrap,.hotspot-editor-toolbar{background:var(--bg-raised);border-radius:var(--r-md)}.hotspot-canvas-wrap{border:2px solid var(--border);overflow:hidden;position:relative;transition:border-color .15s;-webkit-user-select:none;user-select:none}.hotspot-canvas-wrap:hover{border-color:var(--accent)}.hotspot-canvas-wrap.hotspot-miss{animation:missShake .35s ease;border-color:var(--danger)!important}@keyframes missShake{0%,to{transform:translateX(0)}20%{transform:translateX(-5px)}60%{transform:translateX(5px)}}.hotspot-svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}.hotspot-zone-list{margin-top:12px}.hotspot-zone-row{align-items:center;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--r-md);display:flex;gap:8px;margin-bottom:4px;padding:6px 10px}.hotspot-zone-shape{color:var(--accent);flex-shrink:0;font-size:16px;text-align:center;width:20px}.hotspot-viewer-wrap{max-width:720px}.hotspot-question{background:var(--accent-bg);border:1.5px solid var(--accent);color:var(--text);font-family:var(--font-display);font-size:15px;font-weight:700;margin-bottom:12px}.hotspot-feedback,.hotspot-question{border-radius:var(--r-md);padding:10px 16px}.hotspot-feedback{align-items:center;display:flex;flex-wrap:wrap;font-size:14px;font-weight:600;gap:6px;margin-top:10px}.hotspot-feedback.correct{background:#22c55e1a;border:1.5px solid #22c55e59;color:var(--green)}.hotspot-feedback.wrong{background:#dc262614;border:1.5px solid #dc262640;color:var(--danger)}.notif-badge{background:var(--accent);border-radius:50%;color:#fff;font-size:9px;height:16px;justify-content:center;position:absolute;right:-3px;top:-3px;width:16px}.notif-badge,.notif-header{align-items:center;display:flex;font-weight:700}.notif-header{border-bottom:1px solid var(--border);font-family:var(--font-display);font-size:13px;justify-content:space-between;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.notif-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;width:24px}.notif-close:hover{background:var(--bg-raised);color:var(--text)}.notif-list{overflow-y:auto}.notif-empty{color:var(--text-muted);font-size:13px;padding:28px 16px;text-align:center}.notif-item{align-items:flex-start;border-bottom:1px solid var(--border);display:flex;gap:10px;max-height:200px;overflow:hidden;padding:12px 16px;transition:background .1s,opacity .28s ease,transform .28s ease,max-height .28s ease,padding .28s ease}.notif-item.unread{background:var(--accent-bg)}.notif-item:last-child{border-bottom:none}.notif-item.notif-removing{max-height:0;opacity:0;padding-bottom:0;padding-top:0;transform:translateX(40px)}.notif-icon{flex-shrink:0;font-size:18px;margin-top:1px}.notif-body{flex:1 1;min-width:0}.notif-title{color:var(--text);font-size:13px;font-weight:600;line-height:1.3}.notif-text{color:var(--text-muted);font-size:12px;line-height:1.4;margin-top:3px;white-space:pre-line}.notif-date{margin-top:5px}.notif-date,.notif-del{color:var(--text-muted);font-size:11px}.notif-del{background:none;border:none;border-radius:4px;cursor:pointer;flex-shrink:0;padding:2px 4px}.notif-del:hover{background:#dc26260f;color:var(--danger)}@keyframes notifDropIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes notifDropOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.97)}}.notif-dropdown{animation:notifDropIn .18s cubic-bezier(.25,.46,.45,.94) both;background:var(--bg-card);border:1.5px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0003;position:absolute;right:0;top:calc(100% + 8px);transform-origin:top right;width:340px;z-index:300}.notif-dropdown.notif-dropdown-closing{animation:notifDropOut .22s cubic-bezier(.25,.46,.45,.94) forwards}.notif-dropdown .notif-list{max-height:360px}.notif-sheet-overlay{display:none}.search-hero{padding:12px 0 24px}.search-hero-input-wrap{align-items:center;background:var(--bg-card);border:2px solid var(--border);border-radius:12px;display:flex;padding:0 16px;position:relative;transition:border-color .15s}.search-hero-input-wrap:focus-within{border-color:var(--accent)}.search-hero-icon{flex-shrink:0;font-size:18px;margin-right:10px}.search-hero-input{background:none;border:none;color:var(--text);flex:1 1;font-family:var(--font-body);font-size:16px;outline:none;padding:14px 0}.search-clear-btn,.search-hero-input::placeholder{color:var(--text-muted)}.search-clear-btn{background:none;border:none;border-radius:6px;cursor:pointer;flex-shrink:0;font-size:14px;padding:4px 8px}.search-clear-btn:hover{background:var(--bg-raised);color:var(--text)}.search-results-list{display:flex;flex-direction:column;gap:6px}.search-result-item{align-items:center;background:var(--bg-card);border:1.5px solid var(--border);border-left:3px solid #0000;border-radius:10px;cursor:default;display:flex;gap:14px;padding:14px 16px;transition:border-color .15s,background .15s,transform .12s,box-shadow .15s}[data-theme=light] .search-result-item{background:#fff}.search-result-item:hover{border-color:var(--accent)}.search-result-clickable{cursor:pointer;text-align:left;width:100%}.search-result-clickable:hover{background:var(--accent-bg);border-color:var(--accent);border-left-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateX(3px)}.search-result-icon{font-size:20px;margin-top:1px}.search-result-title{color:var(--text);font-family:var(--font-display);font-size:14px;font-weight:700;letter-spacing:.3px;margin-bottom:3px}.search-result-sub{color:var(--text-muted);font-size:12px}.search-result-arrow{color:var(--accent);flex-shrink:0;font-size:16px;margin-left:auto;opacity:0;transition:opacity .15s,transform .15s}.search-result-clickable:hover .search-result-arrow{opacity:1;transform:translateX(3px)}.search-result-icon{align-items:center;border-radius:6px;display:flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.search-result-icon--course{background:#00b5b51a;border:1px solid #00b5b540}.search-result-icon--course:after{border:2px solid var(--teal);border-radius:2px;content:"";display:block;height:14px;width:14px}.search-result-icon--lesson{background:#64748b1a;border:1px solid var(--border)}.search-result-icon--lesson:after{border-bottom:2px solid var(--text-muted);border-left:2px solid var(--text-muted);content:"";display:block;height:10px;margin-top:-2px;width:12px}.stat-chart-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:10px;margin-bottom:20px;padding:20px}.stat-chart-title{color:var(--text-muted);font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.8px;margin-bottom:16px;text-transform:uppercase}.stat-chart-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.stat-chart-label{color:var(--text-dim);flex-shrink:0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:160px}.stat-chart-bar-wrap{background:var(--bg-raised);border-radius:4px;flex:1 1;height:20px;overflow:hidden}.stat-chart-bar{background:var(--accent);border-radius:4px;height:100%;min-width:2px;transition:width .5s cubic-bezier(.4,0,.2,1)}.stat-chart-val{color:var(--text);flex-shrink:0;font-family:var(--font-display);font-size:13px;font-weight:700;text-align:right;width:70px}.activity-chart{align-items:flex-end;display:flex;gap:3px;height:100px;overflow-x:auto;padding-top:8px}.activity-bar-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:4px;height:100%;justify-content:flex-end;min-width:24px}.activity-bar-fill{background:var(--accent);border-radius:2px 2px 0 0;min-height:2px;opacity:.85;transition:height .4s ease;width:100%}.activity-bar-label{color:var(--text-muted);font-family:var(--font-display);font-size:9px;font-weight:700;white-space:nowrap}@media (max-width:768px){.modal{border-radius:var(--r-lg) var(--r-lg) 0 0;bottom:0;left:0;margin:0;max-height:92dvh;max-width:100%;position:fixed;right:0;width:100%}.modal-overlay{align-items:flex-end;padding:0}.notif-dropdown{display:none!important}.notif-sheet-overlay{animation:fadeIn .2s ease;background:#0000008c;display:block;inset:0;position:fixed;z-index:400}.notif-sheet-overlay.notif-sheet-overlay-closing{animation:fadeOut .28s ease forwards}.notif-sheet{animation:slideUp .28s cubic-bezier(.32,.72,0,1);background:var(--bg-card);border-radius:18px 18px 0 0;bottom:0;display:flex;flex-direction:column;left:0;max-height:75vh;position:absolute;right:0}.notif-sheet.notif-sheet-closing{animation:slideDown .28s cubic-bezier(.32,.72,0,1) forwards}[data-theme=light] .notif-sheet{background:#fff}.notif-sheet-handle{background:var(--border);border-radius:2px;flex-shrink:0;height:4px;margin:10px auto 2px;width:40px}.notif-sheet .notif-list{max-height:60vh;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.stat-chart-label{width:100px}.stat-chart-val{font-size:12px;width:55px}iframe,img,video{max-width:100%}}:root{--banner-red:#e74c3c;--banner-orange:#f39c12;--banner-turquoise:#00b5b5;--banner-blue:#3498db}.cfmoto-banner{align-items:flex-start;background:var(--bg-card);border:1.5px solid var(--_banner-accent,var(--border));border-left-width:5px;border-radius:12px;box-shadow:0 2px 8px #0000000a;box-shadow:0 2px 8px var(--_banner-shadow,#0000000a);display:flex;gap:14px;margin:14px 0;position:relative}.cfmoto-banner--red{--_banner-accent:var(--banner-red);--_banner-shadow:#e74c3c0f;--_banner-tint:#e74c3c14}.cfmoto-banner--orange{--_banner-accent:var(--banner-orange);--_banner-shadow:#f39c120f;--_banner-tint:#f39c1214}.cfmoto-banner--turquoise{--_banner-accent:var(--banner-turquoise);--_banner-shadow:#00b5b50f;--_banner-tint:#00b5b514}.cfmoto-banner--blue{--_banner-accent:var(--banner-blue);--_banner-shadow:#3498db0f;--_banner-tint:#3498db14}.cfmoto-banner:before{background:var(--_banner-tint);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.cfmoto-banner>*{position:relative;z-index:1}.cfmoto-banner--small{font-size:13px;padding:10px 14px}.cfmoto-banner--medium{font-size:15px;padding:16px 20px}.cfmoto-banner--large{font-size:17px;padding:24px 28px}.cfmoto-banner__icon{align-items:center;background:var(--_banner-accent);border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-family:serif;font-family:var(--font-display,serif);font-weight:800;height:2em;justify-content:center;line-height:1;width:2em}.cfmoto-banner--small .cfmoto-banner__icon{font-size:.9em;height:1.7em;width:1.7em}.cfmoto-banner--large .cfmoto-banner__icon{font-size:1.1em;height:2.3em;width:2.3em}.cfmoto-banner__body{flex:1 1;min-width:0}.cfmoto-banner__title{color:var(--_banner-accent);font-family:inherit;font-family:var(--font-display,inherit);font-weight:800;letter-spacing:.2px;margin-bottom:6px}.cfmoto-banner--small .cfmoto-banner__title{font-size:13px}.cfmoto-banner--medium .cfmoto-banner__title{font-size:16px}.cfmoto-banner--large .cfmoto-banner__title{font-size:20px}.cfmoto-banner__text{color:var(--text);line-height:1.55;word-break:break-word}.cfmoto-banner__btn{display:inline-flex;margin-top:10px}.cfmoto-banner--btn-left .cfmoto-banner__btn-wrap{justify-content:flex-start}.cfmoto-banner--btn-center .cfmoto-banner__btn-wrap{justify-content:center}.cfmoto-banner--btn-right .cfmoto-banner__btn-wrap{justify-content:flex-end}.cfmoto-banner__btn-wrap{display:flex;margin-top:10px}.cfmoto-banner--btn-inline{align-items:center}.cfmoto-banner--btn-inline .cfmoto-banner__btn-wrap{flex-shrink:0;margin-left:auto;margin-top:0;padding-left:12px}.cfmoto-content-btn{align-items:center;background:#3498db;background:var(--_btn-bg,var(--banner-blue));border:none;border-radius:8px;box-shadow:0 2px 6px #3498db1f;box-shadow:0 2px 6px var(--_btn-shadow,#3498db1f);color:#fff!important;cursor:pointer;display:inline-flex;font-family:inherit;font-family:var(--font-display,inherit);font-weight:700;gap:8px;justify-content:center;letter-spacing:.3px;text-decoration:none!important;transition:transform .12s ease,filter .12s ease}.cfmoto-content-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}.cfmoto-content-btn:active{transform:translateY(0)}.cfmoto-content-btn--red{--_btn-bg:var(--banner-red);--_btn-shadow:#e74c3c1f}.cfmoto-content-btn--orange{--_btn-bg:var(--banner-orange);--_btn-shadow:#f39c121f}.cfmoto-content-btn--turquoise{--_btn-bg:var(--banner-turquoise);--_btn-shadow:#00b5b51f}.cfmoto-content-btn--blue{--_btn-bg:var(--banner-blue);--_btn-shadow:#3498db1f}.cfmoto-content-btn--small{font-size:12px;padding:7px 14px}.cfmoto-content-btn--medium{font-size:14px;padding:10px 22px}.cfmoto-content-btn--large{font-size:16px;padding:14px 30px}.render-button-block{display:flex;margin:14px 0}.render-button-block--left{justify-content:flex-start}.render-button-block--center{justify-content:center}.render-button-block--right{justify-content:flex-end}html[data-theme=dark] .cfmoto-banner--red{--_banner-tint:#e74c3c1f}html[data-theme=dark] .cfmoto-banner--orange{--_banner-tint:#f39c121f}html[data-theme=dark] .cfmoto-banner--turquoise{--_banner-tint:#00b5b524}html[data-theme=dark] .cfmoto-banner--blue{--_banner-tint:#3498db1f}@media (max-width:640px){.cfmoto-banner--large{font-size:15px;padding:18px 20px}.cfmoto-banner--medium{font-size:14px;padding:14px 16px}.cfmoto-banner{gap:10px}.cfmoto-banner--btn-inline{flex-wrap:wrap}.cfmoto-banner--btn-inline .cfmoto-banner__btn-wrap{margin-left:0;margin-top:10px;padding-left:0;width:100%}}