.bottom-nav{display:none}@media (max-width: 768px){.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--header-bg);border-top:1px solid var(--border);z-index:100;padding:0;align-items:center;justify-content:space-around;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding-bottom:env(safe-area-inset-bottom,0)}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.4rem .25rem;text-decoration:none;color:var(--text-secondary);transition:color .2s ease;min-width:0}.bottom-nav-item:hover,.bottom-nav-item.active{color:var(--text-primary)}.bottom-nav-item.active .bottom-nav-icon{color:var(--accent)}.bottom-nav-icon{flex-shrink:0;color:inherit}.bottom-nav-label{font-size:.7rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}}.header{border-bottom:1px solid var(--border);background:var(--header-bg);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-container{max-width:1200px;margin:0 auto;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:var(--text-primary);text-decoration:none;transition:opacity .2s ease}.logo:hover{opacity:.7}.nav{display:flex;gap:2.5rem}.nav-link{color:var(--text-secondary);text-decoration:none;font-size:.95rem;transition:color .2s ease;position:relative}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.nav-link.active:after{content:"";position:absolute;left:0;bottom:-.35rem;width:100%;height:2px;border-radius:999px;background:var(--text-primary)}.btn-primary{background:var(--text-primary);color:var(--background);border:none;padding:.6rem 1.5rem;font-size:.95rem;cursor:pointer;transition:opacity .2s ease;border-radius:4px}.btn-primary:hover{opacity:.8}.header-user{display:flex;align-items:center;gap:.75rem}.theme-toggle{padding:.45rem .9rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .05s ease}.theme-toggle:hover{background:var(--background);color:var(--text-primary);border-color:var(--text-primary);box-shadow:0 0 0 1px #94a3b866}.theme-toggle:active{transform:translateY(1px);box-shadow:none}.header-profile{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--text-primary);padding:.5rem 1rem;border-radius:8px;transition:background .2s ease}.header-profile:hover{background:var(--surface)}.header-profile.active{background:var(--surface);box-shadow:0 0 0 1px #94a3b899}.header-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--text-primary);color:var(--background);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.header-name{font-size:.95rem;font-weight:500}@media (max-width: 768px){.nav{display:none}.header-container{padding:1rem 1.5rem}.header-name{display:none}.header-profile{padding:.5rem}}.hero{padding:8rem 2rem;text-align:center;background:var(--background)}.hero-container{max-width:800px;margin:0 auto}.hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:600;letter-spacing:-.03em;line-height:1.1;margin-bottom:1.5rem;color:var(--text-primary)}.hero-subtitle{font-size:clamp(1rem,2vw,1.25rem);color:var(--text-secondary);line-height:1.7;margin-bottom:3rem}.hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn-hero-cta{display:inline-block;background:#000;color:#fff;border:none;padding:1rem 2rem;font-size:1rem;font-weight:500;text-decoration:none;border-radius:4px;cursor:pointer;transition:opacity .2s ease,background .2s ease}.btn-hero-cta:hover{opacity:.9}.theme-dark .btn-hero-cta{background:#fff;color:#000}.theme-dark .btn-hero-cta:hover{opacity:.9}@media (max-width: 768px){.hero{padding:5rem 1.5rem}.hero-actions{flex-direction:column}.btn-hero-cta{width:100%;text-align:center}}.course-card{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:2rem;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.course-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.course-card-header{margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.course-level{display:inline-block;padding:.4rem .8rem;background:var(--surface);color:var(--text-secondary);font-size:.85rem;border-radius:4px;font-weight:500}.course-ai-badge{display:inline-block;padding:.35rem .7rem;border-radius:999px;background:#38bdf81a;border:1px solid rgba(56,189,248,.45);color:var(--accent);font-size:.8rem;font-weight:600}.course-card-content{flex:1;margin-bottom:1.5rem}.course-card-title{font-size:1.5rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary);letter-spacing:-.01em}.course-card-description{color:var(--text-secondary);line-height:1.6;margin-bottom:1.25rem;font-size:.95rem}.course-card-meta{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary)}.course-meta-separator{color:var(--border)}.course-views-icon{display:inline-block;vertical-align:-.25em;flex-shrink:0}.course-card-footer{margin-top:auto}.course-card-button{width:100%;background:transparent;color:var(--text-primary);border:1px solid var(--border);padding:.75rem 1.5rem;font-size:.95rem;cursor:pointer;transition:background .2s ease,border-color .2s ease;border-radius:4px;font-weight:500;text-decoration:none;display:block;text-align:center}.course-card-button:hover{background:var(--surface);border-color:var(--text-primary)}.search-filters{margin-bottom:3rem;display:flex;flex-direction:row;gap:1.5rem;align-items:center;flex-wrap:wrap}.search-wrapper{position:relative;flex:1;max-width:none}.search-input{width:100%;padding:.875rem 1rem .875rem 3.5rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--background);color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease}.search-input:focus{outline:none;border-color:var(--text-primary);box-shadow:0 0 0 3px #0000000d}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.filters-wrapper{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.filter-select{padding:.875rem 2.5rem .875rem 1.25rem;border:1px solid var(--border);border-radius:8px;font-size:.95rem;background:var(--background);color:var(--text-primary);cursor:pointer;transition:border-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}.filter-select:focus{outline:none;border-color:var(--text-primary)}.clear-filters-btn{padding:.875rem 1.5rem;background:transparent;border:1px solid var(--border);border-radius:8px;font-size:.95rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.clear-filters-btn:hover{background:var(--surface);color:var(--text-primary);border-color:var(--text-primary)}@media (max-width: 768px){.search-filters{flex-direction:column;align-items:stretch}.search-wrapper{max-width:100%}.filters-wrapper{flex-direction:column;align-items:stretch}.filter-select,.clear-filters-btn{width:100%}}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.75rem 0;border-top:1px solid var(--border)}.pagination-info{font-size:.9rem;color:var(--text-secondary)}.pagination-controls{display:flex;align-items:center;gap:1rem}.pagination-current{font-size:.9rem;color:var(--text-secondary)}.pagination-btn{min-width:2.25rem;height:2.25rem;padding:0;font-size:1rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--accent);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .05s ease}.pagination-btn:hover:not(:disabled){background:var(--background);border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 1px #38bdf866}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media (max-width: 640px){.pagination{flex-direction:column;align-items:stretch}.pagination-controls{justify-content:center}}.courses{padding:6rem 2rem;background:var(--surface)}.courses-container{max-width:1200px;margin:0 auto}.courses-header{text-align:center;margin-bottom:4rem}.courses-title{font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:-.02em;margin-bottom:1rem;color:var(--text-primary)}.courses-subtitle{font-size:1.1rem;color:var(--text-secondary)}@media (max-width: 768px){.courses{padding:4rem 1.5rem}.courses-grid{grid-template-columns:1fr}}.recommended-posts{padding:4rem 2rem;background:var(--background)}.recommended-posts-container{max-width:1200px;margin:0 auto}.recommended-posts-header{text-align:center;margin-bottom:2.5rem}.recommended-posts-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:600;letter-spacing:-.02em;margin-bottom:.5rem;color:var(--text-primary)}.recommended-posts-subtitle{font-size:1rem;color:var(--text-secondary)}.recommended-posts-grid{list-style:none;padding:0;margin:0 0 2rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.recommended-post-card{border-radius:12px;border:1px solid var(--border);background:var(--surface);overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease}.recommended-post-card:hover{box-shadow:0 8px 24px #0000000f;border-color:var(--text-primary)}.recommended-post-card-inner{padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;height:100%}.recommended-post-channel{font-size:.8rem;color:var(--text-secondary);text-decoration:none;display:inline-block;margin-bottom:.25rem}.recommended-post-channel:hover{color:var(--accent)}.recommended-post-title{font-size:1.1rem;font-weight:600;margin:0;color:var(--text-primary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recommended-post-title-link{color:inherit;text-decoration:none}.recommended-post-title-link:hover{text-decoration:underline}.recommended-post-category{font-size:.75rem;color:var(--text-secondary);padding:.2rem .5rem;border-radius:999px;background:var(--background);border:1px solid var(--border);align-self:flex-start}.recommended-post-excerpt{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recommended-post-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--border)}.recommended-post-views{font-size:.85rem;color:var(--text-secondary);display:inline-flex;align-items:center;gap:.25rem}.recommended-post-views-icon{flex-shrink:0;vertical-align:middle}.recommended-post-read{font-size:.9rem;font-weight:500;color:var(--text-primary);text-decoration:none}.recommended-post-read:hover{color:var(--accent)}.recommended-posts-loading,.recommended-posts-empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.recommended-posts-link{display:inline-block;margin-top:1rem;color:var(--text-primary);font-weight:500;text-decoration:none}.recommended-posts-link:hover{color:var(--accent)}.recommended-posts .pagination{margin-top:1rem}@media (max-width: 768px){.recommended-posts{padding:3rem 1.5rem}.recommended-posts-grid{grid-template-columns:1fr}}.footer{margin-top:auto;border-top:1px solid var(--border);background:var(--background);padding:4rem 2rem 2rem}.footer-container{max-width:1200px;margin:0 auto}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem;margin-bottom:3rem}.footer-section{display:flex;flex-direction:column}.footer-title{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.footer-text{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.footer-links{list-style:none;display:flex;flex-direction:column;gap:.75rem}.footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color .2s ease}.footer-links a:hover{color:var(--text-primary)}.footer-bottom{padding-top:2rem;border-top:1px solid var(--border);text-align:center}.footer-copyright{color:var(--text-secondary);font-size:.9rem}@media (max-width: 768px){.footer{padding:3rem 1.5rem 1.5rem}.footer-content{grid-template-columns:1fr;gap:2rem}}.about-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.about-container{max-width:960px;margin:0 auto}.about-hero{margin-bottom:2.5rem}.about-title{font-size:clamp(2.2rem,4vw,2.7rem);font-weight:600;letter-spacing:-.02em;margin-bottom:1rem;color:var(--text-primary)}.about-subtitle{font-size:1.05rem;line-height:1.7;color:var(--text-secondary)}.about-section{margin-bottom:2.5rem}.about-section-title{font-size:1.4rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.about-section p{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin-bottom:.75rem}.about-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr);gap:2rem}.about-card{background:var(--surface);border-radius:12px;border:1px solid var(--border);padding:1.75rem 1.5rem}.about-list{margin:.5rem 0 0;padding-left:1.2rem;color:var(--text-secondary);line-height:1.7}.about-list li+li{margin-top:.35rem}.about-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem}.about-feature{background:var(--surface);border-radius:12px;border:1px solid var(--border);padding:1.5rem 1.4rem}.about-feature h3{font-size:1.05rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.about-feature p{margin:0}.about-steps{margin:.5rem 0 0;padding-left:1.2rem;color:var(--text-secondary);line-height:1.7}.about-steps li+li{margin-top:.35rem}.about-support{margin-top:2.5rem;padding:2.25rem 2rem;border-radius:16px;background:linear-gradient(135deg,#e0f2fe,#bae6fd,#7dd3fc);border:1px solid rgba(14,165,233,.3);text-align:center}.theme-dark .about-support{background:linear-gradient(135deg,#0c4a6e,#075985,#0369a1);border-color:#38bdf859}.about-support-title{font-size:1.5rem;font-weight:600;margin-bottom:.75rem;color:#0c4a6e}.theme-dark .about-support-title{color:#e0f2fe}.about-support-text{font-size:1rem;line-height:1.65;color:#075985;margin:0 auto 1.5rem;max-width:480px}.theme-dark .about-support-text{color:#bae6fd}.about-support-btn{display:inline-block;padding:.9rem 2rem;font-size:1.05rem;font-weight:600;color:#fff;background:#2563eb;border:none;border-radius:10px;text-decoration:none;transition:background .2s ease,transform .05s ease;box-shadow:0 4px 14px #2563eb66}.about-support-btn:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 18px #2563eb73}.about-support-btn:active{transform:translateY(0)}@media (max-width: 768px){.about-page{padding:1.5rem}.about-grid{grid-template-columns:1fr}.about-support{padding:1.75rem 1.25rem}.about-support-title{font-size:1.35rem}}.comment{padding:1.25rem;border-bottom:1px solid var(--border)}.comment:last-child{border-bottom:none}.comment-header{margin-bottom:.75rem}.comment-author{display:flex;align-items:center;gap:.75rem}.comment-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--text-primary);color:var(--background);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.95rem;flex-shrink:0}.comment-author-info{display:flex;flex-direction:column;gap:.25rem}.comment-author-name{font-weight:500;color:var(--text-primary);font-size:.95rem}.comment-date{font-size:.85rem;color:var(--text-secondary)}.comment-body{margin-left:3.25rem}.comment-body p{color:var(--text-secondary);line-height:1.6;font-size:.95rem;margin:0}@media (max-width: 768px){.comment{padding:1rem}.comment-body{margin-left:0;margin-top:.5rem}}.comment-form{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.comment-form-header{margin-bottom:1rem}.comment-form-author{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:.95rem;background:var(--background);color:var(--text-primary);transition:border-color .2s ease}.comment-form-author:focus{outline:none;border-color:var(--text-primary)}.comment-form-body{margin-bottom:1rem}.comment-form-textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:.95rem;font-family:inherit;background:var(--background);color:var(--text-primary);resize:vertical;transition:border-color .2s ease;line-height:1.6}.comment-form-textarea:focus{outline:none;border-color:var(--text-primary)}.comment-form-footer{display:flex;justify-content:flex-end}.comment-form-submit{background:var(--text-primary);color:var(--background);border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;border-radius:8px;cursor:pointer;transition:opacity .2s ease}.comment-form-submit:hover{opacity:.8}@media (max-width: 768px){.comment-form{padding:1.25rem}}.comments-list{margin-top:3rem}.comments-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary);letter-spacing:-.01em}.comments-container{background:var(--background);border:1px solid var(--border);border-radius:12px;overflow:hidden}.comments-empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:12px}.comments-empty p{font-size:1rem;margin:0}.comments-loading{text-align:center;padding:1.5rem;color:var(--text-secondary)}.blog-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.blog-container{max-width:960px;margin:0 auto;width:100%;min-width:0}.blog-header{margin-bottom:2.5rem}.blog-title{font-size:clamp(2rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin-bottom:.75rem;color:var(--text-primary)}.blog-subtitle{font-size:1rem;color:var(--text-secondary);line-height:1.7}.blog-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:2rem;align-items:flex-start;min-width:0}.blog-layout.channel-layout{grid-template-columns:minmax(0,1fr);max-width:calc(700px - 2rem);margin:0 auto;width:100%}.blog-sidebar{position:sticky;top:5.5rem}.blog-sidebar-card{border-radius:12px;border:1px solid var(--border);background:var(--surface);padding:1.5rem}.blog-sidebar-title{font-size:1.05rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.blog-categories{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.blog-category{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.55rem .9rem;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.blog-category:hover{background:var(--surface);color:var(--text-primary)}.blog-category.active{background:var(--background);color:var(--text-primary);border-color:var(--border)}.blog-category-count{font-size:.8rem;color:var(--text-secondary)}.blog-main{display:flex;flex-direction:column;gap:2rem;min-width:0}.blog-create{padding:2rem;border-radius:12px;background:var(--surface);border:1px solid var(--border);width:100%;min-width:0}.blog-create.blog-create-info{background:var(--surface)}.blog-section-title{font-size:1.3rem;font-weight:600;margin-bottom:1.25rem;color:var(--text-primary)}.blog-error{margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;background:#ef444414;color:#b91c1c;font-size:.9rem}.blog-form{display:flex;flex-direction:column;gap:1.25rem}.blog-form-group{display:flex;flex-direction:column;gap:.5rem}.blog-form-row{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:1.5rem}.blog-label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.blog-input,.blog-textarea{padding:.85rem 1rem;border-radius:8px;border:1px solid var(--border);font-size:.95rem;font-family:inherit;background:var(--background);color:var(--text-primary);transition:border-color .15s ease,box-shadow .15s ease}.blog-input:focus,.blog-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #94a3b84d}.blog-textarea{resize:vertical;min-height:140px}.blog-checkbox{margin-right:.4rem}.blog-select{padding:.8rem 1rem;border-radius:8px;border:1px solid var(--border);font-size:.95rem;background:var(--background);color:var(--text-primary);cursor:pointer}.blog-file-input{font-size:.85rem;color:var(--text-secondary)}.blog-image-preview{margin-top:.5rem;border-radius:8px;overflow:hidden;border:1px solid var(--border)}.blog-image-preview img{display:block;width:100%;height:auto}.blog-image-uploading{font-size:.9rem;color:var(--text-secondary);margin-top:.35rem}.blog-edit-image-note{font-size:.85rem;color:var(--text-secondary);margin-top:.25rem}.blog-form-actions{display:flex;justify-content:flex-end}.blog-submit{background:var(--text-primary);color:var(--background);border:none;padding:.85rem 1.75rem;font-size:.95rem;font-weight:500;border-radius:999px;cursor:pointer;transition:opacity .2s ease,transform .05s ease,box-shadow .2s ease;box-shadow:0 10px 20px #0f172a40}.blog-submit:hover{opacity:.9}.blog-submit:active{transform:translateY(1px);box-shadow:none}.blog-posts{display:flex;flex-direction:column;gap:2rem}.blog-empty{padding:2rem;border-radius:12px;border:1px dashed var(--border);color:var(--text-secondary);text-align:center;font-size:.95rem}.blog-post{border-radius:12px;border:1px solid var(--border);background:var(--surface);overflow:hidden;width:100%;min-width:0}.blog-post-header{padding:1.5rem 1.5rem .75rem}.blog-post-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-wrap:wrap;min-width:0}.blog-post-title{font-size:1.3rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem;overflow-wrap:anywhere}.blog-post-title-link{color:inherit;text-decoration:none}.blog-post-title-link:hover{text-decoration:underline}.blog-post-read-more{margin-top:.5rem;margin-bottom:0}.blog-post-read-more-link{color:var(--text-primary);font-weight:500;text-decoration:none}.blog-post-read-more-link:hover{text-decoration:underline}.blog-post-badges{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;min-width:0}.blog-post-category-chip{padding:.25rem .7rem;border-radius:999px;background:var(--background);border:1px solid var(--border);font-size:.8rem;color:var(--text-secondary);white-space:nowrap}.blog-post-ai-badge{padding:.2rem .6rem;border-radius:999px;background:#38bdf81a;border:1px solid rgba(56,189,248,.4);font-size:.75rem;color:var(--accent);white-space:nowrap}.blog-post-date{font-size:.85rem;color:var(--text-secondary)}.blog-post-meta-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.blog-post-channel-chip{padding:.25rem .7rem;margin-bottom:.4rem;border-radius:999px;background:var(--background);border:1px solid var(--border);font-size:.8rem;color:var(--text-secondary);text-decoration:none;white-space:nowrap}.blog-post-channel-chip:hover{background:var(--surface)}.blog-post-image{margin:1.25rem 0;border-radius:8px;overflow:hidden;display:block;text-decoration:none;color:inherit}.blog-post-image img{display:block;max-width:100%;width:100%;height:auto;object-fit:contain;vertical-align:middle}.blog-post-content{padding:0 1.5rem 1.25rem}.blog-post-content p{margin:0 0 .75rem;color:var(--text-secondary);line-height:1.7;font-size:.95rem;overflow-wrap:anywhere}.blog-post-content p:last-child{margin-bottom:0}.blog-post-markdown{color:var(--text-primary);line-height:1.72;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif}.blog-post-markdown p,.blog-post-markdown ul,.blog-post-markdown ol,.blog-post-markdown pre,.blog-post-markdown blockquote{margin-bottom:1rem}.blog-post-markdown p{font-size:18px}.blog-post-markdown h1,.blog-post-markdown h2,.blog-post-markdown h3,.blog-post-markdown h4{color:var(--text-primary);margin:1.2rem 0 .7rem;line-height:1.35}.blog-post-markdown ul,.blog-post-markdown ol{padding-left:1.2rem}.blog-post-markdown code{background:#eef1f4;border:1px solid var(--border);border-radius:4px;padding:.1rem .35rem;font-size:.92em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.blog-post-markdown pre{background:#f1f3f5;border:1px solid #dfe3e8;border-radius:10px;padding:1rem 1.1rem;overflow-x:auto}.blog-post-markdown pre code{border:none;background:transparent;padding:0}.blog-post-markdown pre .hljs{background:transparent!important;color:#1f2937}.theme-dark .blog-post-markdown code{background:#253041;border-color:#334155}.theme-dark .blog-post-markdown pre{background:#232b39;border-color:#334155}.theme-dark .blog-post-markdown pre .hljs{color:#e5edf5}.blog-post-comments{border-top:1px solid var(--border);background:var(--background);padding:1.25rem 1.5rem 1.5rem}.blog-post-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding:0 1.5rem .75rem;min-width:0}.blog-stat{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border-radius:999px;font-size:.85rem;color:var(--text-secondary)}.blog-stat-icon{flex-shrink:0;vertical-align:middle}.blog-stat-count{font-weight:500}.blog-like-button{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .9rem;border-radius:999px;border:1px solid var(--border);background:var(--background);cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:background .15s ease,color .15s ease,border-color .15s ease,transform .05s ease,box-shadow .15s ease;max-width:100%}.blog-like-button:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 1px #38bdf866}.blog-like-button.liked{background:#38bdf81a;color:var(--accent);border-color:var(--accent)}.blog-like-icon{flex-shrink:0;vertical-align:middle}.blog-like-count{font-weight:500}.blog-comments-summary{font-size:.85rem;color:var(--text-secondary)}.channel-subscribe-row{display:flex;align-items:center;gap:1rem;margin-top:1rem;flex-wrap:wrap}.channel-subscribe-btn{padding:.5rem 1.25rem;border-radius:999px;border:1px solid var(--border);background:var(--background);color:var(--text-primary);font-size:.95rem;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.channel-subscribe-btn:hover{border-color:var(--accent);color:var(--accent)}.channel-subscribe-btn.subscribed{background:#38bdf81a;border-color:var(--accent);color:var(--accent)}.channel-subscriber-count{font-size:.9rem;color:var(--text-secondary)}.channel-edit-post-btn,.channel-delete-post-btn{cursor:pointer;border:none;font-size:.8rem;padding:.25rem .7rem}.channel-delete-post-btn{color:#b91c1c;background:#b91c1c14}.channel-delete-post-btn:hover{background:#b91c1c26}.blog-post-edit-inline{display:flex;flex-direction:column;gap:.5rem;width:100%;min-width:0}.blog-post-edit-actions{display:flex;gap:.5rem;flex-wrap:wrap}@media (max-width: 1024px){.blog-layout{display:flex;flex-direction:column}.blog-layout.channel-layout{max-width:100%}.blog-sidebar{position:static}}@media (max-width: 768px){.blog-page{padding:1rem}.blog-layout{gap:1rem}.blog-create{padding:1rem}.blog-form-row{grid-template-columns:1fr}.blog-post-header,.blog-post-content,.blog-post-comments,.blog-post-actions{padding-left:1rem;padding-right:1rem}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.confirm-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;display:flex;align-items:center;justify-content:center;z-index:1000}.confirm-modal{background:#fff;border-radius:16px;padding:24px 24px 20px;max-width:420px;width:100%;box-shadow:0 20px 25px -5px #0f172a1a,0 8px 10px -6px #0f172a1a}.confirm-modal-header{margin-bottom:12px}.confirm-modal-title{margin:0;font-size:20px;font-weight:600;color:#0f172a}.confirm-modal-body{margin-bottom:20px}.confirm-modal-message{margin:0;font-size:14px;line-height:1.5;color:#4b5563}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:12px}.confirm-modal-button{min-width:96px;padding:8px 16px;border-radius:999px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease,transform .05s ease}.confirm-modal-button.cancel{background:#e5e7eb;color:#111827}.confirm-modal-button.cancel:hover{background:#d1d5db}.confirm-modal-button.confirm{background:#ef4444;color:#fff;box-shadow:0 8px 16px #ef444466}.confirm-modal-button.confirm:hover{background:#dc2626}.confirm-modal-button:active{transform:translateY(1px);box-shadow:none}@media (max-width: 640px){.confirm-modal{margin:0 16px;padding:20px 16px 16px}.confirm-modal-title{font-size:18px}.confirm-modal-actions{flex-direction:row-reverse;justify-content:space-between}}.w-md-editor-bar{position:absolute;cursor:s-resize;right:0;bottom:0;margin-top:-11px;margin-right:0;width:14px;z-index:3;height:10px;border-radius:0 0 3px;-webkit-user-select:none;user-select:none}.w-md-editor-bar svg{display:block;margin:0 auto}.w-md-editor-area{overflow:auto;border-radius:5px}.w-md-editor-text{min-height:100%;position:relative;text-align:left;white-space:pre-wrap;word-break:keep-all;overflow-wrap:break-word;box-sizing:border-box;padding:10px;margin:0;font-size:14px!important;line-height:18px!important;font-variant-ligatures:common-ligatures}.w-md-editor-text-pre,.w-md-editor-text-input,.w-md-editor-text>.w-md-editor-text-pre{margin:0;border:0;background:none;box-sizing:inherit;display:inherit;font-family:inherit;font-family:var(--md-editor-font-family)!important;font-size:inherit;font-style:inherit;font-variant-ligatures:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;-moz-tab-size:inherit;tab-size:inherit;text-indent:inherit;text-rendering:inherit;text-transform:inherit;white-space:inherit;overflow-wrap:inherit;word-break:inherit;word-break:normal;padding:0}.w-md-editor-text-pre{position:relative;margin:0!important;pointer-events:none;background-color:transparent!important}.w-md-editor-text-pre>code{padding:0!important;font-family:var(--md-editor-font-family)!important;font-size:14px!important;line-height:18px!important}.w-md-editor-text-input{position:absolute;top:0;left:0;height:100%;width:100%;resize:none;color:inherit;overflow:hidden;outline:0;padding:inherit;-webkit-font-smoothing:antialiased;-webkit-text-fill-color:transparent}.w-md-editor-text-input:empty{-webkit-text-fill-color:inherit!important}.w-md-editor-text-pre,.w-md-editor-text-input{word-wrap:pre;word-break:break-word;white-space:pre-wrap}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){.w-md-editor-text-input{color:transparent!important}.w-md-editor-text-input::selection{background-color:#accef7!important;color:transparent!important}}.w-md-editor-text-pre .punctuation{color:var(--color-prettylights-syntax-comment, #8b949e)!important}.w-md-editor-text-pre .token.url,.w-md-editor-text-pre .token.content{color:var(--color-prettylights-syntax-constant, #0550ae)!important}.w-md-editor-text-pre .token.title.important{color:var(--color-prettylights-syntax-markup-bold, #24292f)}.w-md-editor-text-pre .token.code-block .function{color:var(--color-prettylights-syntax-entity, #8250df)}.w-md-editor-text-pre .token.bold{font-weight:unset!important}.w-md-editor-text-pre .token.title{line-height:unset!important;font-size:unset!important;font-weight:unset!important}.w-md-editor-text-pre .token.code.keyword{color:var(--color-prettylights-syntax-constant, #0550ae)!important}.w-md-editor-text-pre .token.strike,.w-md-editor-text-pre .token.strike .content{color:var(--color-prettylights-syntax-markup-deleted-text, #82071e)!important}.w-md-editor-toolbar-child{position:absolute;border-radius:3px;box-shadow:0 0 0 1px var(--md-editor-box-shadow-color),0 0 0 var(--md-editor-box-shadow-color),0 1px 1px var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);z-index:1;display:none}.w-md-editor-toolbar-child.active{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar{border-bottom:0;padding:3px;border-radius:3px}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li{display:block}.w-md-editor-toolbar-child .w-md-editor-toolbar ul>li button{width:-webkit-fill-available;height:initial;box-sizing:border-box;padding:3px 4px 2px;margin:0}.w-md-editor-toolbar{border-bottom:1px solid var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);padding:3px;display:flex;justify-content:space-between;align-items:center;border-radius:3px 3px 0 0;-webkit-user-select:none;user-select:none;flex-wrap:wrap}.w-md-editor-toolbar.bottom{border-bottom:0px;border-top:1px solid var(--md-editor-box-shadow-color);border-radius:0 0 3px 3px}.w-md-editor-toolbar ul,.w-md-editor-toolbar li{margin:0;padding:0;list-style:none;line-height:initial}.w-md-editor-toolbar li{display:inline-block;font-size:14px}.w-md-editor-toolbar li+li{margin:0}.w-md-editor-toolbar li>button{border:none;height:20px;line-height:14px;background:none;padding:4px;margin:0 1px;border-radius:2px;text-transform:none;font-weight:400;overflow:visible;outline:none;cursor:pointer;transition:all .3s;white-space:nowrap;color:var(--color-fg-default)}.w-md-editor-toolbar li>button:hover,.w-md-editor-toolbar li>button:focus{background-color:var(--color-neutral-muted);color:var(--color-accent-fg)}.w-md-editor-toolbar li>button:active{background-color:var(--color-neutral-muted);color:var(--color-danger-fg)}.w-md-editor-toolbar li>button:disabled{color:var(--md-editor-box-shadow-color);cursor:not-allowed}.w-md-editor-toolbar li>button:disabled:hover{background-color:transparent;color:var(--md-editor-box-shadow-color)}.w-md-editor-toolbar li.active>button{color:var(--color-accent-fg);background-color:var(--color-neutral-muted)}.w-md-editor-toolbar-divider{height:14px;width:1px;margin:-3px 3px 0!important;vertical-align:middle;background-color:var(--md-editor-box-shadow-color)}.w-md-editor{text-align:left;border-radius:3px;padding-bottom:1px;position:relative;color:var(--color-fg-default);--md-editor-font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;--md-editor-background-color: var(--color-canvas-default, #ffffff);--md-editor-box-shadow-color: var(--color-border-default, #d0d7de);box-shadow:0 0 0 1px var(--md-editor-box-shadow-color),0 0 0 var(--md-editor-box-shadow-color),0 1px 1px var(--md-editor-box-shadow-color);background-color:var(--md-editor-background-color);font-family:Helvetica Neue,Helvetica,Arial,sans-serif;display:flex;flex-direction:column}.w-md-editor.w-md-editor-rtl{direction:rtl!important;text-align:right!important}.w-md-editor.w-md-editor-rtl .w-md-editor-preview{right:unset!important;left:0;text-align:right!important;box-shadow:inset -1px 0 0 0 var(--md-editor-box-shadow-color)}.w-md-editor.w-md-editor-rtl .w-md-editor-text{text-align:right!important}.w-md-editor-toolbar{height:-webkit-fit-content;height:fit-content}.w-md-editor-content{height:100%;overflow:auto;position:relative;border-radius:0 0 3px}.w-md-editor .copied{display:none!important}.w-md-editor-input{width:50%;height:100%}.w-md-editor-text-pre>code{word-break:break-word!important;white-space:pre-wrap!important}.w-md-editor-preview{width:50%;box-sizing:border-box;box-shadow:inset 1px 0 0 0 var(--md-editor-box-shadow-color);position:absolute;padding:10px 20px;overflow:auto;top:0;right:0;bottom:0;border-radius:0 0 5px;display:flex;flex-direction:column}.w-md-editor-preview .anchor{display:none}.w-md-editor-preview .contains-task-list li.task-list-item{list-style:none}.w-md-editor-show-preview .w-md-editor-input{width:0%;overflow:hidden;background-color:var(--md-editor-background-color)}.w-md-editor-show-preview .w-md-editor-preview{width:100%;box-shadow:inset 0 0}.w-md-editor-show-edit .w-md-editor-input{width:100%}.w-md-editor-show-edit .w-md-editor-preview{width:0%;padding:0}.w-md-editor-fullscreen{overflow:hidden;position:fixed;z-index:99999;top:0;left:0;right:0;bottom:0;height:100%!important}.w-md-editor-fullscreen .w-md-editor-content{height:100%}@media (prefers-color-scheme: dark){.wmde-markdown,.wmde-markdown-var{color-scheme:dark;--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-canvas-default: #0d1117;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-neutral-muted: rgba(110, 118, 129, .4);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-attention-subtle: rgba(187, 128, 9, .15);--color-danger-fg: #f85149;--color-danger-emphasis: #da3633;--color-attention-fg: #d29922;--color-attention-emphasis: #9e6a03;--color-done-fg: #a371f7;--color-done-emphasis: #8957e5;--color-success-fg: #3fb950;--color-success-emphasis: #238636;--color-copied-active-bg: #2e9b33}}@media (prefers-color-scheme: light){.wmde-markdown,.wmde-markdown-var{color-scheme:light;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #ffebe9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-canvas-default: #ffffff;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsl(210, 18%, 87%);--color-neutral-muted: rgba(175, 184, 193, .2);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-attention-subtle: #fff8c5;--color-danger-fg: #d1242f;--color-danger-emphasis: #cf222e;--color-attention-fg: #9a6700;--color-attention-emphasis: #9a6700;--color-done-fg: #8250df;--color-done-emphasis: #8250df;--color-success-fg: #1a7f37;--color-success-emphasis: #1f883d;--color-copied-active-bg: #2e9b33}}[data-color-mode*=dark] .wmde-markdown,[data-color-mode*=dark] .wmde-markdown-var,.wmde-markdown-var[data-color-mode*=dark],.wmde-markdown[data-color-mode*=dark],body[data-color-mode*=dark]{color-scheme:dark;--color-prettylights-syntax-comment: #8b949e;--color-prettylights-syntax-constant: #79c0ff;--color-prettylights-syntax-entity: #d2a8ff;--color-prettylights-syntax-storage-modifier-import: #c9d1d9;--color-prettylights-syntax-entity-tag: #7ee787;--color-prettylights-syntax-keyword: #ff7b72;--color-prettylights-syntax-string: #a5d6ff;--color-prettylights-syntax-variable: #ffa657;--color-prettylights-syntax-brackethighlighter-unmatched: #f85149;--color-prettylights-syntax-invalid-illegal-text: #f0f6fc;--color-prettylights-syntax-invalid-illegal-bg: #8e1519;--color-prettylights-syntax-carriage-return-text: #f0f6fc;--color-prettylights-syntax-carriage-return-bg: #b62324;--color-prettylights-syntax-string-regexp: #7ee787;--color-prettylights-syntax-markup-list: #f2cc60;--color-prettylights-syntax-markup-heading: #1f6feb;--color-prettylights-syntax-markup-italic: #c9d1d9;--color-prettylights-syntax-markup-bold: #c9d1d9;--color-prettylights-syntax-markup-deleted-text: #ffdcd7;--color-prettylights-syntax-markup-deleted-bg: #67060c;--color-prettylights-syntax-markup-inserted-text: #aff5b4;--color-prettylights-syntax-markup-inserted-bg: #033a16;--color-prettylights-syntax-markup-changed-text: #ffdfb6;--color-prettylights-syntax-markup-changed-bg: #5a1e02;--color-prettylights-syntax-markup-ignored-text: #c9d1d9;--color-prettylights-syntax-markup-ignored-bg: #1158c7;--color-prettylights-syntax-meta-diff-range: #d2a8ff;--color-prettylights-syntax-brackethighlighter-angle: #8b949e;--color-prettylights-syntax-sublimelinter-gutter-mark: #484f58;--color-prettylights-syntax-constant-other-reference-link: #a5d6ff;--color-fg-default: #c9d1d9;--color-fg-muted: #8b949e;--color-fg-subtle: #484f58;--color-canvas-default: #0d1117;--color-canvas-subtle: #161b22;--color-border-default: #30363d;--color-border-muted: #21262d;--color-neutral-muted: rgba(110, 118, 129, .4);--color-accent-fg: #58a6ff;--color-accent-emphasis: #1f6feb;--color-attention-subtle: rgba(187, 128, 9, .15);--color-danger-fg: #f85149}[data-color-mode*=light] .wmde-markdown,[data-color-mode*=light] .wmde-markdown-var,.wmde-markdown-var[data-color-mode*=light],.wmde-markdown[data-color-mode*=light],body[data-color-mode*=light]{color-scheme:light;--color-prettylights-syntax-comment: #6e7781;--color-prettylights-syntax-constant: #0550ae;--color-prettylights-syntax-entity: #8250df;--color-prettylights-syntax-storage-modifier-import: #24292f;--color-prettylights-syntax-entity-tag: #116329;--color-prettylights-syntax-keyword: #cf222e;--color-prettylights-syntax-string: #0a3069;--color-prettylights-syntax-variable: #953800;--color-prettylights-syntax-brackethighlighter-unmatched: #82071e;--color-prettylights-syntax-invalid-illegal-text: #f6f8fa;--color-prettylights-syntax-invalid-illegal-bg: #82071e;--color-prettylights-syntax-carriage-return-text: #f6f8fa;--color-prettylights-syntax-carriage-return-bg: #cf222e;--color-prettylights-syntax-string-regexp: #116329;--color-prettylights-syntax-markup-list: #3b2300;--color-prettylights-syntax-markup-heading: #0550ae;--color-prettylights-syntax-markup-italic: #24292f;--color-prettylights-syntax-markup-bold: #24292f;--color-prettylights-syntax-markup-deleted-text: #82071e;--color-prettylights-syntax-markup-deleted-bg: #ffebe9;--color-prettylights-syntax-markup-inserted-text: #116329;--color-prettylights-syntax-markup-inserted-bg: #dafbe1;--color-prettylights-syntax-markup-changed-text: #953800;--color-prettylights-syntax-markup-changed-bg: #ffd8b5;--color-prettylights-syntax-markup-ignored-text: #eaeef2;--color-prettylights-syntax-markup-ignored-bg: #0550ae;--color-prettylights-syntax-meta-diff-range: #8250df;--color-prettylights-syntax-brackethighlighter-angle: #57606a;--color-prettylights-syntax-sublimelinter-gutter-mark: #8c959f;--color-prettylights-syntax-constant-other-reference-link: #0a3069;--color-fg-default: #24292f;--color-fg-muted: #57606a;--color-fg-subtle: #6e7781;--color-canvas-default: #ffffff;--color-canvas-subtle: #f6f8fa;--color-border-default: #d0d7de;--color-border-muted: hsl(210, 18%, 87%);--color-neutral-muted: rgba(175, 184, 193, .2);--color-accent-fg: #0969da;--color-accent-emphasis: #0969da;--color-attention-subtle: #fff8c5;--color-danger-fg: #cf222e}.wmde-markdown{-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;word-wrap:break-word;color:var(--color-fg-default);background-color:var(--color-canvas-default)}.wmde-markdown details,.wmde-markdown figcaption,.wmde-markdown figure{display:block}.wmde-markdown summary{display:list-item}.wmde-markdown [hidden]{display:none!important}.wmde-markdown a{background-color:transparent;color:var(--color-accent-fg);text-decoration:none}.wmde-markdown a:active,.wmde-markdown a:hover{outline-width:0}.wmde-markdown abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.wmde-markdown b,.wmde-markdown strong{font-weight:600}.wmde-markdown dfn{font-style:italic}.wmde-markdown h1{margin:.67em 0;font-weight:600;padding-bottom:.3em;font-size:2em;border-bottom:1px solid var(--color-border-muted)}.wmde-markdown mark{background-color:var(--color-attention-subtle);color:var(--color-text-primary)}.wmde-markdown small{font-size:90%}.wmde-markdown sub,.wmde-markdown sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.wmde-markdown sub{bottom:-.25em}.wmde-markdown sup{top:-.5em}.wmde-markdown img{display:inline-block;border-style:none;max-width:100%;box-sizing:content-box;background-color:var(--color-canvas-default)}.wmde-markdown code,.wmde-markdown kbd,.wmde-markdown pre,.wmde-markdown samp{font-family:monospace,monospace;font-size:1em}.wmde-markdown figure{margin:1em 40px}.wmde-markdown hr{box-sizing:content-box;overflow:hidden;background:transparent;border:0;border-bottom:1px solid var(--color-border-muted);height:.25em;padding:0;margin:24px 0;background-color:var(--color-border-default)}.wmde-markdown input{font:inherit;margin:0;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit}.wmde-markdown [type=button],.wmde-markdown [type=reset],.wmde-markdown [type=submit]{-webkit-appearance:button}.wmde-markdown [type=button]::-moz-focus-inner,.wmde-markdown [type=reset]::-moz-focus-inner,.wmde-markdown [type=submit]::-moz-focus-inner{border-style:none;padding:0}.wmde-markdown [type=button]:-moz-focusring,.wmde-markdown [type=reset]:-moz-focusring,.wmde-markdown [type=submit]:-moz-focusring{outline:1px dotted ButtonText}.wmde-markdown [type=checkbox],.wmde-markdown [type=radio]{box-sizing:border-box;padding:0}.wmde-markdown [type=number]::-webkit-inner-spin-button,.wmde-markdown [type=number]::-webkit-outer-spin-button{height:auto}.wmde-markdown [type=search]{-webkit-appearance:textfield;outline-offset:-2px}.wmde-markdown [type=search]::-webkit-search-cancel-button,.wmde-markdown [type=search]::-webkit-search-decoration{-webkit-appearance:none}.wmde-markdown ::-webkit-input-placeholder{color:inherit;opacity:.54}.wmde-markdown ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}.wmde-markdown a:hover{text-decoration:underline}.wmde-markdown hr:before{display:table;content:""}.wmde-markdown hr:after{display:table;clear:both;content:""}.wmde-markdown table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%}.wmde-markdown td,.wmde-markdown th{padding:0}.wmde-markdown details summary{cursor:pointer}.wmde-markdown details:not([open])>*:not(summary){display:none!important}.wmde-markdown kbd{display:inline-block;padding:3px 5px;font:11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;line-height:10px;color:var(--color-fg-default);vertical-align:middle;background-color:var(--color-canvas-subtle);border:solid 1px var(--color-neutral-muted);border-bottom-color:var(--color-neutral-muted);border-radius:6px;box-shadow:inset 0 -1px 0 var(--color-neutral-muted)}.wmde-markdown h1,.wmde-markdown h2,.wmde-markdown h3,.wmde-markdown h4,.wmde-markdown h5,.wmde-markdown h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.wmde-markdown h2{font-weight:600;padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid var(--color-border-muted)}.wmde-markdown h3{font-weight:600;font-size:1.25em}.wmde-markdown h4{font-weight:600;font-size:1em}.wmde-markdown h5{font-weight:600;font-size:.875em}.wmde-markdown h6{font-weight:600;font-size:.85em;color:var(--color-fg-muted)}.wmde-markdown p{margin-top:0;margin-bottom:10px}.wmde-markdown blockquote{margin:0;padding:0 1em;color:var(--color-fg-muted);border-left:.25em solid var(--color-border-default)}.wmde-markdown ul,.wmde-markdown ol{margin-top:0;margin-bottom:0;padding-left:2em}.wmde-markdown ol ol,.wmde-markdown ul ol{list-style-type:lower-roman}.wmde-markdown ul ul ol,.wmde-markdown ul ol ol,.wmde-markdown ol ul ol,.wmde-markdown ol ol ol{list-style-type:lower-alpha}.wmde-markdown dd{margin-left:0}.wmde-markdown tt,.wmde-markdown code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.wmde-markdown pre{margin-top:0;margin-bottom:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;word-wrap:normal}.wmde-markdown .octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor}.wmde-markdown ::placeholder{color:var(--color-fg-subtle);opacity:1}.wmde-markdown input::-webkit-outer-spin-button,.wmde-markdown input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.wmde-markdown [data-catalyst]{display:block}.wmde-markdown:before{display:table;content:""}.wmde-markdown:after{display:table;clear:both;content:""}.wmde-markdown>*:first-child{margin-top:0!important}.wmde-markdown>*:last-child{margin-bottom:0!important}.wmde-markdown a:not([href]){color:inherit;text-decoration:none}.wmde-markdown .absent{color:var(--color-danger-fg)}.wmde-markdown a.anchor{float:left;padding-right:4px;margin-left:-20px;line-height:1}.wmde-markdown .anchor:focus{outline:none}.wmde-markdown p,.wmde-markdown blockquote,.wmde-markdown ul,.wmde-markdown ol,.wmde-markdown dl,.wmde-markdown table,.wmde-markdown pre,.wmde-markdown details{margin-top:0;margin-bottom:16px}.wmde-markdown blockquote>:first-child{margin-top:0}.wmde-markdown blockquote>:last-child{margin-bottom:0}.wmde-markdown sup>a:before{content:"["}.wmde-markdown sup>a:after{content:"]"}.wmde-markdown h1 .octicon-link,.wmde-markdown h2 .octicon-link,.wmde-markdown h3 .octicon-link,.wmde-markdown h4 .octicon-link,.wmde-markdown h5 .octicon-link,.wmde-markdown h6 .octicon-link{color:var(--color-fg-default);vertical-align:middle;visibility:hidden}.wmde-markdown h1:hover .anchor,.wmde-markdown h2:hover .anchor,.wmde-markdown h3:hover .anchor,.wmde-markdown h4:hover .anchor,.wmde-markdown h5:hover .anchor,.wmde-markdown h6:hover .anchor{text-decoration:none}.wmde-markdown h1:hover .anchor .octicon-link,.wmde-markdown h2:hover .anchor .octicon-link,.wmde-markdown h3:hover .anchor .octicon-link,.wmde-markdown h4:hover .anchor .octicon-link,.wmde-markdown h5:hover .anchor .octicon-link,.wmde-markdown h6:hover .anchor .octicon-link{visibility:visible}.wmde-markdown h1 tt,.wmde-markdown h1 code,.wmde-markdown h2 tt,.wmde-markdown h2 code,.wmde-markdown h3 tt,.wmde-markdown h3 code,.wmde-markdown h4 tt,.wmde-markdown h4 code,.wmde-markdown h5 tt,.wmde-markdown h5 code,.wmde-markdown h6 tt,.wmde-markdown h6 code{padding:0 .2em;font-size:inherit}.wmde-markdown ul.no-list,.wmde-markdown ol.no-list{padding:0;list-style-type:none}.wmde-markdown ol[type="1"]{list-style-type:decimal}.wmde-markdown ol[type=a]{list-style-type:lower-alpha}.wmde-markdown ol[type=i]{list-style-type:lower-roman}.wmde-markdown div>ol:not([type]){list-style-type:decimal}.wmde-markdown ul ul,.wmde-markdown ul ol,.wmde-markdown ol ol,.wmde-markdown ol ul{margin-top:0;margin-bottom:0}.wmde-markdown li>p{margin-top:16px}.wmde-markdown li+li{margin-top:.25em}.wmde-markdown dl{padding:0}.wmde-markdown dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:600}.wmde-markdown dl dd{padding:0 16px;margin-bottom:16px}.wmde-markdown table th{font-weight:600}.wmde-markdown table th,.wmde-markdown table td{padding:6px 13px;border:1px solid var(--color-border-default)}.wmde-markdown table tr{background-color:var(--color-canvas-default);border-top:1px solid var(--color-border-muted)}.wmde-markdown table tr:nth-child(2n){background-color:var(--color-canvas-subtle)}.wmde-markdown table img{background-color:transparent}.wmde-markdown img[align=right]{padding-left:20px}.wmde-markdown img[align=left]{padding-right:20px}.wmde-markdown .emoji{max-width:none;vertical-align:text-top;background-color:transparent}.wmde-markdown span.frame{display:block;overflow:hidden}.wmde-markdown span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid var(--color-border-default)}.wmde-markdown span.frame span img{display:block;float:left}.wmde-markdown span.frame span span{display:block;padding:5px 0 0;clear:both;color:var(--color-fg-default)}.wmde-markdown span.align-center{display:block;overflow:hidden;clear:both}.wmde-markdown span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.wmde-markdown span.align-center span img{margin:0 auto;text-align:center}.wmde-markdown span.align-right{display:block;overflow:hidden;clear:both}.wmde-markdown span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.wmde-markdown span.align-right span img{margin:0;text-align:right}.wmde-markdown span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.wmde-markdown span.float-left span{margin:13px 0 0}.wmde-markdown span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.wmde-markdown span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.wmde-markdown code,.wmde-markdown tt{padding:.2em .4em;margin:0;font-size:85%;background-color:var(--color-neutral-muted);border-radius:6px}.wmde-markdown code br,.wmde-markdown tt br{display:none}.wmde-markdown del code{text-decoration:inherit}.wmde-markdown pre code{font-size:100%}.wmde-markdown pre>code{padding:0;margin:0;word-break:normal;white-space:pre;background:transparent;border:0}.wmde-markdown pre{font-size:85%;line-height:1.45;background-color:var(--color-canvas-subtle);border-radius:6px}.wmde-markdown pre code,.wmde-markdown pre tt{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.wmde-markdown pre>code{padding:16px;overflow:auto;display:block}.wmde-markdown pre>code::-webkit-scrollbar{background:transparent;width:8px;height:8px}.wmde-markdown pre>code::-webkit-scrollbar-thumb{background:var(--color-fg-muted);border-radius:10px}.wmde-markdown .csv-data td,.wmde-markdown .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.wmde-markdown .csv-data .blob-num{padding:10px 8px 9px;text-align:right;background:var(--color-canvas-default);border:0}.wmde-markdown .csv-data tr{border-top:0}.wmde-markdown .csv-data th{font-weight:600;background:var(--color-canvas-subtle);border-top:0}.wmde-markdown .footnotes{font-size:12px;color:var(--color-fg-muted);border-top:1px solid var(--color-border-default)}.wmde-markdown .footnotes ol{padding-left:16px}.wmde-markdown .footnotes li{position:relative}.wmde-markdown .footnotes li:target:before{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-24px;pointer-events:none;content:"";border:2px solid var(--color-accent-emphasis);border-radius:6px}.wmde-markdown .footnotes li:target{color:var(--color-fg-default)}.wmde-markdown .footnotes .data-footnote-backref g-emoji{font-family:monospace}.wmde-markdown .task-list-item{list-style-type:none}.wmde-markdown .task-list-item label{font-weight:400}.wmde-markdown .task-list-item.enabled label{cursor:pointer}.wmde-markdown .task-list-item+.wmde-markdown .task-list-item{margin-top:3px}.wmde-markdown .task-list-item .handle{display:none}.wmde-markdown .task-list-item-checkbox,.wmde-markdown .contains-task-list input[type=checkbox]{margin:0 .2em .25em -1.6em;vertical-align:middle}.wmde-markdown .contains-task-list:dir(rtl) .task-list-item-checkbox,.wmde-markdown .contains-task-list:dir(rtl) input[type=checkbox]{margin:0 -1.6em .25em .2em}.wmde-markdown ::-webkit-calendar-picker-indicator{filter:invert(50%)}.wmde-markdown pre{position:relative}.wmde-markdown pre .copied{visibility:hidden;display:flex;position:absolute;cursor:pointer;color:var(--color-fg-default);top:6px;right:6px;border-radius:5px;background:var(--color-border-default);padding:6px;font-size:12px;transition:all .3s}.wmde-markdown pre .copied .octicon-copy{display:block}.wmde-markdown pre .copied .octicon-check{display:none}.wmde-markdown pre:hover .copied{visibility:visible}.wmde-markdown pre:hover .copied:hover{background:var(--color-prettylights-syntax-entity-tag);color:var(--color-canvas-default)}.wmde-markdown pre:hover .copied:active,.wmde-markdown pre .copied.active{background:var(--color-copied-active-bg);color:var(--color-canvas-default)}.wmde-markdown pre .active .octicon-copy{display:none}.wmde-markdown pre .active .octicon-check{display:block}.wmde-markdown .markdown-alert{padding:.5rem 1em;color:inherit;margin-bottom:16px;border-left:.25em solid var(--borderColor-default, var(--color-border-default))}.wmde-markdown .markdown-alert>:last-child{margin-bottom:0!important}.wmde-markdown .markdown-alert .markdown-alert-title{display:flex;align-items:center;line-height:1;font-weight:500;font-size:14px}.wmde-markdown .markdown-alert .markdown-alert-title svg.octicon{margin-right:var(--base-size-8, 8px)!important}.wmde-markdown .markdown-alert.markdown-alert-note{border-left-color:var(--borderColor-accent-emphasis, var(--color-accent-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-note .markdown-alert-title{color:var(--fgColor-accent, var(--color-accent-fg))}.wmde-markdown .markdown-alert.markdown-alert-tip{border-left-color:var(--borderColor-success-emphasis, var(--color-success-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-tip .markdown-alert-title{color:var(--fgColor-success, var(--color-success-fg))}.wmde-markdown .markdown-alert.markdown-alert-important{border-left-color:var(--borderColor-done-emphasis, var(--color-done-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-important .markdown-alert-title{color:var(--fgColor-done, var(--color-done-fg))}.wmde-markdown .markdown-alert.markdown-alert-warning{border-left-color:var(--borderColor-attention-emphasis, var(--color-attention-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-warning .markdown-alert-title{color:var(--fgColor-attention, var(--color-attention-fg))}.wmde-markdown .markdown-alert.markdown-alert-caution{border-left-color:var(--borderColor-danger-emphasis, var(--color-danger-emphasis))}.wmde-markdown .markdown-alert.markdown-alert-caution .markdown-alert-title{color:var(--fgColor-danger, var(--color-danger-fg))}.wmde-markdown .highlight-line{background-color:var(--color-neutral-muted)}.wmde-markdown .code-line.line-number:before{display:inline-block;width:1rem;text-align:right;margin-right:16px;color:var(--color-fg-subtle);content:attr(line);white-space:nowrap}.wmde-markdown .token.comment,.wmde-markdown .token.prolog,.wmde-markdown .token.doctype,.wmde-markdown .token.cdata{color:var(--color-prettylights-syntax-comment)}.wmde-markdown .token.namespace{opacity:.7}.wmde-markdown .token.property,.wmde-markdown .token.tag,.wmde-markdown .token.selector,.wmde-markdown .token.constant,.wmde-markdown .token.symbol,.wmde-markdown .token.deleted{color:var(--color-prettylights-syntax-entity-tag)}.wmde-markdown .token.maybe-class-name{color:var(--color-prettylights-syntax-variable)}.wmde-markdown .token.property-access,.wmde-markdown .token.operator,.wmde-markdown .token.boolean,.wmde-markdown .token.number,.wmde-markdown .token.selector .token.class,.wmde-markdown .token.attr-name,.wmde-markdown .token.string,.wmde-markdown .token.char,.wmde-markdown .token.builtin{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .token.deleted{color:var(--color-prettylights-syntax-markup-deleted-text)}.wmde-markdown .code-line .token.deleted{background-color:var(--color-prettylights-syntax-markup-deleted-bg)}.wmde-markdown .token.inserted{color:var(--color-prettylights-syntax-markup-inserted-text)}.wmde-markdown .code-line .token.inserted{background-color:var(--color-prettylights-syntax-markup-inserted-bg)}.wmde-markdown .token.variable{color:var(--color-prettylights-syntax-constant)}.wmde-markdown .token.entity,.wmde-markdown .token.url,.wmde-markdown .language-css .token.string,.wmde-markdown .style .token.string,.wmde-markdown .token.color,.wmde-markdown .token.atrule,.wmde-markdown .token.attr-value,.wmde-markdown .token.function,.wmde-markdown .token.class-name{color:var(--color-prettylights-syntax-string)}.wmde-markdown .token.rule,.wmde-markdown .token.regex,.wmde-markdown .token.important,.wmde-markdown .token.keyword{color:var(--color-prettylights-syntax-keyword)}.wmde-markdown .token.coord{color:var(--color-prettylights-syntax-meta-diff-range)}.wmde-markdown .token.important,.wmde-markdown .token.bold{font-weight:700}.wmde-markdown .token.italic{font-style:italic}.wmde-markdown .token.entity{cursor:help}.md-editor{display:flex;flex-direction:column;gap:.5rem}.md-editor .w-md-editor{border:1px solid var(--border);border-radius:8px;overflow:hidden;box-shadow:none;background:var(--background)}.md-editor .w-md-editor-toolbar{border-bottom:1px solid var(--border);background:var(--surface)}.md-editor .w-md-editor-toolbar li>button{color:var(--text-secondary)}.md-editor .w-md-editor-toolbar li>button:hover{color:var(--text-primary);background:#94a3b824}.md-editor .w-md-editor-text-input,.md-editor .w-md-editor-text{font-size:15px!important;line-height:1.6!important;color:var(--text-primary)!important;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif!important}.md-editor .wmde-markdown{color:var(--text-primary)!important;background:var(--background)!important;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif!important}.md-editor .wmde-markdown pre{background:#f1f3f5!important;border:1px solid #dfe3e8!important;border-radius:10px!important}.md-editor .wmde-markdown pre code,.md-editor .wmde-markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace!important}.md-editor .wmde-markdown code{background:#eef1f4!important}.md-editor.has-error .w-md-editor{border-color:#d32f2f}.md-editor[data-color-mode=dark] .w-md-editor,.md-editor[data-color-mode=dark] .w-md-editor-toolbar,.md-editor[data-color-mode=dark] .w-md-editor-text-container,.md-editor[data-color-mode=dark] .wmde-markdown{background:var(--background)}.md-editor[data-color-mode=dark] .w-md-editor-toolbar{border-bottom-color:var(--border)}.md-editor[data-color-mode=dark] .wmde-markdown pre{background:#232b39!important;border-color:#334155!important}.md-editor[data-color-mode=dark] .wmde-markdown code{background:#253041!important}.md-editor[data-color-mode=dark] .w-md-editor-toolbar li>button:hover{background:#94a3b833}@media (max-width: 768px){.md-editor .w-md-editor-text-input,.md-editor .w-md-editor-text{font-size:14px!important}}.course-detail{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.course-detail-container{max-width:1200px;margin:0 auto}.back-link{display:inline-block;color:var(--text-secondary);text-decoration:none;margin-bottom:2rem;font-size:.95rem;transition:color .2s ease}.course-detail-header{margin-bottom:3rem}.course-detail-badge{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.course-level,.course-category{display:inline-block;padding:.5rem 1rem;background:var(--surface);color:var(--text-secondary);font-size:.9rem;border-radius:6px;font-weight:500}.course-ai-badge{display:inline-block;padding:.5rem .95rem;border-radius:6px;background:#38bdf81a;border:1px solid rgba(56,189,248,.45);color:var(--accent);font-size:.9rem;font-weight:600}.course-detail-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.course-detail-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:600;letter-spacing:-.02em;color:var(--text-primary);line-height:1.2;flex:1;margin:0}.favorite-button{background:transparent;border:1px solid var(--border);width:3rem;height:3rem;border-radius:8px;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-secondary);flex-shrink:0}.favorite-button:hover{background:var(--surface);border-color:var(--text-primary);color:var(--text-primary)}.favorite-button.active{background:var(--text-primary);border-color:var(--text-primary);color:var(--background)}.course-detail-subtitle{font-size:1.25rem;color:var(--text-secondary);line-height:1.6}.course-detail-content{display:grid;grid-template-columns:1fr 400px;gap:3rem}.course-detail-section{margin-bottom:3rem}.course-detail-section h2{font-size:1.75rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary);letter-spacing:-.01em}.course-full-description{font-size:1.1rem;line-height:1.8;color:var(--text-secondary)}.course-modules{list-style:none;display:flex;flex-direction:column;gap:1rem}.course-module-item{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--surface);border-radius:8px;border:1px solid var(--border);transition:transform .2s ease,box-shadow .2s ease}.course-module-item:hover{transform:translate(4px);box-shadow:0 4px 12px #0000000d}.module-number{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:var(--text-primary);color:var(--background);border-radius:50%;font-weight:600;font-size:.95rem;flex-shrink:0}.module-info{display:flex;flex-direction:column;gap:.25rem}.module-name{font-size:1rem;color:var(--text-primary);font-weight:500}.course-info-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;position:sticky;top:100px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border)}.info-item:last-of-type:not(.price){border-bottom:none}.info-item.price{border-top:2px solid var(--border);margin-top:.5rem;padding-top:1.5rem;border-bottom:none}.info-label{color:var(--text-secondary);font-size:.95rem}.info-value{color:var(--text-primary);font-weight:500;font-size:.95rem}.info-item.price .info-value{font-size:1.5rem;font-weight:600}.enroll-button{width:100%;background:var(--text-primary);color:var(--background);border:none;padding:1rem 2rem;font-size:1rem;font-weight:500;cursor:pointer;border-radius:8px;margin-top:1.5rem;transition:opacity .2s ease}.enroll-button:hover{opacity:.8}.enroll-button.enrolled{background:var(--surface);color:var(--text-primary);border:1px solid var(--border);text-decoration:none;display:block;text-align:center}.enroll-button.enrolled:hover{background:var(--border)}@media (max-width: 968px){.course-detail-content{grid-template-columns:1fr}.course-info-card{position:static}}@media (max-width: 768px){.course-detail{padding:1.5rem}.course-detail-title{font-size:2rem}.course-detail-subtitle{font-size:1.1rem}.course-detail-section h2{font-size:1.5rem}}.my-courses{min-height:calc(100vh - 200px);padding:4rem 2rem;background:var(--background)}.my-courses-container{max-width:1200px;margin:0 auto}.my-courses-header{text-align:center;margin-bottom:3rem}.my-courses-title{font-size:clamp(2rem,4vw,3rem);font-weight:600;letter-spacing:-.02em;margin-bottom:1rem;color:var(--text-primary)}.my-courses-subtitle{font-size:1.1rem;color:var(--text-secondary)}.my-courses-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:1px solid var(--border)}.tab-button{background:transparent;border:none;padding:1rem 1.5rem;font-size:1rem;font-weight:500;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease;position:relative}.tab-button:hover{color:var(--text-primary)}.tab-button.active{color:var(--text-primary);border-bottom-color:var(--text-primary)}@media (max-width: 768px){.my-courses-tabs{gap:0}.tab-button{padding:.875rem 1rem;font-size:.95rem}}@media (max-width: 768px){.my-courses{padding:3rem 1.5rem}.courses-grid{grid-template-columns:1fr}}.learn-course{min-height:calc(100vh - 200px);background:var(--background)}.learn-course-container{max-width:1400px;margin:0 auto;padding:2rem}.learn-course-header{margin-bottom:2rem}.learn-course-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin-top:1rem;color:var(--text-primary)}.learn-course-content{display:grid;grid-template-columns:350px 1fr;gap:2rem;align-items:start}.learn-course-sidebar{position:sticky;top:100px;max-height:calc(100vh - 150px);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.modules-list{display:flex;flex-direction:column;gap:.5rem}.module-section{border-bottom:1px solid var(--border);padding-bottom:.5rem;margin-bottom:.5rem}.module-section:last-child{border-bottom:none;margin-bottom:0}.module-header{display:flex;align-items:center;gap:.75rem;padding:.75rem;cursor:pointer;border-radius:8px;transition:background .2s ease;-webkit-user-select:none;user-select:none}.module-header:hover{background:#00000008}.module-header.active{background:#0000000d}.module-number{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:var(--text-primary);color:var(--background);border-radius:50%;font-weight:600;font-size:.85rem;flex-shrink:0}.module-title{flex:1;font-weight:500;font-size:.95rem;color:var(--text-primary)}.module-arrow{color:var(--text-secondary);font-size:.75rem;flex-shrink:0}.lessons-loading{padding:1rem .75rem;margin-left:2.75rem;color:var(--text-secondary);font-size:.9rem}.lessons-list{margin-top:.5rem;margin-left:2.75rem;display:flex;flex-direction:column;gap:.25rem}.lesson-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;cursor:pointer;border-radius:6px;transition:background .2s ease}.lesson-item:hover{background:#00000008}.lesson-item.active{background:#0000000d;font-weight:500}.lesson-number{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background:var(--border);color:var(--text-secondary);border-radius:4px;font-size:.75rem;font-weight:500;flex-shrink:0}.lesson-item.active .lesson-number{background:var(--text-primary);color:var(--background)}.lesson-title{font-size:.9rem;color:var(--text-secondary)}.lesson-item.active .lesson-title{color:var(--text-primary)}.learn-course-main{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:3rem;min-height:500px}.lesson-content-title{font-size:2rem;font-weight:600;letter-spacing:-.01em;margin-bottom:2rem;color:var(--text-primary)}.lesson-content-body{font-size:1.06rem;line-height:1.72;color:var(--text-primary);max-width:860px;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif}.lesson-markdown{color:var(--text-primary);font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif}.lesson-markdown p,.lesson-markdown ul,.lesson-markdown ol,.lesson-markdown pre,.lesson-markdown blockquote{margin-bottom:1.1rem}.lesson-markdown p{font-size:18px}.lesson-markdown p:last-child{margin-bottom:0}.lesson-markdown h1,.lesson-markdown h2,.lesson-markdown h3,.lesson-markdown h4{color:var(--text-primary);margin:1.35rem 0 .8rem;line-height:1.35;letter-spacing:-.01em}.lesson-markdown h1{font-size:2rem}.lesson-markdown h2{font-size:1.65rem}.lesson-markdown h3{font-size:1.3rem}.lesson-markdown li{margin-bottom:.45rem}.lesson-markdown ul,.lesson-markdown ol{padding-left:1.25rem}.lesson-markdown code{background:#eef1f4;border:1px solid var(--border);border-radius:4px;padding:.1rem .35rem;font-size:.9em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.lesson-markdown pre{background:#f1f3f5;border:1px solid #dfe3e8;border-radius:10px;padding:1rem 1.1rem;overflow-x:auto}.lesson-markdown pre code{border:none;background:transparent;padding:0;font-size:.92em}.lesson-markdown pre .hljs{background:transparent!important;color:#1f2937}.lesson-markdown pre .hljs-keyword,.lesson-markdown pre .hljs-selector-tag,.lesson-markdown pre .hljs-meta .hljs-keyword,.lesson-markdown pre .hljs-doctag{color:#8b2bbf}.lesson-markdown pre .hljs-title,.lesson-markdown pre .hljs-title.class_,.lesson-markdown pre .hljs-title.function_{color:#0f766e}.lesson-markdown pre .hljs-string,.lesson-markdown pre .hljs-meta .hljs-string{color:#b45309}.lesson-markdown pre .hljs-number,.lesson-markdown pre .hljs-literal{color:#0b63c9}.lesson-markdown pre .hljs-comment,.lesson-markdown pre .hljs-quote{color:#6b7280}.theme-dark .lesson-markdown code{background:#253041;border-color:#334155}.theme-dark .lesson-markdown pre{background:#232b39;border-color:#334155}.theme-dark .lesson-markdown pre .hljs{color:#e5edf5}.theme-dark .lesson-markdown pre .hljs-keyword,.theme-dark .lesson-markdown pre .hljs-selector-tag,.theme-dark .lesson-markdown pre .hljs-meta .hljs-keyword,.theme-dark .lesson-markdown pre .hljs-doctag{color:#c792ea}.theme-dark .lesson-markdown pre .hljs-title,.theme-dark .lesson-markdown pre .hljs-title.class_,.theme-dark .lesson-markdown pre .hljs-title.function_{color:#82aaff}.theme-dark .lesson-markdown pre .hljs-string,.theme-dark .lesson-markdown pre .hljs-meta .hljs-string{color:#ecc48d}.theme-dark .lesson-markdown pre .hljs-number,.theme-dark .lesson-markdown pre .hljs-literal{color:#f78c6c}.theme-dark .lesson-markdown pre .hljs-comment,.theme-dark .lesson-markdown pre .hljs-quote{color:#9aa5b1}.course-not-found{text-align:center;padding:4rem 2rem}.course-not-found h2{font-size:2rem;margin-bottom:1.5rem;color:var(--text-primary)}@media (max-width: 968px){.learn-course-content{grid-template-columns:1fr}.learn-course-sidebar{position:static;max-height:none}}@media (max-width: 768px){.learn-course-container{padding:1.5rem}.learn-course-main{padding:2rem 1.5rem}.lesson-content-title{font-size:1.5rem}.lesson-content-body{font-size:1rem}}.login-page{min-height:calc(100vh - 200px);padding:4rem 2rem;background:var(--background);display:flex;align-items:center;justify-content:center}.login-container{width:100%;max-width:450px}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:3rem}.login-title{font-size:2rem;font-weight:600;letter-spacing:-.02em;margin-bottom:.5rem;color:var(--text-primary);text-align:center}.login-subtitle{font-size:1rem;color:var(--text-secondary);text-align:center;margin-bottom:2rem}.login-error{background:#ff00001a;border:1px solid rgba(255,0,0,.3);color:#d32f2f;padding:.875rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.login-success{background:#22c55e1f;border:1px solid rgba(34,197,94,.4);color:#15803d;padding:.875rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-input:focus{outline:none;border-color:var(--text-primary)}.code-inputs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem}.code-input{height:3rem;border:1px solid var(--border);border-radius:8px;background:var(--background);color:var(--text-primary);text-align:center;font-size:1.2rem;font-weight:600;font-family:inherit}.code-input:focus{outline:none;border-color:var(--text-primary)}.login-button{background:var(--text-primary);color:var(--background);border:none;padding:1rem 2rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:opacity .2s ease;margin-top:.5rem}.login-button:hover:not(:disabled){opacity:.8}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-switch{margin-top:2rem;text-align:center;padding-top:2rem;border-top:1px solid var(--border)}.login-switch p{color:var(--text-secondary);font-size:.95rem}.switch-button{background:none;border:none;color:var(--text-primary);font-weight:500;cursor:pointer;text-decoration:underline;font-size:inherit;font-family:inherit;padding:0}.switch-button:hover{opacity:.8}@media (max-width: 768px){.login-page,.login-card{padding:2rem 1.5rem}.login-title{font-size:1.75rem}.code-inputs{gap:.4rem}.code-input{height:2.75rem;font-size:1.1rem}}.profile-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.profile-container{max-width:1000px;margin:0 auto;width:100%;min-width:0}.profile-layout{display:flex;gap:2rem;align-items:flex-start;min-width:0}.profile-card{flex:1;min-width:0}.profile-sidebar{flex-shrink:0;width:220px;display:flex;flex-direction:column;gap:.75rem}.profile-sidebar-btn{display:block;width:100%;text-align:center;text-decoration:none;box-sizing:border-box}.profile-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem}.profile-title{font-size:clamp(2rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin-bottom:0;color:var(--text-primary)}.profile-header-actions{display:flex;align-items:center;gap:1rem}.profile-header-link{text-decoration:none;text-align:center}.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:3rem;width:100%;box-sizing:border-box}.profile-avatar-section{text-align:center;padding-bottom:2rem;border-bottom:1px solid var(--border);margin-bottom:2rem}.profile-avatar{width:120px;height:120px;border-radius:50%;background:var(--text-primary);color:var(--background);display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:600;margin:0 auto 1.5rem}.profile-name{font-size:1.75rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary);overflow-wrap:anywhere}.profile-username{font-size:1rem;color:var(--text-secondary);overflow-wrap:anywhere}.profile-info{display:flex;flex-direction:column;gap:2rem}.profile-section{display:flex;flex-direction:column;gap:1.5rem}.channel-form{display:flex;flex-direction:column;gap:1rem}.channel-error{padding:.75rem 1rem;border-radius:8px;background:#ef444414;color:#b91c1c;font-size:.9rem}.channels-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.channel-item{padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.channel-item-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.channel-link.secondary{background:transparent;color:var(--text-secondary)}.channel-link.danger{background:transparent;color:#b91c1c;border-color:#b91c1c80}.channel-link.danger:hover{background:#b91c1c14}.channel-edit-form{width:100%;display:flex;flex-direction:column;gap:.75rem}.channel-edit-actions{display:flex;gap:.5rem}.channel-name{font-size:.95rem;font-weight:600;color:var(--text-primary)}.channel-description{font-size:.9rem;color:var(--text-secondary);margin-top:.15rem}.channel-link{font-size:.9rem;text-decoration:none;color:var(--text-primary);border-radius:999px;border:1px solid var(--border);padding:.4rem .9rem}.channel-link:hover{background:var(--surface)}.channels-empty{font-size:.9rem;color:var(--text-secondary)}.profile-section-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.profile-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-input{padding:.875rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--background);color:var(--text-primary);transition:border-color .2s ease;font-family:inherit}.form-input:focus:not(:disabled){outline:none;border-color:var(--text-primary)}.form-input:disabled{background:var(--surface);color:var(--text-secondary);cursor:not-allowed}.profile-actions{display:flex;gap:1rem;flex-wrap:wrap}.profile-button{padding:.875rem 1.5rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:opacity .2s ease;border:none;font-family:inherit}.profile-button.edit,.profile-button.save{background:var(--text-primary);color:var(--background)}.profile-button.cancel{background:transparent;color:var(--text-primary);border:1px solid var(--border)}.profile-button.logout{background:transparent;color:#d32f2f;border:1px solid rgba(211,47,47,.3)}.profile-button:hover:not(:disabled){opacity:.8}.profile-button:disabled{opacity:.6;cursor:not-allowed}.profile-message{padding:.875rem 1rem;border-radius:8px;font-size:.95rem}.profile-message.success{background:#4caf501a;border:1px solid rgba(76,175,80,.3);color:#2e7d32}.profile-message.error{background:#ff00001a;border:1px solid rgba(255,0,0,.3);color:#d32f2f}@media (max-width: 1024px){.profile-layout{flex-direction:column;gap:1rem}.profile-sidebar{width:100%;flex-direction:row;flex-wrap:wrap}.profile-sidebar-btn{flex:1;min-width:140px}}@media (max-width: 768px){.profile-page{padding:1rem}.profile-card{padding:1.5rem 1rem}.profile-avatar{width:100px;height:100px;font-size:2.5rem}.profile-name{font-size:1.5rem}.profile-actions{flex-direction:column}.profile-button{width:100%}}.my-channels-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.my-channels-container{max-width:800px;margin:0 auto}.my-channels-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}.my-channels-title{font-size:clamp(1.75rem,3vw,2.25rem);font-weight:600;color:var(--text-primary);margin:0}.my-channels-create-btn{padding:.5rem 1.25rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:.95rem;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease}.my-channels-create-btn:hover{border-color:var(--accent);color:var(--accent)}.my-channels-form-section{margin-bottom:2rem;padding:1.5rem;border-radius:12px;border:1px solid var(--border);background:var(--surface)}.my-channels-form-title{font-size:1.1rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary)}.my-channels-error{margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;background:#ef444414;color:#b91c1c;font-size:.9rem}.my-channels-form{display:flex;flex-direction:column;gap:1rem}.my-channels-form .form-group{display:flex;flex-direction:column;gap:.5rem}.my-channels-form .form-label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.my-channels-form .form-input{padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--background);color:var(--text-primary);font-family:inherit}.my-channels-form-actions{display:flex;gap:.75rem}.my-channels-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:.95rem}.my-channels-list{list-style:none;padding:0;margin:0 0 1.5rem}.my-channels-item{padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border);margin-bottom:.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:var(--surface)}.my-channels-item-content{min-width:0}.my-channels-item .channel-name{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0}.my-channels-item .channel-description{font-size:.9rem;color:var(--text-secondary);margin-top:.25rem}.my-channels-item .channel-item-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.my-channels-item .channel-link{font-size:.9rem;text-decoration:none;color:var(--text-primary);border-radius:999px;border:1px solid var(--border);padding:.4rem .9rem}.my-channels-item .channel-link:hover{background:var(--background)}.my-channels-item .channel-link.secondary{background:transparent;color:var(--text-secondary)}.my-channels-item .channel-link.danger{background:transparent;color:#b91c1c;border-color:#b91c1c80}.my-channels-item .channel-link.danger:hover{background:#b91c1c14}.my-channels-item .channel-edit-form{width:100%;display:flex;flex-direction:column;gap:.75rem}.my-channels-item .channel-edit-actions{display:flex;gap:.5rem}.my-channels-back{margin-top:1.5rem}.my-channels-back .back-link{color:var(--text-secondary);text-decoration:none;font-size:.95rem}.my-channels-back .back-link:hover{color:var(--text-primary)}.profile-button.save,.profile-button.cancel{padding:.5rem 1rem;border-radius:8px;font-size:.9rem;cursor:pointer;border:1px solid var(--border);background:var(--background);color:var(--text-primary)}.profile-button.save:hover,.profile-button.cancel:hover{border-color:var(--text-primary)}@media (max-width: 768px){.my-channels-page{padding:1.5rem}.my-channels-header{flex-direction:column;align-items:flex-start}}.create-course-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.create-course-container{max-width:900px;margin:0 auto}.create-course-header{margin-bottom:2rem}.create-course-title{font-size:clamp(2rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin-bottom:1rem;color:var(--text-primary)}.create-course-form{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2.5rem}.form-section{margin-bottom:3rem}.form-section:last-of-type{margin-bottom:0}.form-input,.form-textarea,.form-select{padding:.875rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--background);color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease;font-family:inherit}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--text-primary);box-shadow:0 0 0 3px #00000008}.form-textarea{resize:vertical;min-height:100px}.form-select{cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:2.5rem;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}.form-select:hover{border-color:var(--text-primary)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.error-message{color:#d32f2f;font-size:.85rem;margin-top:-.5rem}.module-builder{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.module-input-group{display:flex;flex-direction:column;gap:1rem}.lesson-builder{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.lesson-inputs{display:flex;flex-direction:column;gap:.75rem}.btn-add-lesson,.btn-add-module{background:var(--text-primary);color:var(--background);border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;border-radius:8px;cursor:pointer;transition:opacity .2s ease;align-self:flex-start}.btn-add-lesson:hover,.btn-add-module:hover{opacity:.8}.lessons-preview{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.lessons-preview h4{font-size:.95rem;font-weight:500;margin-bottom:.75rem;color:var(--text-primary)}.lesson-preview-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--surface);border-radius:6px;margin-bottom:.5rem;font-size:.9rem;color:var(--text-secondary)}.btn-remove{background:transparent;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.btn-remove:hover{color:#d32f2f}.modules-list{margin-top:1.5rem}.modules-list h3{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.module-item{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:1rem;margin-bottom:.75rem}.module-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.module-item-header h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0}.module-lessons-count{font-size:.85rem;color:var(--text-secondary)}.form-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.btn-cancel{background:transparent;color:var(--text-primary);border:1px solid var(--border);padding:1rem 2rem;font-size:1rem;font-weight:500;border-radius:8px;text-decoration:none;display:flex;align-items:center;transition:background .2s ease}.btn-cancel:hover{background:var(--surface)}@media (max-width: 768px){.create-course-page,.create-course-form{padding:1.5rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-submit,.btn-cancel{width:100%;justify-content:center}}.add-modules-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.add-modules-container{max-width:900px;margin:0 auto}.add-modules-header{margin-bottom:2rem}.add-modules-title{font-size:clamp(2rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin-bottom:1rem;color:var(--text-primary)}.course-info{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.course-info h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.course-info p{color:var(--text-secondary);margin:0}.modules-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;margin-bottom:2rem}.add-module-form{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.add-module-form .form-input{flex:1;min-width:250px;padding:.875rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--background);color:var(--text-primary)}.add-module-form .form-input:focus{outline:none;border-color:var(--text-primary)}.add-module-form .form-input.error{border-color:#d32f2f}.btn-add{background:var(--text-primary);color:var(--background);border:none;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:opacity .2s ease;white-space:nowrap}.error-message{color:#d32f2f;font-size:.85rem;margin-top:.5rem;width:100%}.modules-list{display:flex;flex-direction:column;gap:1rem}.module-item{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.module-item-content{display:flex;gap:1rem;margin-bottom:1rem}.module-number{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--text-primary);color:var(--background);display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.module-info{flex:1}.module-title{font-size:1.1rem;font-weight:500;margin-bottom:.25rem;color:var(--text-primary)}.module-lessons-count{font-size:.9rem;color:var(--text-secondary);margin:0}.module-actions{display:flex;gap:.75rem;align-items:center}.btn-edit{background:var(--text-primary);color:var(--background);padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-size:.95rem;font-weight:500;transition:opacity .2s ease}.btn-edit:hover{opacity:.8}.btn-remove-module{background:transparent;border:none;color:#d32f2f;font-size:1.5rem;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease;flex-shrink:0}.btn-remove-module:hover{opacity:.8}.btn-submit:hover:not(:disabled){opacity:.8}.btn-submit:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.add-modules-page{padding:1.5rem}.create-steps{flex-direction:column;gap:.5rem}.step:not(:last-child):after{display:none}.add-module-form{flex-direction:column}.btn-add{width:100%}.module-actions{flex-direction:row;justify-content:space-between}.btn-edit{flex:1;text-align:center}.btn-remove-module{flex-shrink:0}.form-actions{flex-direction:column}.btn-submit,.btn-skip{width:100%}}.add-lessons-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.add-lessons-container{max-width:900px;margin:0 auto}.add-lessons-header{margin-bottom:2rem}.add-lessons-title{font-size:clamp(2rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin-bottom:1rem;color:var(--text-primary)}.back-link{display:inline-block;color:var(--text-secondary);text-decoration:none;font-size:.95rem;transition:color .2s ease}.back-link:hover{color:var(--text-primary)}.create-steps{display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.step{flex:1;text-align:center;padding:.75rem;color:var(--text-secondary);font-size:.9rem;position:relative}.step.active{color:var(--text-primary);font-weight:500}.step.completed{color:var(--text-primary)}.step:not(:last-child):after{content:"→";position:absolute;right:-10px;color:var(--text-secondary)}.module-info-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.module-info-card h2{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.module-info{display:flex;justify-content:space-between;align-items:center}.module-info h3{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0}.module-info p{color:var(--text-secondary);margin:0}.lessons-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;margin-bottom:2rem}.section-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary)}.add-lesson-form{margin-bottom:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.form-label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.form-input,.form-textarea{padding:.875rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--background);color:var(--text-primary);font-family:inherit}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--text-primary)}.form-input.error,.form-textarea.error{border-color:#d32f2f}.form-textarea{resize:vertical}.lesson-markdown-preview{border:1px solid var(--border);border-radius:8px;background:var(--background);padding:1rem}.lesson-markdown-content{color:var(--text-primary);line-height:1.68;overflow-wrap:anywhere;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif}.lesson-markdown-content p,.lesson-markdown-content ul,.lesson-markdown-content ol,.lesson-markdown-content pre,.lesson-markdown-content blockquote{margin-bottom:.75rem}.lesson-markdown-content p{font-size:18px}.lesson-markdown-content h1,.lesson-markdown-content h2,.lesson-markdown-content h3,.lesson-markdown-content h4{color:var(--text-primary);margin:1rem 0 .55rem;letter-spacing:-.01em}.lesson-markdown-content ul,.lesson-markdown-content ol{padding-left:1.1rem}.lesson-markdown-content li{margin-bottom:.35rem}.lesson-markdown-content code{background:#eef1f4;border:1px solid var(--border);border-radius:4px;padding:.1rem .35rem;font-size:.95em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.lesson-markdown-content pre{background:#f1f3f5;border:1px solid #dfe3e8;border-radius:10px;padding:.9rem 1rem;overflow-x:auto}.lesson-markdown-content pre code{border:none;background:transparent;padding:0}.lesson-markdown-content pre .hljs{background:transparent!important;color:#1f2937}.lesson-markdown-content pre .hljs-keyword,.lesson-markdown-content pre .hljs-selector-tag,.lesson-markdown-content pre .hljs-meta .hljs-keyword,.lesson-markdown-content pre .hljs-doctag{color:#8b2bbf}.lesson-markdown-content pre .hljs-title,.lesson-markdown-content pre .hljs-title.class_,.lesson-markdown-content pre .hljs-title.function_{color:#0f766e}.lesson-markdown-content pre .hljs-string,.lesson-markdown-content pre .hljs-meta .hljs-string{color:#b45309}.lesson-markdown-content pre .hljs-number,.lesson-markdown-content pre .hljs-literal{color:#0b63c9}.lesson-markdown-content pre .hljs-comment,.lesson-markdown-content pre .hljs-quote{color:#6b7280}.theme-dark .lesson-markdown-content code{background:#253041;border-color:#334155}.theme-dark .lesson-markdown-content pre{background:#232b39;border-color:#334155}.theme-dark .lesson-markdown-content pre .hljs{color:#e5edf5}.theme-dark .lesson-markdown-content pre .hljs-keyword,.theme-dark .lesson-markdown-content pre .hljs-selector-tag,.theme-dark .lesson-markdown-content pre .hljs-meta .hljs-keyword,.theme-dark .lesson-markdown-content pre .hljs-doctag{color:#c792ea}.theme-dark .lesson-markdown-content pre .hljs-title,.theme-dark .lesson-markdown-content pre .hljs-title.class_,.theme-dark .lesson-markdown-content pre .hljs-title.function_{color:#82aaff}.theme-dark .lesson-markdown-content pre .hljs-string,.theme-dark .lesson-markdown-content pre .hljs-meta .hljs-string{color:#ecc48d}.theme-dark .lesson-markdown-content pre .hljs-number,.theme-dark .lesson-markdown-content pre .hljs-literal{color:#f78c6c}.theme-dark .lesson-markdown-content pre .hljs-comment,.theme-dark .lesson-markdown-content pre .hljs-quote{color:#9aa5b1}.error-message{color:#d32f2f;font-size:.85rem}.btn-add{background:var(--text-primary);color:var(--background);border:none;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:opacity .2s ease}.btn-add:hover{opacity:.8}.lessons-list{display:flex;flex-direction:column;gap:1rem}.lesson-item{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:1.5rem;display:flex;justify-content:space-between;align-items:flex-start}.lesson-item-content{display:flex;gap:1rem;flex:1}.lesson-number{width:2rem;height:2rem;border-radius:50%;background:var(--text-primary);color:var(--background);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.lesson-info{flex:1}.lesson-title{font-size:1.1rem;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}.loading-text{padding:1.5rem;color:var(--text-secondary);text-align:center}.lesson-description{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin:0}.btn-remove{background:transparent;border:none;color:#d32f2f;font-size:1.5rem;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease;flex-shrink:0}.btn-remove:hover{opacity:.8}.edit-actions{display:flex;gap:1rem}.btn-cancel-edit{background:transparent;color:var(--text-primary);border:1px solid var(--border);padding:.875rem 1.5rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:background .2s ease}.btn-cancel-edit:hover{background:var(--surface)}.lesson-actions{display:flex;gap:.5rem;align-items:center}.btn-edit-lesson{background:var(--text-primary);color:var(--background);border:none;padding:.5rem 1rem;font-size:.9rem;font-weight:500;border-radius:6px;cursor:pointer;transition:opacity .2s ease}.btn-edit-lesson:hover{opacity:.8}.empty-state{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.form-actions{display:flex;gap:1rem;justify-content:center}.btn-submit{background:var(--text-primary);color:var(--background);border:none;padding:1rem 2rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:opacity .2s ease}.btn-submit:hover{opacity:.8}.btn-skip{background:transparent;color:var(--text-primary);border:1px solid var(--border);padding:1rem 2rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:background .2s ease}.btn-skip:hover{background:var(--surface)}@media (max-width: 768px){.add-lessons-page{padding:1.5rem}.create-steps{flex-direction:column;gap:.5rem}.step:not(:last-child):after{display:none}.module-info{flex-direction:column;align-items:flex-start;gap:.5rem}.lesson-item,.form-actions{flex-direction:column}.btn-submit,.btn-skip{width:100%}}.my-created-courses-page{min-height:calc(100vh - 200px);padding:2rem;background:var(--background)}.my-created-courses-container{max-width:1200px;margin:0 auto}.my-created-courses-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.my-created-courses-title{font-size:clamp(2rem,4vw,2.5rem);font-weight:600;letter-spacing:-.02em;margin-bottom:.5rem;color:var(--text-primary)}.my-created-courses-subtitle{font-size:1.1rem;color:var(--text-secondary)}.btn-create-course{background:var(--text-primary);color:var(--background);padding:.875rem 1.5rem;text-decoration:none;border-radius:8px;font-weight:500;transition:opacity .2s ease;white-space:nowrap}.btn-create-course:hover{opacity:.8}.search-section{margin-bottom:2rem}.search-input{width:100%;max-width:500px;padding:.875rem 1rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;background:var(--background);color:var(--text-primary)}.search-input:focus{outline:none;border-color:var(--text-primary)}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.course-card-wrapper{position:relative}.course-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-edit,.btn-delete{flex:1;padding:.75rem 1rem;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:opacity .2s ease;border:none;font-family:inherit}.btn-edit{background:var(--text-primary);color:var(--background);text-decoration:none;display:flex;align-items:center;justify-content:center}.btn-delete{background:transparent;color:#d32f2f;border:1px solid rgba(211,47,47,.3)}.btn-edit:hover,.btn-delete:hover{opacity:.8}.empty-state{text-align:center;padding:6rem 2rem}.empty-state-icon{font-size:4rem;margin-bottom:1.5rem}.empty-state h2{font-size:1.75rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.empty-state p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2rem}.empty-state-button{display:inline-block;background:var(--text-primary);color:var(--background);padding:1rem 2rem;text-decoration:none;border-radius:8px;font-weight:500;transition:opacity .2s ease}.empty-state-button:hover{opacity:.8}.no-results{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.no-results p{font-size:1.1rem}@media (max-width: 768px){.my-created-courses-page{padding:1.5rem}.my-created-courses-header{flex-direction:column}.btn-create-course{width:100%;text-align:center}.courses-grid{grid-template-columns:1fr}.course-actions{flex-direction:column}}.app{min-height:100vh;display:flex;flex-direction:column}.section-divider{width:100%;height:.5px;margin:0;border:none;background:var(--section-divider);flex-shrink:0}@media (max-width: 768px){.app{padding-bottom:calc(56px + env(safe-area-inset-bottom,0))}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #000000;--secondary: #666666;--accent: #0070f3;--background: #ffffff;--surface: #fafafa;--border: #e5e5e5;--text-primary: #000000;--text-secondary: #666666}.theme-dark{--primary: #ffffff;--secondary: #9ca3af;--accent: #38bdf8;--background: #020617;--surface: #020617;--border: #1f2937;--text-primary: #f9fafb;--text-secondary: #9ca3af}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background-color:var(--background);line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary: #000000;--secondary: #666666;--accent: #0070f3;--background: #ffffff;--surface: #fafafa;--border: #e5e5e5;--text-primary: #000000;--text-secondary: #666666;--header-bg: rgba(255, 255, 255, .9);--section-divider: #d4d4d8}.theme-dark{--primary: #ffffff;--secondary: #9ca3af;--accent: #38bdf8;--background: #020617;--surface: #020617;--border: #1f2937;--text-primary: #f9fafb;--text-secondary: #9ca3af;--header-bg: rgba(15, 23, 42, .9);--section-divider: #374151}
