body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary:#6a1b9a;--primary-dark:#4a148c;--primary-light:#b39ddb;--primary-rgb:106,27,154;--secondary:#c2185b;--secondary-dark:#8e0038;--secondary-light:#fce4ec;--error:#ff4b4b;--error-dark:#ea2b2b;--error-light:#ffebeb;--warning:#ffc800;--warning-dark:#e6b200;--warning-light:#fff8e6;--success:#2cce71;--success-dark:#20a25a;--success-light:#eafaf1;--gold:#ffd900;--gold-light:#fff5b1;--bg-primary:#fff;--bg-secondary:#f7f7f7;--bg-tertiary:#f2f2f2;--text-primary:#3c3c3c;--text-secondary:#777;--text-light:#afafaf;--border-primary:#e0e0e0;--border-secondary:#d1d1d1;--border-active:#a5a5a5;--font-family:"Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-round:50%;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 8px #0000001a;--shadow-lg:0 6px 16px #0000001a;--shadow-btn-primary:0 4px 0 var(--primary-dark);--shadow-btn-secondary:0 4px 0 var(--secondary-dark);--shadow-btn-error:0 4px 0 var(--error-dark);--transition-fast:0.15s ease;--transition-normal:0.3s ease;--z-0:0;--z-10:10;--z-100:100;--z-1000:1000;--z-overlay:9000;--z-modal:9500;--z-toast:9999;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.5rem;--spacing-6:2rem;--spacing-7:2.5rem;--spacing-8:3rem}.course-details-container .back-button,.create-course-container .back-button{margin:1rem}.create-course-container{margin:2rem auto}.create-course-content{margin-top:2rem}.create-course-content.compact{padding:1rem 1.25rem}.course-header-container{margin:2rem}body{background-color:var(--bg-secondary);color:var(--text-primary);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;overflow-x:hidden}.App,body{margin:0;min-height:100vh;padding:0;width:100%}.App{display:flex;flex-direction:column}.main-content{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:1200px;padding:20px;width:100%}h1,h2,h3{color:var(--primary)}form{background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:2rem}form div{margin-bottom:1.5rem}label{color:var(--text-primary);display:block;font-weight:600;margin-bottom:.5rem}button:disabled{background-color:#6c757d;cursor:not-allowed}.error-message{border:1px solid var(--error);border-radius:var(--radius-sm);margin-top:1rem}.lesson-preview{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-top:2rem;padding:1.5rem}.lesson-preview h2{color:#28a745;margin-top:0}@media (max-width:600px){form{padding:1.5rem}h1{font-size:1.8rem}}.navbar{background-color:var(--primary);box-shadow:var(--shadow-sm);left:0;position:fixed;right:0;top:0;z-index:1000}.navbar-container{justify-content:space-between;margin:0 auto;max-width:1200px;padding:.75rem 2rem}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{height:60px;overflow:hidden;width:180px}.logo-image{height:100px;object-fit:cover;object-position:center 40%;transform:scale(1);width:auto}.logo-placeholder{cursor:pointer;height:100%;opacity:0;position:absolute;width:100%}.navbar-right{align-items:center;display:flex;gap:1rem}.login-button,.register-button{align-items:center;border:none;border-radius:var(--radius-md);color:var(--bg-primary);cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.login-button{background-color:var(--secondary)}.login-button:hover{background-color:var(--bg-primary);color:var(--secondary)}.register-button{background-color:var(--bg-primary);color:var(--primary);margin-left:.5rem}.register-button:hover{background-color:var(--bg-tertiary);transform:translateY(-1px)}@media (max-width:768px){.login-button,.register-button{display:none}}@media (max-width:1024px){.login-button,.register-button{display:none}}.auth-modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);cursor:default;margin:auto;max-width:450px;padding:.5rem;position:relative;transition:none;width:100%}.auth-modal-wide{max-width:90%;min-height:85vh;width:800px}.auth-modal form{background-color:initial;box-shadow:none;margin:0;padding:0;width:100%}.auth-modal h2{color:#4b4b4b;font-size:1.75rem;margin-bottom:1rem;text-align:center}.auth-modal .form-group,.auth-modal input{margin-bottom:1rem;width:100%}.auth-modal input{border:2px solid #e5e5e5;border-radius:12px;box-sizing:border-box;display:block;font-size:1rem;margin-left:auto;margin-right:auto;max-width:350px;padding:.875rem;transition:all .2s}.auth-modal input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #58cc021a;outline:none}.auth-buttons button{border-radius:var(--radius-md);box-shadow:0 4px 6px #0000001a;flex:1 1;font-weight:600;min-width:120px;padding:.75rem 1rem;text-align:center}.auth-buttons button:hover{box-shadow:0 6px 8px #00000026;transform:translateY(-2px)}.auth-buttons button:active{box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.auth-buttons button:first-child:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.auth-buttons button:last-child{background:var(--bg-tertiary);box-shadow:0 4px 0 var(--border-primary);color:var(--text-primary)}.auth-buttons button:last-child:hover{background:var(--border-primary);box-shadow:0 6px 0 var(--border-primary);transform:translateY(-2px)}.auth-error{background-color:#e74c3c1a;border-radius:8px;margin:.5rem 0 1rem;max-width:350px;padding:.5rem;width:100%}.auth-buttons button{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:700;padding:1rem;transition:all .2s;width:100%}.auth-buttons button:first-child{background:var(--primary);box-shadow:var(--shadow-btn-primary);color:var(--bg-primary)}.auth-buttons button:first-child:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.auth-buttons button:last-child:active{box-shadow:0 2px 0 #0000001a;transform:translateY(2px)}.user-email{color:#fff;font-weight:600;margin-right:1rem}.logout-button{align-items:center;background-color:#0000001a;border:none;border-radius:var(--radius-lg);color:#ffffffd9;cursor:pointer;display:flex;font-size:1rem;font-weight:800;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s ease}.logout-button:hover{background-color:#ffffff26;color:var(--bg-primary);transform:translateY(-2px)}.logout-button:active{transform:translateY(1px)}@media (max-width:768px){.logout-button{border-radius:var(--radius-md);font-size:.9rem;padding:.5rem .75rem}}.courses-container{margin:80px auto 0;max-width:1200px;min-height:40vh;padding:2rem}.courses-container h2{color:#3c3c3c;font-size:2rem;font-weight:800;margin-bottom:1.5rem}.courses-error,.courses-loading{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#4b4b4b;display:flex;flex-direction:column;font-size:1.1rem;gap:1rem;margin:2rem auto;max-width:600px;padding:3rem 2rem;text-align:center}.loading-spinner{border:3px solid var(--primary-light);height:48px;margin-bottom:.5rem;width:48px}.courses-error{border:2px solid var(--error-light);color:var(--error)}.no-courses{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:7rem;padding:3rem 2rem;text-align:center}.no-courses p{color:#4b4b4b;font-size:1.2rem;margin-bottom:1.5rem}.courses-section{margin-bottom:2.5rem}.section-title{align-items:center;color:#4b4b4b;display:flex;font-size:1.3rem;font-weight:700;gap:.5rem;margin-bottom:1rem}.section-title i{color:var(--primary);font-size:1.1rem}.courses-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:1.5rem}.course-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;overflow:hidden;position:relative;transition:all .2s ease}.course-card:hover{box-shadow:0 8px 16px #0000001a;transform:translateY(-4px)}.course-header{align-items:center;display:flex;gap:1rem;padding:1.5rem;position:relative}.course-header.private-course,.course-header.public-course{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%)}.course-header.community-course{background:linear-gradient(135deg,var(--secondary) 0,var(--secondary-dark))}.course-flag{flex-shrink:0;font-size:2.5rem}.course-header h3{color:#fff;flex-grow:1;font-size:1.25rem;font-weight:700;margin:0;text-shadow:0 1px 2px #0003}.course-badge{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:.8rem;height:26px;justify-content:center;position:absolute;right:10px;top:10px;width:26px}.community-badge,.creator-badge,.learning-badge{background-color:#ffffff4d}.course-details{background:#fff;padding:1.5rem}.course-details p{align-items:center;color:#4b4b4b;display:flex;font-size:.95rem;gap:.75rem;margin:.5rem 0}.course-details i{color:var(--primary);text-align:center;width:16px}.course-visibility{color:#777!important;font-size:.85rem!important;margin:0 0 .5rem!important}.course-visibility i{color:#777;font-size:.85rem}.create-course-button{align-items:center;background:var(--primary);border:none;border-radius:12px;box-shadow:0 4px 0 var(--primary-dark);color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:.75rem;margin:1rem auto;padding:1rem 2rem;transition:all .2s}.create-course-button i{font-size:1.2rem}.create-course-button:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.create-course-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.lessons-path{padding:1rem 0}.path-line{display:none}.lesson-circles{gap:.75rem;max-width:350px;row-gap:1.5rem}.lesson-circle-container{display:flex;justify-content:center;margin:0}.lesson-circle{border-bottom:4px solid var(--button-border,var(--primary-dark) )}.lesson-circle.completed{background:var(--secondary);background:var(--button-color,var(--secondary));border-bottom-color:#1899d6}.lesson-circle.locked{background:#e5e5e5;border-bottom-color:#ccc;cursor:not-allowed}.lesson-circle:hover{transform:translateY(-2px)}.lesson-circle:active{border-bottom-width:2px;transform:translateY(2px)}@media (max-width:500px){.lesson-circles{grid-template-columns:repeat(2,1fr);max-width:280px}}.crown-indicator{display:none}@media (min-width:768px){.lesson-blocks-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.lesson-blocks-section{margin-top:3rem}.no-lesson-blocks{box-shadow:none!important;text-align:center}.inline-lesson-block-form form{box-shadow:none}.inline-lesson-block-form h3{font-size:1.2rem}.inline-form-group{max-width:700px}.inline-form-group label{font-size:1rem;font-weight:600}.inline-form-group .input-container,.inline-form-group .select-container{margin-top:.5rem}.input-container,.select-container{margin-top:8px;max-width:700px;position:relative}.input-container input,.select-container select{background:#fff;border:2px solid #e5e5e5;border-radius:12px;color:#4b4b4b;font-size:1rem;margin-top:.75rem;padding:.875rem 3rem .875rem 1rem;transition:all .2s;width:100%}.input-container input:focus,.select-container select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #58cc021a;outline:none}.input-container input:hover,.select-container select:hover{border-color:var(--primary)}.char-count,.select-container i{color:#a0a0a0;pointer-events:none}.select-container i{position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:color .2s}.select-container select:focus+i{color:var(--primary)}.select-container select option{font-size:1.1rem;padding:1rem}.inline-form-group label:after{color:#ff4b4b;content:" *"}.error-message{background:#fff0f0;border:2px solid #ffe5e5;border-radius:12px;color:#ff4b4b;font-weight:500;margin:1rem 0;text-align:center}@media (max-width:768px){.inline-lesson-block-form{padding:1.5rem}}.course-actions{display:flex;justify-content:flex-end;margin-bottom:2rem}.create-unit-button{align-items:center;background:var(--primary);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:.5rem;padding:1rem 2rem;transition:all .2s;width:auto}.create-unit-button:hover{background:var(--primary-dark);transform:translateY(-1px)}.create-unit-button i{font-size:1rem}.unit-form-modal{background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000026;cursor:default;max-width:480px;overflow:hidden;width:100%}.modal-header{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);padding:1.25rem 1.5rem}.modal-header h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.modal-close-button{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.modal-close-button:hover{background-color:#fff3}.modal-close-button:active{transform:scale(.95)}.unit-form-modal form{padding:1.5rem}.input-container{align-items:center;display:flex}.unit-form-modal input{border:2px solid #e5e5e5;border-radius:12px;font-size:1rem;padding:.875rem 3rem .875rem 1rem;transition:all .2s;width:100%}.unit-form-modal input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #58cc021a;outline:none}.char-count{font-size:.85rem}.form-help-text{color:#666;margin:.5rem 0 .75rem}.unit-form-modal .form-group{margin-bottom:1.5rem}.unit-form-modal .submit-button{padding:.875rem 1.5rem}@media (max-width:768px){.unit-form-modal{margin:1rem;max-height:calc(100vh - 2rem)}}.fa-spinner{animation:spin 1s linear infinite}.course-details-container .back-button,.create-course-container .back-button{align-items:center;background:#fff;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:var(--secondary);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:flex-start!important;margin:.5rem 1rem;padding:.65rem 1rem;transition:all .2s ease;width:fit-content!important}.back-button i{font-size:1.1rem}.course-details-container .back-button:hover,.create-course-container .back-button:hover{box-shadow:0 4px 8px #0000001a;color:var(--secondary-dark);transform:translateY(-1px)}.course-details-container .back-button:active,.create-course-container .back-button:active{box-shadow:0 1px 2px #0000000d;transform:translateY(1px)}@media (max-width:1024px){.course-details-container .back-button,.create-course-container .back-button{display:inline-flex!important;justify-content:flex-start!important;margin:1rem!important;width:fit-content!important}}@media (max-width:480px){.course-details-container .back-button,.create-course-container .back-button{display:inline-flex!important;justify-content:flex-start!important;margin:1rem!important;width:fit-content!important}}.modal-buttons{margin-top:2rem}.create-button{padding:.875rem 1.5rem;width:100%}.create-button:disabled{background:#ccc;box-shadow:0 4px 0 #999}.creating-indicator{gap:8px}.creating-spinner{border:3px solid #ffffff4d;height:24px;margin-bottom:4px;width:24px}.creating-subtext{font-size:.85rem;font-weight:400;margin-top:2px;opacity:.9}.create-button{position:relative}.create-button:disabled{background:var(--primary);cursor:default;opacity:1;transform:none}.course-details-container{max-width:1200px}.lesson-blocks-grid{display:flex;flex-direction:column;gap:2rem;margin:2rem 0}.lesson-block-card{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;padding:2rem;width:100%}.lesson-block-header{align-items:center;border-bottom:1px solid #e5e5e5;display:flex;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem}.lesson-block-header i{align-items:center;aspect-ratio:1;background:var(--secondary-dark);border-radius:50%;color:var(--secondary-light);display:flex;flex-shrink:0;font-size:2rem;height:56px;justify-content:center;width:56px}.lesson-block-header h2{color:#4b4b4b;font-size:1.5rem;margin:0}.lesson-circles{justify-content:space-between;margin:0 auto;max-width:800px;padding:0 20px}.lesson-circle{height:60px;width:60px}.create-lesson-block-button{justify-content:center;margin:2rem 0;max-width:300px;width:100%}.no-lesson-blocks{margin-top:2rem;padding:4rem 2rem}@media (max-width:768px){.course-details-container{padding:1rem}.lesson-block-card{padding:1.5rem}.lesson-circles{gap:2rem;justify-content:flex-start;overflow-x:auto;padding-bottom:1rem}.path-line{left:0;right:0}.lesson-block-header i{font-size:1.8rem;height:52px;width:52px}}@media (max-width:480px){.lesson-block-card{padding:1.25rem}.lesson-circles{gap:1rem;padding:0 .5rem}.lesson-block-header i{font-size:1.6rem;height:48px;width:48px}}.modal-overlay{z-index:2000}body.modal-open{overflow:hidden}.create-course-page{background-color:#f7f7f7;margin-top:60px;min-height:calc(100vh - 60px);padding:.75rem}.create-course-container{margin:.5rem auto;max-width:700px}.create-course-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-top:1rem;padding:1rem}.create-course-content.compact{padding:.25rem 1.25rem}.compact .create-course-form{gap:.5rem}.compact h2{font-size:1.4rem;margin-bottom:.75rem;padding-top:0}.create-course-content h2{color:#4b4b4b;font-size:1.5rem;font-weight:700;margin-bottom:1rem;text-align:center}.create-course-form{box-shadow:none;display:flex;flex-direction:column;gap:.75rem}.form-group{margin-bottom:.5rem}.form-group label{color:#4b4b4b;font-size:.9rem;margin-bottom:.25rem}.form-group input{border:2px solid #e5e5e5;border-radius:8px;box-sizing:border-box;font-size:.95rem;padding:.6rem .75rem}.language-selection{align-items:center;display:flex;gap:.75rem;margin:.25rem 0}.compact .language-selection{gap:.5rem;margin:.25rem 0}.language-group{flex:1 1}.language-select-wrapper{align-items:center;display:flex;position:relative}.language-select-wrapper select{appearance:none;background:#fff;border:2px solid #e5e5e5;border-radius:8px;box-sizing:border-box;cursor:pointer;font-size:.95rem;padding:.6rem 2.5rem .6rem .75rem;transition:all .2s;width:100%}.language-select-wrapper:after{color:#4b4b4b;content:"▼";font-size:.7rem;pointer-events:none;right:.75rem}.language-flag,.language-select-wrapper:after{position:absolute;top:50%;transform:translateY(-50%)}.language-flag{font-size:1.2rem;right:2rem}.privacy-toggle{background:var(--bg-secondary);border-radius:8px;margin:.25rem 0;padding:.5rem .75rem}.toggle-row{align-items:center;display:flex;gap:.75rem}.toggle-label{display:inline-block;height:22px;margin:0;position:relative;width:40px}.toggle-input{height:0;opacity:0;position:absolute;width:0}.toggle-switch{background-color:var(--border-primary);border-radius:34px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.2s}.toggle-switch:before{background-color:#fff;border-radius:50%;bottom:2px;content:"";height:18px;left:2px;position:absolute;transition:.2s;width:18px}.toggle-input:checked+.toggle-switch{background-color:var(--primary)}.toggle-input:checked+.toggle-switch:before{transform:translateX(18px)}.toggle-text{color:var(--text-primary);font-size:.95rem;font-weight:600;line-height:1}.privacy-description{color:var(--text-secondary);font-size:.75rem;line-height:1.3;margin:.25rem 0 0}.form-buttons{display:flex;gap:.5rem;margin-top:.75rem;min-height:48px}.form-buttons .submit-loading{align-items:center;display:flex;flex:none;justify-content:center;margin:0 auto;padding:0}.compact .form-buttons{margin-top:.5rem}.submit-button{background:var(--primary);border:none;border-radius:8px;box-shadow:0 3px 0 var(--primary-dark);color:#fff;cursor:pointer;flex:2 1;font-size:.95rem;font-weight:700;padding:.6rem 1rem;transition:all .2s}.submit-button:hover{box-shadow:0 4px 0 var(--primary-dark);transform:translateY(-1px)}.submit-button:active{box-shadow:0 1px 0 var(--primary-dark);transform:translateY(2px)}.cancel-button{border-radius:8px;box-shadow:0 3px 0 #e0e0e0;font-size:.95rem;padding:.6rem 1rem}.cancel-button:hover{box-shadow:0 4px 0 #e0e0e0;transform:translateY(-1px)}.cancel-button:active{box-shadow:0 1px 0 #e0e0e0;transform:translateY(2px)}.back-button{align-items:center;background:#fff;border:1px solid #0000000d;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:var(--secondary);display:flex;font-weight:600;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;transition:all .2s ease}.course-details-page{background-color:#f7f7f7;margin-top:60px;min-height:calc(100vh - 60px)}.course-details-container{margin:0 auto;max-width:1000px;padding:2rem}.course-header-container{background-color:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;margin:1.5rem 0;max-width:1000px;overflow:hidden;width:100%}.course-header-main{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;padding:1.5rem}.course-title-section{align-items:center;display:flex;gap:1rem;margin-bottom:.75rem}.course-flag{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:3rem}.course-title-section h1{color:#fff;flex-grow:1;font-size:2rem;font-weight:800;margin:0;text-shadow:0 1px 2px #0003}.course-language-display{align-items:center;color:#fff;display:flex;font-size:1.2rem;font-weight:500;gap:.75rem;opacity:.9}.language-arrow{align-items:center;background-color:#ffffff4d;border-radius:50%;display:flex;font-size:.9rem;height:24px;justify-content:center;margin:0 .5rem;opacity:1;width:24px}.language-from,.language-to{font-weight:600}.course-status-badges{align-items:flex-start;background-color:#f7f7f7;display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem 1.5rem}.status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;width:fit-content!important}.creator-badge{background-color:var(--primary-dark);color:#fff}.creator-badge i{color:#fff}.public-badge{background-color:var(--secondary-light)}.public-badge,.public-badge i{color:var(--secondary)}.private-badge{background-color:#ff4b4b1a;color:#ea2b2b}.private-badge i{color:#ff4b4b}.community-badge{background-color:var(--secondary-dark);width:fit-content!important}.community-badge,.community-badge i{color:var(--secondary-light)}@media (max-width:1024px){.status-badge{display:inline-flex!important;width:fit-content!important}.course-status-badges{justify-content:flex-start;padding:1rem}.community-badge{display:inline-flex!important;width:fit-content!important}}@media (max-width:480px){.status-badge{display:inline-flex!important;width:fit-content!important}.course-status-badges{justify-content:flex-start;padding:.75rem 1rem}.community-badge{display:inline-flex!important;width:fit-content!important}}.edit-course-button{align-items:center;background-color:#fff3;border:none;border-radius:50%;box-shadow:none;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:40px;justify-content:center;transition:all .2s;width:40px}.edit-course-button:hover{background-color:#ffffff4d;box-shadow:none;transform:translateY(-2px)}.edit-course-button:active{box-shadow:none;transform:translateY(1px)}@media (max-width:768px){.course-header-container{margin-bottom:1.5rem}.course-header-main{padding:1.25rem}.course-title-section{gap:.75rem}.course-flag{font-size:2.25rem}.course-title-section h1{font-size:1.5rem}.course-language-display{font-size:1rem}.course-status-badges{flex-direction:column;gap:.5rem;padding:.75rem 1.25rem}.status-badge{justify-content:center;width:100%}}.lesson-blocks-section{margin-top:2rem}.no-lesson-blocks{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden}.no-lesson-blocks p{color:#606060;font-size:1.2rem;margin:0;padding:3rem 2rem;text-align:center}.create-lesson-block-button{align-items:center;background:var(--primary);border:none;border-radius:12px;box-shadow:0 4px 0 var(--primary-dark);color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:.75rem;margin:3rem auto;padding:1rem 2rem;transition:all .2s}.create-lesson-block-button:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.create-lesson-block-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.inline-lesson-block-form{margin:0 auto;max-width:800px;padding:2rem}.inline-lesson-block-form h3{color:#3c3c3c;font-size:1.5rem;font-weight:700;margin:0 0 1.5rem;text-align:center}.inline-form-group{margin-bottom:1.5rem}.inline-form-group label{color:#4b4b4b;display:block;font-size:.95rem;font-weight:700;margin-bottom:.25rem}.form-help-text{color:#787878;font-size:.8rem!important;line-height:1.2;margin:.25rem 0 .5rem!important;max-width:100%;padding:0!important}.input-container{margin-bottom:1.5rem}.input-container input{border:2px solid #e5e5e5;border-radius:12px;font-size:1rem;padding:.875rem 3rem .875rem 1rem}.input-container input:focus{box-shadow:0 0 0 4px #58cc021a}.char-count{color:#999;font-size:.8rem}.inline-form-buttons{display:flex;gap:.75rem;margin-top:1.5rem}.create-button{background:var(--primary);border:none;border-radius:12px;box-shadow:0 4px 0 var(--primary-dark);color:#fff;cursor:pointer;flex:2 1;font-size:1rem;font-weight:700;min-height:48px;padding:.875rem 1.25rem;transition:all .2s}.create-button:hover:not(:disabled){box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.create-button:active:not(:disabled){box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.create-button:disabled{background:#a5a5a5;box-shadow:0 4px 0 #7a7a7a;cursor:not-allowed;opacity:.8}.cancel-button{background:#f7f7f7;border:none;border-radius:12px;color:#4b4b4b;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:.875rem 1.25rem;transition:all .2s}.cancel-button:hover{background:#efefef}.creating-indicator{align-items:center;display:flex;flex-direction:column;gap:.375rem}.creating-spinner{animation:spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-top-color:#fff;height:20px;width:20px}.creating-subtext{color:#787878;font-size:.9rem;margin-top:.5rem}.loading-container{background:#0000;box-shadow:none;min-height:65vh}.loading-content{align-items:center;background:#0000;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:2rem;text-align:center}.loading-content p{color:#4b4b4b;font-size:1.1rem;font-weight:500;margin:0}.loading-spinner{animation:spin 1.2s linear infinite;border:4px solid var(--primary-light);height:56px;width:56px}@media (max-width:768px){.courses-container{padding:1rem}.courses-grid{grid-template-columns:1fr}.course-header{padding:1.25rem}.course-flag{font-size:2.25rem}.course-details{padding:.75rem 1.25rem}.section-title{font-size:1.2rem}}.course-progress{margin:0 0 .75rem}.course-title-edit{flex-grow:1}.course-title-input{background:#fff3;border:2px solid #fff6;border-radius:8px;box-sizing:border-box;color:#fff;font-size:1.8rem;font-weight:700;padding:.5rem .75rem;width:100%}.course-title-input::placeholder{color:#ffffffb3}.course-title-input:focus{background:#ffffff40;border-color:#fffc;outline:none}.privacy-toggle-container{align-self:flex-start;background:#fff;border-radius:20px;box-shadow:0 1px 3px #0000001a;display:inline-flex;padding:.75rem 1rem;width:auto}.toggle-switch-label{align-items:center;color:#4b4b4b;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.75rem;white-space:nowrap}.toggle-label-text{align-items:center;display:flex;gap:.5rem}.toggle-label-text strong{color:var(--primary)}.toggle-switch-wrapper{display:inline-block;height:24px;position:relative;width:48px}.toggle-switch-input{height:0;opacity:0;width:0}.toggle-switch-ui:before{background-color:#fff;border-radius:50%;bottom:2px;content:"";height:20px;left:2px;position:absolute;transition:.3s;width:20px}.toggle-switch-input:checked+.toggle-switch-ui{background-color:var(--primary)}.toggle-switch-input:checked+.toggle-switch-ui:before{transform:translateX(24px)}.edit-actions,.edit-actions-row{display:flex;gap:.75rem;margin-top:.75rem;width:100%}.edit-actions-row{justify-content:center}.cancel-edit-button,.save-edit-button{align-items:center;border:none;border-radius:20px;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.5rem 1rem;transition:all .2s}.save-edit-button{background-color:var(--primary);box-shadow:0 3px 0 var(--primary-dark);color:#fff;min-width:120px}.save-edit-button:hover:not(:disabled){box-shadow:0 5px 0 var(--primary-dark);transform:translateY(-2px)}.save-edit-button:active:not(:disabled){box-shadow:0 2px 0 var(--primary-dark);transform:translateY(1px)}.save-edit-button:disabled{background-color:#a5a5a5;box-shadow:0 3px 0 #858585;cursor:not-allowed;opacity:.8}.cancel-edit-button{background-color:#f2f2f2;color:#4b4b4b;min-width:120px}.cancel-edit-button:hover{background-color:#e5e5e5}@media (max-width:768px){.course-title-input{font-size:1.4rem;padding:.4rem .5rem}.edit-actions-row{flex-direction:row;justify-content:space-between}.cancel-edit-button,.save-edit-button{flex:1 1;max-width:48%;min-width:0;padding:.5rem .75rem}}.course-edit-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.course-edit-row .status-badge{margin-right:auto}@media (max-width:768px){.course-edit-row{align-items:flex-start;flex-direction:column}.course-edit-row .status-badge{margin-bottom:.5rem;margin-right:0}}.toggle-label-text strong.text-public{color:var(--primary)}.toggle-label-text strong.text-private{color:#ff4b4b}.toggle-switch-ui{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-switch-ui.public{background-color:var(--primary)}.toggle-switch-ui.private{background-color:#ff4b4b}.lesson-block-types-container{background:#fff;margin:0 auto;max-width:600px;padding:2rem;text-align:center}.lesson-block-types-container h3{color:#3c3c3c;font-size:1.5rem;font-weight:700;margin:0 0 1.5rem;text-align:center}.lesson-block-types-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.lesson-block-type-button{align-items:center;background:#f7f7f7;border:2px solid #e5e5e5;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 1rem;transition:all .2s}.lesson-block-type-button:hover{border-color:var(--primary);box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.lesson-block-type-button:active{transform:translateY(1px)}.lesson-block-type-button i{color:var(--primary);font-size:2rem;margin-bottom:.75rem}.lesson-block-type-button span{color:#4b4b4b;font-size:1rem;font-weight:600}.lesson-block-form-modal,.lesson-block-types-modal{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.lesson-block-form-modal .inline-lesson-block-form,.lesson-block-types-modal .lesson-block-types-container{border-radius:16px;box-shadow:0 4px 24px #00000026;max-height:90vh;overflow-y:auto;width:100%}.coming-soon-message{padding:2rem 0;text-align:center}.coming-soon-message p{color:#4b4b4b;font-size:1.1rem;margin-bottom:1.5rem}@media (max-width:768px){.lesson-block-types-grid{grid-template-columns:1fr}.lesson-block-type-button{padding:1.25rem 1rem}.inline-lesson-block-form,.lesson-block-types-container{padding:1.5rem}}.wide-form{max-width:800px!important;width:80%!important}@media (max-width:900px){.wide-form{max-width:90%!important;width:90%!important}}.duolingo-title{color:var(--primary);font-size:1.8rem;font-weight:800;margin:0 0 1.8rem;padding-bottom:.8rem;position:relative;text-align:center}.duolingo-title:after{background:var(--primary);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.duolingo-title span{color:var(--secondary)}.modern-title{border-bottom:none;color:#4b4b4b;font-size:1.8rem;font-weight:700;margin:0 0 1.5rem;padding-bottom:0;text-align:center}.modern-title strong{color:var(--primary);font-weight:800}.creation-method-selector{display:flex;flex-direction:row;gap:16px;justify-content:space-between;margin-bottom:20px;max-width:700px}.method-option{align-items:center;border:2px solid #e5e5e5;border-radius:var(--radius-md);cursor:pointer;display:flex;flex:1 1;justify-content:flex-start;padding:16px 24px;transition:all .2s}.method-option:hover{background-color:rgba(var(--primary-rgb),.05);border-color:var(--primary-light)}.method-option.active{background-color:rgba(var(--primary-rgb),.1);border-color:var(--primary)}.method-option i{color:var(--primary);font-size:24px;margin-right:16px}.method-details{flex:1 1}.method-title{display:block;font-size:16px;font-weight:600;margin-bottom:4px}.method-description{color:var(--text-secondary);display:block;font-size:14px}.method-radio{align-items:center;display:flex;justify-content:center;margin-left:16px}.method-radio input[type=radio]{height:0;opacity:0;position:absolute;width:0}.radio-custom{border:2px solid #ddd;border-radius:50%;display:inline-block;height:22px;position:relative;transition:all .2s;width:22px}.method-option:hover .radio-custom{border-color:var(--primary-light)}.method-option.active .radio-custom{border-color:var(--primary)}.method-option.active .radio-custom:after{background:var(--primary);border-radius:50%;content:"";height:12px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:12px}.number-input-container{max-width:700px;padding:20px 0;position:relative}.range-slider{-webkit-appearance:none;background:#e5e5e5;border-radius:4px;height:8px;opacity:.7;outline:none;transition:opacity .2s;width:100%}.range-slider::-webkit-slider-thumb{appearance:none;background:var(--primary);border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:20px;width:20px}.range-slider::-moz-range-thumb{background:var(--primary);border:none;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:20px;width:20px}.range-slider::-webkit-slider-thumb:hover{opacity:1}.range-slider::-moz-range-thumb:hover{opacity:1}.number-display{color:var(--primary);font-size:1.5rem;font-weight:700;margin:10px 0;text-align:center}.range-labels{color:var(--text-secondary);display:flex;font-size:.8rem;justify-content:space-between;margin-top:5px}[dir=rtl] .method-option i{margin-left:16px;margin-right:0}[dir=rtl] .method-radio{margin-left:0;margin-right:16px}.manual-creation-container{margin:0 auto;max-width:700px;padding:.5rem}.manual-creation-header{border-bottom:1px solid #e5e5e5;color:#777;display:flex;font-size:1.1rem;font-weight:500;justify-content:space-between;margin-bottom:1.5rem;padding:.5rem 1rem .75rem}.manual-creation-header span:first-child{flex:1 1;margin-right:1.5rem}.manual-creation-header span:nth-child(2){flex:1 1}.manual-creation-header span:last-child{width:40px}.manual-creation-row{display:flex;margin-bottom:0;position:relative}.manual-creation-row input{background-color:#fff;border:2px solid #e5e5e5;border-radius:16px;flex:1 1;margin-right:1.5rem;padding:1rem}.manual-creation-row input:last-of-type{margin-right:.75rem}.manual-creation-row input:focus{box-shadow:0 0 0 2px #58cc0233}.row-actions{align-items:center;width:40px}.remove-button{background-color:#f2f2f2;border-radius:50%;color:#afafaf;height:32px;margin-top:20px;transition:all .2s ease;width:32px}.remove-button i{font-size:.9rem}.remove-button:hover{background-color:#fee;color:#e54545}.manual-creation-controls{justify-content:center;margin:2rem 0 1rem}.add-button{background-color:#e5fac3;border:none;border-radius:50px;box-shadow:0 2px 4px #0000001a;color:#58a700;display:inline-flex;font-size:1rem;font-weight:700}.add-button:hover:not(:disabled){background-color:#d7f5a3;box-shadow:0 2px 6px #00000026}.add-button:active:not(:disabled){box-shadow:0 1px 2px #0000001a;transform:translateY(1px)}.add-button:disabled{background-color:#f0f0f0;box-shadow:none;color:#aaa}.bulk-add-button{background-color:#f7f7f7;border:2px solid #e5e5e5;border-radius:50px;color:var(--secondary);display:inline-flex;font-size:1rem;font-weight:700}.bulk-add-button:hover:not(:disabled){background-color:#e5f5fd;border-color:var(--secondary)}.bulk-add-button:active:not(:disabled){transform:translateY(1px)}.bulk-add-button:disabled{background-color:#f0f0f0;border-color:#e0e0e0;color:#aaa}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:#0009;padding:1rem}.bulk-add-modal{animation:modalAppear .3s ease-out;border-radius:16px;box-shadow:0 8px 24px #00000026;max-width:550px}.modal-header{border-bottom:1px solid #f0f0f0}.modal-header h3{color:#3c3c3c;font-size:1.3rem;font-weight:700}.close-modal-button{border-radius:50%;color:#888;height:36px;width:36px}.close-modal-button:hover{background-color:#f5f5f5;color:#333}.close-modal-button:active{transform:scale(.95)}.modal-instructions{color:#4b4b4b;line-height:1.5;margin-bottom:1.2rem;margin-top:0}.modal-example{background-color:#f8f8f8;border-left:3px solid var(--primary);border-radius:12px;color:#4b4b4b;font-size:.95rem;padding:1.2rem}.modal-example code{color:#3c3c3c;display:inline-block;font-size:.9rem;margin:.25rem 0}.bulk-input-textarea{border:2px solid #e5e5e5;border-radius:12px;font-family:inherit;min-height:140px;padding:1.2rem;transition:all .2s}.bulk-input-textarea:focus{border-color:var(--secondary);box-shadow:0 0 0 3px #1cb0f633}.modal-footer{background-color:#f8f8f8;border-top:1px solid #f0f0f0;justify-content:center!important;padding:1.2rem 1.5rem}.modal-footer .cancel-button{background-color:#fff;border:2px solid #e5e5e5;border-radius:12px;color:#3c3c3c;font-weight:700;padding:.8rem 1.5rem}.modal-footer .cancel-button:hover{background-color:#f0f0f0}.modal-footer .submit-button{background-color:var(--primary);border-radius:12px;box-shadow:0 2px 4px #58cc024d;font-weight:700;padding:.8rem 1.8rem}.modal-footer .submit-button:hover{background-color:var(--primary-dark);box-shadow:0 3px 6px #58cc0266}.modal-footer .submit-button:active{box-shadow:0 1px 2px #58cc0266;transform:translateY(1px)}.listening-path .lesson-circles{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin:1rem 0}.listening-path .lesson-circle-container{margin:.5rem}.lesson-circle i,.lesson-circle span{align-items:center;display:flex;font-size:1.2rem;height:100%;justify-content:center;width:100%}.listening-path .path-line{margin:0 auto;width:80%}@media (max-width:600px){.listening-path .lesson-circles{gap:1rem}}.listening-path .lesson-circles,.reading-path .lesson-circles{display:flex;gap:2rem;justify-content:space-between;margin:0 auto;max-width:800px;padding:0 20px}.listening-path .lesson-circle-container,.reading-path .lesson-circle-container{margin:0}.dialogue-circle,.reading-circle{background:linear-gradient(135deg,#ff9600,#e08600)!important;border-bottom:4px solid #c70!important;color:#fff;height:60px!important;width:60px!important}.listening-path .path-line,.reading-path .path-line{background:#e5e5e5;height:4px;left:40px;position:absolute;right:40px;top:50%;transform:translateY(-50%);z-index:1}.listening-path,.reading-path{padding:2rem 1rem;position:relative}.flashcards-container{margin:0 auto;max-width:90%;padding:1.5rem 1rem}.flashcards-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000001a;max-width:100%;overflow-x:auto}.flashcards-table{border-collapse:collapse;font-size:1rem;margin-bottom:0;width:100%}.flashcards-table thead{background-color:#f7f7f7;border-bottom:2px solid #e5e5e5}.flashcards-table th{color:#4b4b4b;font-size:.95rem;font-weight:700;letter-spacing:.5px;padding:1rem 1.5rem;text-align:left;text-transform:uppercase}.flashcards-table td{border-bottom:1px solid #f2f2f2;color:#4b4b4b;padding:1rem 1.5rem}.flashcard-row:hover{background-color:#f9f9f9}.flashcard-row:last-child td{border-bottom:none}.flashcard-from,.flashcard-to{font-size:1.05rem}.flashcard-from{font-weight:600}.no-flashcards{align-items:center;background:#fff;border-radius:12px;display:flex;justify-content:center;padding:3rem;text-align:center}.no-flashcards p{color:#777;font-size:1.1rem;margin:0}.flashcards-actions{flex-direction:row;justify-content:space-evenly!important;margin-bottom:30px}.practice-flashcards-button{align-items:center;align-self:flex-start;background-color:var(--primary);border:none;border-radius:12px;box-shadow:0 4px 0 var(--primary-dark);color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;justify-content:center;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase;transition:background-color .2s}.practice-flashcards-button:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.practice-flashcards-button:active{background-color:var(--primary);box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.practice-flashcards-button i{font-size:18px;margin-right:8px}.expand-flashcards-button{background-color:#f7f7f7;border:2px solid #e5e5e5;border-radius:12px;color:#4b4b4b;font-weight:600;margin-top:8px;padding:10px;transition:all .2s}.expand-flashcards-button:hover{background-color:#efefef;border-color:#d9d9d9}.expand-flashcards-button i{margin-right:6px}@media (max-width:768px){.flashcards-container{padding:10px}}.flashcard-progress{margin:1rem 0;width:50%}.expand-flashcards-button{background-color:#f5f5f5;border:none;border-top:1px solid #e0e0e0;color:#555;cursor:pointer;display:block;font-size:14px;margin-top:5px;padding:8px;text-align:center;transition:background-color .2s;width:100%}.expand-flashcards-button:hover{background-color:#e8e8e8}.expand-flashcards-button i{margin-right:5px}.token-counter{align-items:center;background-color:#fff3;border:2px solid #ffffff4d;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#fff;display:flex;font-size:1rem;font-weight:700;margin-right:16px;padding:6px 12px;transition:all .2s}.token-counter:hover{background-color:#ffffff40;cursor:pointer;transform:translateY(-2px)}.token-counter i{color:var(--warning);font-size:1.25rem;margin-right:.5rem}.token-count{font-family:Nunito,Segoe UI,sans-serif;font-size:1.1rem}@media (max-width:768px){.token-counter{font-size:.9rem;margin-right:10px;padding:5px 10px}.token-counter i{font-size:.9rem;margin-right:4px}.token-count{font-size:.9rem}}.navbar-links{gap:1.25rem;margin-left:2rem}.nav-link,.navbar-links{align-items:center;display:flex}.nav-link{background-color:#0000001a;border-radius:var(--radius-lg);color:#ffffffd9;font-size:1rem;font-weight:800;gap:.5rem;padding:.75rem 1.25rem;position:relative;text-decoration:none;transition:all .2s ease}.nav-link:hover{background-color:#ffffff26;color:var(--bg-primary);transform:translateY(-2px)}.nav-link.active{background-color:var(--bg-primary);box-shadow:var(--shadow-sm);color:var(--primary)}.nav-link i{font-size:1.1rem}.nav-link.active i{color:var(--primary)}@keyframes navBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.nav-link:active{transform:translateY(1px)}.nav-link.active:hover{animation:navBounce .5s ease;background-color:var(--bg-primary);color:var(--primary);transform:none}@media (max-width:768px){.navbar-links{gap:.75rem;margin-left:.5rem}.logout-button,.nav-link{border-radius:var(--radius-md);font-size:.2rem;padding:.4rem .65rem}}.community-courses-container{margin:80px auto 0;max-width:1200px;padding:2rem}.page-title{color:#3c3c3c;font-size:2rem;font-weight:800;margin-bottom:.5rem}.page-description{color:#666;font-size:1.1rem;margin-bottom:2rem}.placeholder-message{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:3rem 2rem;text-align:center}.placeholder-message p{color:#666;font-size:1.1rem}@media (max-width:768px){.navbar-links{gap:1rem;margin-left:1rem}.nav-link{font-size:.4rem;padding:.4rem .6rem}.community-courses-container{padding:1rem}}.course-creator{align-items:center;display:flex;gap:.75rem;margin-bottom:1rem}.profile-circle{align-items:center;border:2px solid var(--primary);border-radius:50%;display:flex;flex-shrink:0;height:32px;justify-content:center;overflow:hidden;width:32px}.no-border{border:none!important;border-radius:0!important}.profile-circle img{height:100%;object-fit:cover;width:100%}.profile-placeholder{align-items:center;background-color:#fff;color:var(--primary);display:flex;font-size:.9rem;height:100%;justify-content:center;width:100%}.creator-name{color:#666;font-size:.9rem}.delete-course-button{align-items:center;background-color:var(--error);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-error);color:#fff;cursor:pointer;display:flex;font-weight:700;gap:8px;margin-left:1rem;padding:.5rem 1rem;transition:all .2s ease}.delete-course-button:hover{box-shadow:0 6px 0 var(--error-dark);transform:translateY(-2px)}.delete-course-button:active{box-shadow:0 2px 0 var(--error-dark);transform:translateY(2px)}.delete-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--z-modal)}.delete-modal{animation:modal-pop .3s forwards;background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:500px;overflow:hidden;width:90%}.delete-modal-header{align-items:center;border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;padding:1.5rem}.delete-modal-header h2{align-items:center;color:var(--error);display:flex;gap:8px;margin:0}.close-modal-button{font-size:1.2rem}.delete-modal-content{box-sizing:border-box;padding:1.5rem;width:100%}.delete-warning{align-items:center;background-color:var(--error-light);border-radius:var(--radius-md);color:var(--error);display:flex;font-weight:700;gap:8px;margin-bottom:1rem;padding:.75rem}.delete-confirmation-input{border:2px solid var(--border-primary);border-radius:var(--radius-md);box-sizing:border-box;font-size:1rem;margin-top:1rem;max-width:100%;padding:.75rem;width:100%}.delete-confirmation-input:focus{border-color:var(--error);outline:none}.delete-modal-actions{border-top:1px solid var(--border-primary);display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.cancel-delete-button{background-color:var(--bg-tertiary)}.cancel-delete-button,.confirm-delete-button{border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:700;padding:.75rem 1.5rem}.confirm-delete-button{align-items:center;background-color:var(--error);color:#fff;display:flex;gap:8px}.confirm-delete-button:disabled{cursor:not-allowed;opacity:.6}.block-name-container{align-items:center;display:flex;width:100%}.block-name-container h2{margin-right:auto}.block-actions{gap:.5rem}.delete-block-button,.edit-block-button{align-items:center;background-color:initial;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:inline-flex;height:28px;justify-content:center;margin:0;opacity:.7;overflow:hidden;padding:0;position:relative;transition:all .15s ease;width:28px}.delete-block-button i,.edit-block-button i{align-items:center;display:flex;font-size:14px;height:100%;justify-content:center;line-height:1;width:100%}.block-actions{display:flex;gap:6px;margin-left:10px}.edit-block-button:hover{background-color:var(--bg-tertiary);color:var(--primary);opacity:1}.delete-block-button:hover{background-color:var(--error-light);color:var(--error);opacity:1}.block-name-edit{align-items:center;display:flex;width:100%}.block-name-input{border:2px solid var(--primary-light);border-radius:var(--radius-md);flex:1 1;font-size:1rem;margin-right:.5rem;padding:.5rem}.block-edit-actions{gap:.5rem}.cancel-block-edit-button,.save-block-edit-button{align-items:center;border:none;border-radius:50%;cursor:pointer;display:inline-flex;height:28px;justify-content:center;margin:0;overflow:hidden;padding:0;position:relative;transition:all .15s ease;width:28px}.save-block-edit-button{background-color:var(--success);color:#fff}.save-block-edit-button:hover{background-color:var(--success-dark)}.save-block-edit-button:disabled{cursor:not-allowed;opacity:.5}.cancel-block-edit-button{background-color:var(--bg-tertiary);color:var(--text-secondary)}.cancel-block-edit-button:hover{background-color:var(--border-primary)}.cancel-block-edit-button i,.save-block-edit-button i{align-items:center;display:flex;font-size:14px;height:100%;justify-content:center;line-height:1;width:100%}.block-edit-actions{display:flex;gap:6px}.navbar-profile{align-items:center;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;gap:8px;padding:8px 12px;position:relative;transition:background-color .2s}.navbar-profile:hover{background-color:#ffffff1a}.navbar-profile .profile-circle{align-items:center;background-color:#fff3;border-radius:50%;color:#fff;display:flex;height:32px;justify-content:center;width:32px}.navbar-profile .profile-circle img{border-radius:50%;height:100%;object-fit:cover;width:100%}.profile-dropdown{background-color:#fff;border:1px solid #00000014;border-radius:12px;box-shadow:0 4px 16px #0000001a;min-width:220px;padding:8px 0;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}.profile-dropdown-item{align-items:center;color:#3c3c3c;display:flex;font-size:.95rem;gap:12px;padding:12px 16px;text-decoration:none;transition:background-color .2s}.profile-dropdown-item:hover{background-color:#f5f5f5}.profile-dropdown-item i{color:#6f6f6f;font-size:1rem;width:20px}.profile-dropdown-divider{background-color:#00000014;height:1px;margin:8px 0}.navbar-profile .username{color:#fff;font-size:.95rem;font-weight:500}.navbar-profile .chevron-icon{color:#ffffffb3;font-size:.8rem;margin-left:4px}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.profile-dropdown{animation:dropdownFade .2s ease-out}.lesson-circle-wrapper{align-items:center;display:flex;flex-direction:column;position:relative}@keyframes indicator-appear{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.lesson-circle-container{margin-bottom:8px}.lesson-circle.completed-circle{background-color:var(--secondary);border-color:var(--secondary-dark);color:#fff}.lesson-circle.dialogue-circle.completed-special,.lesson-circle.reading-circle.completed-special{background-color:#fff3e0;border-color:#ff9800;color:#fff}.dialogue-circle.completed-special i,.reading-circle.completed-special i{animation:none}.completion-indicator.special{background-color:#ff9800}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.lesson-circle.completed-circle:hover,.lesson-circle.dialogue-circle.completed-special:hover,.lesson-circle.reading-circle.completed-special:hover{animation:none!important;cursor:pointer;transform:none!important}.lesson-circle-wrapper.completed:hover .completion-indicator{animation:none!important;transform:none!important}.review-modal-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.review-modal{animation:modal-pop .3s ease-out forwards;background:var(--bg-primary);border-radius:var(--radius-lg);max-width:400px;padding:2rem;text-align:center;width:100%}@keyframes modal-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.review-modal-header{margin-bottom:1rem}.review-modal-header h3{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin:0}.review-modal-content{margin-bottom:2rem}.review-icon{color:var(--primary);font-size:3.5rem;margin-bottom:1.5rem}.review-modal-content p{color:var(--text-secondary);font-size:1.1rem;line-height:1.5;margin:.5rem 0}.review-modal-actions{display:flex;gap:1rem}.review-modal-actions .cancel-button{background:var(--border-primary);border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:1rem;transition:all .2s}.review-modal-actions .cancel-button:hover{background:var(--border-secondary)}.review-modal-actions .continue-button{background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:var(--bg-primary);cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:1rem;transition:all .2s}.review-modal-actions .continue-button:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.review-modal-actions .continue-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.close-modal-button{background:none;color:var(--text-secondary);font-size:1.25rem;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:color .2s}.close-modal-button:hover{color:var(--text-primary)}@media (max-width:600px){.review-modal{max-width:none;padding:1.5rem;width:90%}.review-modal-header h3{font-size:1.5rem}.review-modal-content p{font-size:1rem}.review-modal-actions{flex-direction:column}.review-modal-actions .cancel-button,.review-modal-actions .continue-button{padding:.875rem}}.flashcard-status{text-align:center;width:40px}.status-dot{border-radius:50%;display:inline-block;height:12px;position:relative;width:12px}.status-not-started{background-color:#e0e0e0}.status-appeared-1{background-color:gold}.status-appeared-2{background-color:orange}.status-appeared-3{background-color:#ff8c00}.status-learned{animation:pulse 2s infinite;background-color:#4caf50}.status-dot:hover:after{background-color:#000c;border-radius:4px;bottom:125%;color:#fff;content:attr(title);font-size:12px;left:50%;opacity:0;opacity:1;padding:4px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .2s;white-space:nowrap;z-index:100}@media (max-width:768px){.flashcard-status{width:30px}.status-dot{height:10px;width:10px}}.progress-bar-container{background-color:#e0e0e0;border-radius:4px;display:flex;height:8px;margin-bottom:5px;overflow:hidden;position:relative;width:100%}.progress-bar-segment{height:100%;position:relative;transition:width .3s ease}.progress-bar-segment.mastered{background-color:var(--primary)}.progress-bar-segment.in-progress{background-color:var(--secondary)}.progress-text{align-items:center;color:#666;display:flex;font-size:.85rem}.progress-bar-segment:hover:after{display:none}.created-by-text{align-items:center;display:flex;margin-bottom:8px}.created-by-text i{margin-right:8px}.flashcards-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.edit-flashcards-button{gap:.5rem;padding:.5rem 1rem}.edit-flashcards-button:hover{transform:translateY(-1px)}.edit-flashcards-modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:90vh;max-width:800px;position:relative;width:90%}.edit-flashcards-modal .modal-header{align-items:center;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-bottom:1px solid var(--border-primary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;display:flex;justify-content:space-between;padding:1.5rem}.edit-flashcards-modal .modal-header h3{color:#fff;font-size:1.5rem;margin:0}.edit-flashcards-modal .close-modal-button{align-items:center;background:#fff3;border:none;border-radius:var(--radius-round);color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.edit-flashcards-modal .close-modal-button:hover{background:#ffffff4d;transform:scale(1.1)}.edit-flashcards-modal .modal-content{flex:1 1;overflow-y:auto;padding:1.5rem}.flashcards-edit-header{border-bottom:2px solid var(--border-primary);color:var(--text-secondary);font-weight:600;padding:.5rem 0}.flashcard-edit-row,.flashcards-edit-header{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr 40px}.flashcard-edit-row{align-items:center}.flashcard-edit-row input{border:1px solid var(--border-primary);border-radius:var(--radius-md);font-size:1rem;padding:.75rem;transition:all .2s}.flashcard-edit-row input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);outline:none}.remove-flashcard-button{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:all .2s}.remove-flashcard-button:hover:not(:disabled){background:var(--error-light);color:var(--error)}.remove-flashcard-button:disabled{cursor:not-allowed;opacity:.5}.add-flashcard-button{align-items:center;background:var(--bg-secondary);border:2px dashed var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;margin-top:1rem;padding:.75rem;transition:all .2s}.add-flashcard-button:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--primary);color:var(--primary)}.add-flashcard-button:disabled{background:var(--bg-secondary);border-color:var(--border-primary);color:var(--text-light);cursor:not-allowed;opacity:.7}.flashcards-validation-error{align-items:center;animation:errorShake .5s cubic-bezier(.36,.07,.19,.97) both;background-color:#d32f2f14;border-left:4px solid #d32f2f;border-radius:4px;box-shadow:0 2px 4px #0000000d;color:#d32f2f;display:flex;font-size:.9rem;gap:12px;margin-bottom:16px;margin-top:16px;padding:12px 16px}.flashcards-validation-error i{color:#d32f2f;font-size:1.1rem}.flashcards-validation-error span{flex:1 1;line-height:1.5}@keyframes errorShake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}.edit-flashcards-modal .modal-footer{border-top:1px solid var(--border-primary);display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.edit-flashcards-modal .save-button{background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;max-width:180px;padding:.75rem 1.5rem;transition:all .2s}.edit-flashcards-modal .save-button:hover{background:var(--primary-dark);transform:translateY(-2px)}.edit-flashcards-modal .save-button:active{box-shadow:none;transform:translateY(2px)}.edit-flashcards-modal .cancel-button{background:var(--border-primary);border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--border-active);color:var(--text-primary);cursor:pointer;font-weight:600;max-width:160px;padding:.75rem 1.5rem;transition:all .2s}.edit-flashcards-modal .cancel-button:hover{background:var(--border-secondary);transform:translateY(-2px)}.edit-flashcards-modal .cancel-button:active{box-shadow:none;transform:translateY(2px)}@media (max-width:600px){.edit-flashcards-modal{max-height:95vh;width:95%}.flashcard-edit-row{gap:.5rem;grid-template-columns:1fr}.flashcards-edit-header{display:none}.remove-flashcard-button{justify-self:flex-end}}.flashcards-edit-actions{justify-content:flex-start;margin-top:1.5rem}.edit-flashcards-button{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:.75rem;padding:.75rem 1.5rem;transition:all .2s}.edit-flashcards-button i{font-size:1.2rem}.edit-flashcards-button:hover{background:var(--primary-dark)}.edit-flashcards-button:active{box-shadow:none}.manual-creation-container{display:flex;flex-direction:column;gap:1rem}.manual-creation-header{border-bottom:2px solid var(--border-primary);color:var(--text-secondary);font-weight:600;padding:.5rem 0}.manual-creation-header,.manual-creation-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr 40px}.manual-creation-row{align-items:center}.manual-creation-row input{border:1px solid var(--border-primary);border-radius:var(--radius-md);box-sizing:border-box;font-size:1rem;padding:.75rem;transition:all .2s;width:100%}.manual-creation-row input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);outline:none}.remove-button,.row-actions{display:flex;justify-content:center}.remove-button{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:all .2s}.remove-button:hover{background:var(--error-light);color:var(--error)}.remove-button i{font-size:1rem}.manual-creation-controls{display:flex;gap:1rem;margin-top:1rem}.add-button{align-items:center;background:var(--bg-secondary);border:2px dashed var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .2s}.add-button:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--primary);color:var(--primary)}.add-button:active:not(:disabled){transform:translateY(2px)}.add-button:disabled{background:var(--bg-secondary);border-color:var(--border-primary);color:var(--text-light);cursor:not-allowed;opacity:.7}.bulk-add-button{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .2s}.bulk-add-button:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px)}.bulk-add-button:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.bulk-add-button:disabled{cursor:not-allowed;opacity:.7}.error-message{animation:errorShake .5s cubic-bezier(.36,.07,.19,.97) both;background-color:#d32f2f14;border-left:4px solid #d32f2f;border-radius:4px;box-shadow:0 2px 4px #0000000d;color:#d32f2f;gap:12px;margin-bottom:16px;margin-top:16px;padding:12px 16px}.error-message i{color:#d32f2f;font-size:1.1rem}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.bulk-add-modal{animation:modalAppear .3s ease-out forwards;background:#fff;border-radius:var(--radius-lg);box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}@keyframes modalAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.modal-header{align-items:center;border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;padding:1.5rem}.modal-header h3{color:#fff;font-size:1.5rem;margin:0}.close-modal-button{align-items:center;background:#fff3;border:none;border-radius:var(--radius-round);color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.close-modal-button:hover{background:#ffffff4d;transform:scale(1.1)}.close-modal-button i{font-size:1rem}.modal-content{flex:1 1;overflow-y:auto;padding:1.5rem}.modal-instructions{color:var(--text-secondary);font-size:.95rem;margin-bottom:1rem}.modal-example{background:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.9rem;margin-bottom:1.5rem;padding:.75rem}.modal-example code{color:var(--primary-dark);font-family:monospace}.bulk-input-textarea{border:1px solid var(--border-primary);border-radius:var(--radius-md);font-size:1rem;line-height:1.5;min-height:150px;padding:.75rem;resize:vertical;width:100%}.bulk-input-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);outline:none}.modal-footer{border-top:1px solid var(--border-primary);display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.modal-footer .cancel-button{background:var(--border-primary);border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--border-active);color:var(--text-primary);cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.modal-footer .cancel-button:hover{background:var(--border-secondary);transform:translateY(-2px)}.modal-footer .submit-button{background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.modal-footer .submit-button:hover{background:var(--primary-dark);transform:translateY(-2px)}.modal-footer .submit-button:active{box-shadow:none;transform:translateY(2px)}@media (max-width:600px){.manual-creation-row{gap:.5rem;grid-template-columns:1fr}.manual-creation-header{display:none}.remove-button{justify-self:flex-end}.manual-creation-controls{flex-direction:column}}.plan-selection{width:100%}.plan-selection h3{color:#4b4b4b;margin-bottom:1.5rem;text-align:center}.paid-plan-options{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.free-plan-option{display:flex;justify-content:center;margin-bottom:2rem}.plan-card{background-color:var(--bg-secondary);border:2px solid var(--bg-tertiary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;flex:1 1;max-width:220px;min-width:160px;padding:1.5rem;position:relative;transition:all .2s}.plan-buttons{display:flex;justify-content:center}.free-plan .credit-indicator,.free-plan h4{margin-bottom:.6rem}.free-plan h4 i{font-size:.9em}.free-plan ul{margin-top:0}.free-plan li{margin-bottom:.35rem}.free-plan:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.free-plan.selected{background-color:rgba(var(--primary-rgb),.05);border-color:var(--primary)}.plan-card:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.plan-card.selected{background-color:rgba(var(--primary-rgb),.05);border-color:var(--primary)}.plan-card.selected:after{align-items:center;background-color:var(--primary);border-radius:50%;color:#fff;content:"✓";display:flex;font-weight:700;height:30px;justify-content:center;position:absolute;right:-10px;top:-10px;width:30px}.plan-card h4{color:#333;font-size:1.2rem;margin:0 0 .5rem}.plan-card p{color:var(--primary);font-size:1.4rem;font-weight:700;margin:0 0 1rem}.credit-indicator{align-items:center;background-color:#ffffff80;border:1px solid #0000001a;border-radius:12px;box-shadow:0 2px 4px #00000014;display:flex;font-weight:700;margin:.75rem 0;padding:6px 10px;transition:all .3s ease;width:fit-content}.credit-indicator i{color:var(--warning);font-size:1.1rem;margin-right:.5rem;transition:transform .3s ease}.credit-amount{color:#333;font-family:Nunito,Segoe UI,sans-serif;font-size:1rem}.plan-card.selected .credit-indicator{background-color:#ffffffe6;border-color:var(--primary-light);box-shadow:0 3px 6px #00000026;transform:translateY(-2px)}.plan-card.selected .credit-indicator i{transform:scale(1.2)}.plan-card ul{font-size:.9rem;margin:0;padding-left:1.2rem}.plan-card li{color:#666;margin-bottom:.5rem}.auth-buttons{display:flex;gap:1rem;justify-content:space-between;margin-top:1.5rem;max-width:350px;width:100%}.auth-error{color:#e74c3c;font-size:.9rem;margin-bottom:1rem;text-align:center}.recaptcha-container{align-items:center;display:flex;justify-content:center;margin:0;width:100%}.recaptcha-container>div{margin:0 auto}.form-container{align-items:center;display:flex;flex-direction:column;width:100%}.form-field{margin-bottom:1rem;max-width:350px;width:100%}.form-field label{color:#4b4b4b;display:block;font-weight:500;margin-bottom:.5rem}.auth-modal .form-field input{display:block;margin-left:0;margin-right:0;width:100%}.password-reset-text{padding:10px 70px}@media (max-width:500px){.auth-modal{margin:0 auto;max-width:90%;padding:1.5rem}.auth-buttons,.form-field{max-width:100%}.auth-buttons{flex-direction:column}.auth-buttons button{margin-bottom:.5rem;width:100%}.recaptcha-container{margin:.5rem 0;transform:scale(.85);transform-origin:center}.free-plan-option,.paid-plan-options{align-items:center;flex-direction:column}.plan-card{min-width:auto;width:100%}.free-plan,.plan-card{max-width:100%}}@media (max-width:768px){.paid-plan-options{align-items:center;flex-direction:column}.plan-card{margin-bottom:1rem;max-width:90%}}.free-plan{background-color:#f0f0f0;border-color:#ddd;max-width:500px;padding:1rem}.free-plan h4,.free-plan p{color:#666}.free-plan ul{margin-bottom:0}.free-plan li{color:#777}.free-plan:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.free-plan.selected{background-color:#e8e8e8;border-color:#aaa}.free-plan.selected:after{background-color:#888}.free-plan{align-items:center;background-color:#f9f9f9;display:flex;height:120px;max-width:300px;padding:1.2rem}.free-plan-left{display:flex;flex:0 0 50%;flex-direction:column}.plan-card li{list-style:none}.free-plan-right{display:flex;flex:1 1;flex-direction:column;margin-left:1rem}.free-plan h4{margin-bottom:.5rem}.free-plan .credit-indicator{margin:0;padding:4px 8px}.free-plan .credit-indicator i{font-size:.95rem}.free-plan .credit-amount{font-size:.9rem}.free-plan ul{margin:0;padding-left:1rem}.free-plan li{font-size:.85rem;margin-bottom:.25rem}.verification-reminder{align-items:center;animation:bounce-in .5s ease;background-color:var(--secondary);border-radius:var(--radius-md);box-shadow:0 4px 0 var(--secondary-dark);display:flex;margin-bottom:5rem!important;margin:0 auto;max-width:700px;padding:var(--spacing-5)}.verification-icon{align-items:center;background-color:#fff;border-radius:var(--radius-round);color:var(--warning);display:flex;flex-shrink:0;height:48px;justify-content:center;margin-right:var(--spacing-6);width:48px}.verification-icon i{animation:pulse 2s infinite;font-size:1.5rem}.verification-message{flex:1 1}.verification-message h3{color:#fff;font-size:1.2rem;margin:0 0 var(--spacing-2)}.verification-message p{color:#fff;font-size:.95rem;font-weight:600;margin:0}@keyframes bounce-in{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@media (max-width:600px){.verification-reminder{flex-direction:column;text-align:center}.verification-icon{margin-bottom:var(--spacing-3);margin-right:0}}.resend-email-button{background-color:#fff;border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--border-primary);color:var(--primary);cursor:pointer;flex:1 1;font-weight:600;margin:10px 0;min-width:120px;padding:.75rem 1rem;text-align:center;transition:all .2s}.resend-email-button:hover{background:var(--border-primary);box-shadow:0 6px 0 var(--border-primary);transform:translateY(-2px)}.resend-email-button:active{box-shadow:0 6px 0 var(--border-primary);transform:translateY(0)}.resend-email-button.disabled{background:linear-gradient(135deg,#f0f0f0,#e0e0e0);border:none;box-shadow:0 6px 0 var(--secondary);color:var(--secondary-dark);cursor:default;font-weight:700;pointer-events:none;text-shadow:1px 1px 2px #0000001a}.token-purchase-modal{animation:modalAppear .3s ease-out;background:var(--bg-primary);border-radius:var(--radius-lg);max-width:450px;overflow:hidden;position:relative;width:90%}.token-purchase-modal.showing-plans{max-width:800px}.token-purchase-modal .paid-plan-options{display:flex;gap:1rem;justify-content:center}.token-purchase-modal .plan-card{flex:1 1;min-width:220px}@media (max-width:900px){.token-purchase-modal.showing-plans{max-width:90%;width:90%}.token-purchase-modal .paid-plan-options{flex-direction:column}.token-purchase-modal .plan-card{width:100%}}.token-purchase-header{align-items:center;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;display:flex;gap:1rem;justify-content:center;padding:1.5rem;position:relative}.token-purchase-header .fa-bolt{color:var(--warning);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:2.5rem}.token-purchase-header h3{color:#fff;font-size:1.3rem;font-weight:800;margin:0;text-shadow:0 2px 4px #0000001a}.token-purchase-header .close-modal-button{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s;width:32px}.token-purchase-header .close-modal-button:hover{background:#ffffff4d;transform:scale(1.1)}.token-packages{grid-gap:1rem;display:grid;gap:1rem;padding:2rem}.token-package{align-items:center;background:#fff;border:2px solid var(--border-primary);border-radius:var(--radius-lg);cursor:pointer;display:flex;justify-content:space-between;padding:1.25rem;transition:all .2s}.token-package:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.package-tokens{align-items:center;display:flex;font-size:1.2rem;font-weight:700;gap:.5rem}.package-tokens i{color:var(--warning);font-size:1.4rem}.package-price{color:var(--primary);font-size:1.1rem;font-weight:700}.subscription-prompt{background:var(--bg-secondary);border:2px solid #0000;border-radius:var(--radius-md);cursor:pointer;margin-top:.5rem;padding:1rem;transition:all .2s}.subscription-prompt:hover{background:var(--bg-tertiary);border-color:var(--primary);transform:translateY(-2px)}.subscription-prompt h4{align-items:center;color:var(--primary);display:flex;font-size:1rem;gap:.5rem;margin:0 0 .5rem}.subscription-prompt h4 i{color:var(--primary)}.subscription-prompt p{color:var(--text-secondary);font-size:.9rem;margin:0}@media (max-width:600px){.token-purchase-modal{margin:1rem;width:95%}.token-package,.token-packages{padding:1rem}}.token-confirmation{align-items:center;display:flex;flex-direction:column;gap:1.5rem;padding:1rem}.selected-package{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-lg);display:flex;justify-content:space-between;padding:1.5rem;width:100%}.selected-package .package-tokens{font-size:1.4rem}.selected-package .package-price{color:var(--primary);font-size:1.4rem;font-weight:800}.checkout-button{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-lg);box-shadow:0 4px 0 var(--primary-dark);color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:.75rem;justify-content:center;padding:1rem;transition:all .2s;width:100%}.checkout-button:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.checkout-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.back-button{background:var(--text-light);border:none;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.back-button,.back-button:hover{box-shadow:0 4px 0 var(--text-secondary);color:#fff}.back-button:hover{transform:translateY(-2px)}.token-purchase-modal.showing-plans{max-width:fit-content}.token-purchase-modal .plan-selection{align-items:center;display:flex;flex-direction:column;justify-content:center;padding-top:1rem}.token-purchase-modal .plan-selection .back-button{background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-primary);display:block;font-weight:600;margin-top:1rem;max-width:fit-content;padding:.75rem;text-align:center}.token-purchase-modal .plan-selection .back-button:hover{background:var(--bg-tertiary);text-decoration:none}.plan-card.current-plan{background-color:rgba(var(--primary-rgb),.05);border:2px solid var(--primary);cursor:default;position:relative}.current-plan-badge{background-color:var(--primary);border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;left:50%;padding:4px 12px;position:absolute;top:-12px;transform:translateX(-50%);white-space:nowrap}.plan-card.current-plan:hover{box-shadow:var(--shadow-sm);transform:none}.token-counter.insufficient-tokens{animation:shake-glow 2s ease-in-out}@keyframes shake-glow{0%,to{box-shadow:0 0 5px var(--secondary);transform:translateX(0)}10%,30%,50%,70%,90%{box-shadow:0 0 15px var(--secondary);transform:translateX(-2px)}20%,40%,60%,80%{box-shadow:0 0 15px var(--secondary);transform:translateX(2px)}}.footer{background:var(--primary);box-sizing:border-box;color:#fff;margin-top:auto;padding:var(--spacing-8) var(--spacing-6);width:100%}.footer-container{grid-gap:var(--spacing-6);display:grid;gap:var(--spacing-6);grid-template-columns:1.5fr 1fr 1fr;margin:0 auto;max-width:1200px;width:100%}.footer-brand{display:flex;flex-direction:column;gap:var(--spacing-4)}.footer-logo{height:auto;margin-bottom:var(--spacing-3);width:180px}.footer-brand p{color:#ffffffe6;font-size:.95rem;line-height:1.6;margin:0}.footer-links{display:flex;flex-direction:column;gap:var(--spacing-3)}.footer-links h3{color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:var(--spacing-2)}.footer-links a{align-items:center;color:#ffffffe6;display:flex;font-size:.95rem;gap:var(--spacing-2);text-decoration:none;transition:all .2s}.footer-links a:hover{color:#fff;transform:translateX(4px)}.social-links{display:flex;gap:var(--spacing-3);margin-top:var(--spacing-4)}.social-link{align-items:center;background:#ffffff1a;border-radius:var(--radius-round);color:#fff;display:flex;height:36px;justify-content:center;text-decoration:none;transition:all .2s;width:36px}.social-link:hover{background:#fff3;transform:translateY(-2px)}.footer-bottom{border-top:1px solid #ffffff1a;color:#ffffffb3;font-size:.9rem;margin-top:var(--spacing-6);padding-top:var(--spacing-6);text-align:center}@media (max-width:768px){.footer{padding:var(--spacing-6) var(--spacing-4)}.footer-container{gap:var(--spacing-5);grid-template-columns:1fr;text-align:center}.footer-brand{align-items:center}.footer-logo{margin-bottom:var(--spacing-2);width:140px}.footer-brand p{font-size:.9rem;margin:0 auto;max-width:400px}.footer-links{align-items:center}.footer-links a,.social-links{justify-content:center}}@media (max-width:480px){.footer{padding:var(--spacing-4) var(--spacing-3)}.footer-container{gap:var(--spacing-4)}.footer-logo{width:120px}.footer-brand p{font-size:.85rem}.footer-links{gap:var(--spacing-2)}.footer-links a{padding:var(--spacing-1) 0}}.forgot-password-link{background:none;border:none;color:var(--secondary);cursor:pointer;font-size:1rem;font-weight:500;margin:.5rem 0 0;outline:none;padding:0;text-decoration:underline;transition:color .2s}.forgot-password-link:focus,.forgot-password-link:hover{color:var(--secondary-dark);text-decoration:underline}@media (max-width:1024px){.login-button,.register-button{display:none}.navbar-links{gap:1.5rem;margin-left:auto}.nav-link{font-size:1.1rem;padding:.75rem 1.5rem}}@media (max-width:768px){.navbar-links{gap:1rem;margin-left:1rem}.nav-link{font-size:.75rem;padding:.35rem .55rem}}@media (max-width:380px){.navbar-logo{height:50px;width:100px}.logo-image{height:60px}}@media (max-width:1024px){.course-details-container{box-sizing:border-box;margin-top:4rem;padding:0;width:100%}.course-header-container{border-radius:16px;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;margin:0 1rem 1rem;width:calc(100% - 2rem)}.lesson-blocks-section{margin:0;padding:0;width:100%}.lesson-blocks-grid{box-sizing:border-box;padding:0 1rem;width:100%}.lesson-block-card{border-radius:16px;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;margin:0 0 1rem;padding:1.5rem;width:100%}.navbar-logo{height:55px;width:auto}.logo-image{height:90px;width:auto}.lesson-block-header{gap:1rem;margin-bottom:1.5rem}.lesson-block-header i{font-size:1.8rem}.lesson-block-header h2{font-size:1.3rem}.lessons-path{box-sizing:border-box;padding:1rem .5rem;width:100%}.lesson-circles{gap:.75rem;padding:0 .5rem}.lesson-circle{font-size:1.1rem;height:45px;width:45px}.flashcards-container{box-sizing:border-box;padding:.75rem 0;width:100%}.flashcards-actions{align-items:stretch;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:0 1.25rem}.practice-flashcards-button{justify-content:center;padding:.75rem;width:100%}.flashcard-progress{width:100%}.flashcards-table-container{border-radius:0;margin:0;width:100%}.flashcards-table{width:100%}.flashcards-table td,.flashcards-table th{font-size:.95rem;padding:.75rem 1rem}.expand-flashcards-button{border-radius:0;width:100%}}@media (max-width:480px){.course-details-container{padding:0}.course-header-container{border-radius:16px;box-shadow:0 2px 8px #0000001a;margin:0 1rem 1rem;width:calc(100% - 2rem)}.lesson-blocks-section{padding:0}.lesson-blocks-grid{padding:0 1rem}.lesson-block-card{border-radius:16px;box-shadow:0 2px 8px #0000001a;padding:1.25rem}.lesson-block-header{gap:.75rem}.lesson-block-header i{font-size:1.6rem}.lesson-block-header h2{font-size:1.2rem}.lesson-circle{font-size:1rem;height:40px;width:40px}.flashcards-table td,.flashcards-table th{font-size:.9rem;padding:.6rem .75rem}.flashcards-actions{padding:0 1rem}.back-button{justify-content:center;margin-bottom:1rem;padding:.75rem;width:100%}}.lesson-circle{align-items:center;background:var(--primary);background:var(--button-color,var(--primary));border:none;border-bottom:4px solid var(--button-border,var(--primary-dark));border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;font-weight:700;height:52px;justify-content:center;position:relative;text-decoration:none;transition:transform .2s;width:52px}.dialogue-circle,.reading-circle{font-size:1.25rem;height:52px!important;width:52px!important}.dialogue-circle i,.lesson-circle i,.reading-circle i{align-items:center;display:flex;font-size:1.25rem;height:100%;justify-content:center;width:100%}.lesson-circles{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;padding:0 1rem;position:relative;z-index:2}.lessons-path{padding:2rem 1rem;position:relative}.lessons-path .lesson-circles,.listening-path .lesson-circles,.reading-path .lesson-circles{gap:1.5rem;padding:0 20px}@media (max-width:1024px){.dialogue-circle,.lesson-circle,.reading-circle{height:52px!important;width:52px!important}.lesson-circles{gap:1.5rem;padding:0 1rem}.listening-path .lesson-circles,.reading-path .lesson-circles{gap:1.5rem;justify-content:center;padding:0 1rem}}@media (max-width:480px){.dialogue-circle,.lesson-circle,.reading-circle{font-size:1.1rem;height:48px!important;width:48px!important}.dialogue-circle i,.lesson-circle i,.reading-circle i{font-size:1.1rem}.lesson-circles,.listening-path .lesson-circles,.reading-path .lesson-circles{gap:1rem;padding:0 .5rem}}.lessons-path,.listening-path,.reading-path{box-sizing:border-box;padding:2rem 1rem;position:relative;width:100%}.path-line{background:#e5e5e5;height:4px;left:40px;position:absolute;right:40px;top:50%;transform:translateY(-50%);z-index:1}.lessons-path .lesson-circles,.listening-path .lesson-circles,.reading-path .lesson-circles{align-items:center;display:flex;flex-wrap:wrap;gap:2.5rem;justify-content:space-between;margin:0 auto;max-width:800px;padding:0 2.5rem;position:relative;z-index:2}.dialogue-circle,.lesson-circle,.reading-circle{font-size:1.4rem;height:60px!important;width:60px!important}@media (max-width:1024px){.lessons-path,.listening-path,.reading-path{padding:1.75rem 1rem}.lessons-path .lesson-circles,.listening-path .lesson-circles,.reading-path .lesson-circles{gap:2rem;padding:0 2rem}.dialogue-circle,.lesson-circle,.reading-circle{font-size:1.3rem;height:58px!important;width:58px!important}.path-line{left:35px;right:35px}}@media (max-width:768px){.lessons-path,.listening-path,.reading-path{padding:1.5rem .75rem}.lessons-path .lesson-circles,.listening-path .lesson-circles,.reading-path .lesson-circles{gap:1.75rem;padding:0 1.75rem}.dialogue-circle,.lesson-circle,.reading-circle{font-size:1.25rem;height:56px!important;width:56px!important}.path-line{left:30px;right:30px}}@media (max-width:480px){.lessons-path,.listening-path,.reading-path{padding:1rem .5rem}.lessons-path .lesson-circles,.listening-path .lesson-circles,.reading-path .lesson-circles{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;padding:0 .75rem;row-gap:1.5rem}.dialogue-circle,.lesson-circle,.reading-circle{font-size:1.1rem;height:48px!important;width:48px!important}.path-line{display:none}.lesson-circle-container{margin:0}}.mobile-auth-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:2000}.mobile-auth-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:20px;max-width:400px;padding:2rem;position:relative;text-align:center;width:90%}.mobile-auth-modal .icon-container{align-items:center;background:var(--primary);border-radius:50%;box-shadow:0 4px 15px #58cc0233;color:#fff;display:flex;font-size:2.5rem;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.mobile-auth-modal h2{color:var(--primary);font-size:1.5rem;font-weight:800;margin-bottom:1rem}.mobile-auth-modal p{color:#666;font-size:1.1rem;line-height:1.5;margin-bottom:1.5rem}.mobile-auth-modal .coming-soon{align-items:center;background:var(--bg-secondary);border-radius:12px;display:flex;gap:.75rem;margin:1.5rem 0;padding:1rem}.mobile-auth-modal .coming-soon i{color:var(--secondary);font-size:1.5rem}.mobile-auth-modal .coming-soon p{color:var(--secondary);font-size:.95rem;font-weight:600;margin:0;text-align:left}.mobile-auth-modal .close-button{background:var(--bg-secondary);border:none;border-radius:12px;color:#666;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 2rem;transition:all .2s}.mobile-auth-modal .close-button:hover{background:var(--bg-tertiary);transform:translateY(-1px)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.mobile-auth-modal{padding:1.5rem}.mobile-auth-modal .icon-container{font-size:2rem;height:60px;width:60px}.mobile-auth-modal h2{font-size:1.3rem}.mobile-auth-modal p{font-size:1rem}}.creating-lesson-block{padding:2rem 1rem}.creating-lesson-block.error-state .error-icon{color:var(--error);font-size:4rem;margin-bottom:var(--spacing-4);opacity:.9}.creating-lesson-block.error-state h3{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.3;margin:0 0 var(--spacing-3) 0}.creating-lesson-block.error-state .error-message{background-color:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:1rem;font-weight:500;line-height:1.5;margin:var(--spacing-4) 0 var(--spacing-5) 0;max-width:400px;padding:var(--spacing-4)}.dismiss-error-button{background-color:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:var(--bg-primary);cursor:pointer;font-size:1.1rem;font-weight:700;letter-spacing:.5px;min-width:120px;padding:var(--spacing-3) var(--spacing-6);text-transform:uppercase;transition:all var(--transition-fast)}.dismiss-error-button:hover{background-color:var(--primary-dark);box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.dismiss-error-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}@media (max-width:480px){.creating-lesson-block.error-state .error-message{width:100%}}.flashcards-edit-container{display:flex;flex-direction:column;gap:1rem}.flashcards-requirements{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1rem}.flashcards-requirements i{color:var(--primary);font-size:1rem}.flashcards-requirements span{flex:1 1}.pagination{align-items:center;display:flex;gap:var(--spacing-2);justify-content:center;margin:var(--spacing-5) 0}.pagination-info{color:var(--text-primary);font-weight:600;margin:0 var(--spacing-3)}.pagination-button{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-round);box-shadow:0 4px 0 var(--primary-dark);color:#fff;cursor:pointer;display:flex;height:2.5rem;justify-content:center;transition:var(--transition-fast);width:2.5rem}.pagination-button i{pointer-events:none}.pagination-button:hover:not(:disabled){box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.pagination-button:active:not(:disabled){box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.pagination-button:disabled{background:var(--bg-primary);border:2px solid var(--border-secondary);box-shadow:none;color:var(--text-light)}@media (prefers-color-scheme:dark){.pagination-button{background-color:var(--bg-tertiary);border-color:var(--border-secondary);color:var(--primary-light)}.pagination-button:hover:not(:disabled){background-color:var(--primary-light);border-color:var(--primary-light);color:#fff}.pagination-button:disabled{background-color:#ffffff0d;border-color:var(--border-secondary);color:var(--text-secondary)}}.pagination-button{background:var(--primary)!important;border:none!important;box-shadow:0 4px 0 var(--primary-dark)!important;color:#fff!important}.pagination-button:disabled{background:var(--bg-primary)!important;border:2px solid var(--border-secondary)!important;box-shadow:none!important;color:var(--text-light)!important}.submit-loading{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top:3px solid var(--primary);height:32px;margin:0 auto;width:32px}.auth-modal,.token-purchase-modal{position:relative}.modal-processing-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fff9;display:flex;inset:0;justify-content:center;position:absolute;z-index:999}.btn{border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-block;font-size:1rem;font-weight:700;line-height:1.5;padding:.75rem 1.5rem;text-align:center;transition:all .2s ease}.btn-primary{background-color:var(--primary);box-shadow:var(--shadow-btn-primary);color:var(--bg-primary)}.btn-primary:hover{box-shadow:0 6px 0 var(--primary-dark);filter:brightness(1.05);transform:translateY(-2px)}.btn-primary:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.btn-secondary{background-color:var(--secondary);box-shadow:var(--shadow-btn-secondary);color:var(--bg-primary)}.btn-secondary:hover{box-shadow:0 6px 0 var(--secondary-dark);filter:brightness(1.05);transform:translateY(-2px)}.btn-secondary:active{box-shadow:0 2px 0 var(--secondary-dark);transform:translateY(2px)}.btn-light{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-light:hover{background-color:var(--border-primary);transform:translateY(-1px)}.btn-danger{background-color:var(--error);box-shadow:var(--shadow-btn-error);color:var(--bg-primary)}.btn-danger:hover{box-shadow:0 6px 0 var(--error-dark);transform:translateY(-2px)}.btn-danger:active{box-shadow:0 2px 0 var(--error-dark);transform:translateY(2px)}.btn-disabled,.btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.65;transform:none!important}.card{background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.card-header{border-bottom:1px solid var(--border-primary)}.card-body,.card-footer,.card-header{padding:1.5rem}.card-footer{border-top:1px solid var(--border-primary)}.form-label{font-weight:600;margin-bottom:.5rem}.form-input,.form-label{color:var(--text-primary);display:block}.form-input{background-clip:padding-box;background-color:var(--bg-primary);border:2px solid var(--border-primary);border-radius:var(--radius-md);font-size:1rem;line-height:1.5;padding:.875rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 .2rem #58cc0240;outline:0}.form-select{appearance:none;background-color:var(--bg-primary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23333' d='m6 8.825-4.416-6.21A.75.75 0 0 1 2.235 1.5h7.53a.75.75 0 0 1 .651 1.115L6 8.825z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:12px 12px;border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);display:block;font-size:1rem;line-height:1.5;padding:.875rem;width:100%}.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 .2rem #58cc0240;outline:0}.alert{border:1px solid #0000;border-radius:var(--radius-md);margin-bottom:1rem;padding:1rem;position:relative}.alert-success{background-color:var(--success-light);border-color:var(--success);color:var(--success-dark)}.alert-danger{background-color:var(--error-light);border-color:var(--error);color:var(--error-dark)}.alert-warning{background-color:var(--warning-light);border-color:var(--warning);color:var(--warning)}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-light{color:var(--text-light)}.text-dark{color:var(--text-primary)}.text-danger{color:var(--error)}.text-success{color:var(--success)}.d-flex{display:flex}.d-inline{display:inline}.d-block{display:block}.d-none{display:none}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.align-items-center{align-items:center}.flex-wrap{flex-wrap:wrap}.flex-grow-1{flex-grow:1}.w-100{width:100%}.h-100{height:100%}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-light{background-color:var(--bg-tertiary)}.bg-white{background-color:var(--bg-primary)}.bg-success{background-color:var(--success-light)}.bg-danger{background-color:var(--error-light)}.border{border:1px solid var(--border-primary)}.border-0{border:0}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-circle{border-radius:var(--radius-round)}.exercise-container{box-sizing:border-box;display:flex;flex-direction:column;height:100%;padding:1rem 4rem;position:relative;width:100%}.exercise-header{margin-bottom:.75rem;text-align:center;width:100%}.exercise-type{color:var(--text-secondary);font-size:1rem;margin-bottom:.75rem}.audio-prompt{margin:.5rem auto}.audio-prompt,.multichoice{display:flex;flex-direction:row;justify-content:center}.multichoice{align-items:center;gap:1rem;margin:1rem 0}.multichoice .audio-prompt{display:flex;margin:0}.multichoice .translation-prompt{align-items:center;display:flex;margin:0}.multichoice .audio-button{margin-right:0}.listening-multipleChoice .audio-button{margin:2rem 0}.audio-button{align-items:center;background:var(--secondary);border:none;border-radius:var(--radius-round);color:var(--bg-primary);cursor:pointer;display:flex;flex-shrink:0;font-size:1.75rem;height:60px;justify-content:center;margin-right:20px;transition:all .2s;width:60px}.audio-button:hover:not(:disabled){background:var(--secondary-dark);transform:scale(1.05)}.audio-button:active:not(:disabled){transform:scale(.95)}.audio-button:disabled{cursor:not-allowed;opacity:.7}.audio-button.large{background:var(--secondary);box-shadow:0 4px 0 var(--secondary-dark);color:var(--bg-primary);font-size:1.75rem;height:60px;width:60px}.audio-button.large:hover{background:var(--secondary-dark);transform:translateY(-1px)}.audio-button.large:active{box-shadow:0 2px 0 var(--secondary-dark);transform:translateY(2px)}.audio-button.playing{animation:pulse 1s infinite}.sentence-text,.translation-prompt{color:var(--text-primary);display:flex;font-weight:700;justify-content:center;text-align:center}.translation-prompt{font-size:2rem;margin-top:.5rem}.sentence-text{font-size:1.7rem}.sentence-translation{background-color:var(--secondary-light);border-radius:var(--radius-md);box-sizing:border-box;color:var(--secondary-dark);font-size:1.1rem;font-size:var(--prompt-size,1.1rem);font-style:normal;font-weight:500;line-height:1.4;margin:4rem auto 1.5rem;max-width:500px;padding:1rem;text-align:center;width:100%}.sentence-translation.length-small{--prompt-size:1.1rem}.sentence-translation.length-medium{--prompt-size:1rem}.sentence-translation.length-large{--prompt-size:0.9rem}.sentence-translation.length-xlarge{--prompt-size:0.5rem}.options-container{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2.5rem;margin-top:2rem;width:100%}.option-button{align-items:center;background:var(--bg-primary);border:2px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;display:flex;font-size:1.1rem;padding:.875rem 1.25rem;text-align:left;transition:all .2s}.option-button:hover:not(:disabled){background-color:var(--bg-tertiary);border-color:var(--border-active)}.option-button:disabled{background-color:var(--bg-teriary);cursor:default;opacity:.6}.option-button.correct-option,.option-button.show-correct{background-color:var(--success-light);border-color:var(--success);color:var(--success);font-weight:700}.option-button.incorrect-option{background-color:var(--error-light);border-color:var(--error);color:var(--error);font-weight:700}.fill-blank-content{align-items:center;display:flex;flex-direction:column;gap:0;width:100%}.sentence-container{box-sizing:border-box;font-size:1.5rem;line-height:1.6;margin:0 auto;max-width:600px;padding:1rem;text-align:center;width:100%}.sentence-content{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-bottom:1rem}.sentence-content.compact{margin-bottom:.5rem}.sentence-content.length-small .sentence-text{font-size:1.4rem}.sentence-content.length-medium .sentence-text{font-size:1.2rem}.sentence-content.length-large .sentence-text{font-size:1.1rem}.sentence-content.length-xlarge .sentence-text{font-size:1rem}.blank-sentence{word-wrap:break-word;padding:.5rem}.fill-blank-form{box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;max-width:400px;padding:0 1rem;width:100%}.fill-blank-form .check-button{align-self:center;margin-top:1rem}.fill-blank-input{border:2px solid var(--border-primary);border-radius:var(--radius-md);box-sizing:border-box;font-size:1.1rem;padding:.875rem 1rem;transition:all .2s;width:100%}.fill-blank-input:focus{border-color:var(--primary);outline:none}.sentence-builder{flex-direction:column;gap:1rem}.sentence-builder,.word-area{display:flex;max-width:500px;width:100%}.word-area{align-items:center;background-color:var(--bg-light);border:2px dashed var(--border-primary);border-radius:var(--radius-md);justify-content:center;min-height:100px;padding:1rem}.empty-sentence-prompt{color:var(--text-light);font-size:1rem}.built-sentence{align-items:center;gap:.5rem;min-height:48px}.word-brick{background-color:var(--bg-primary);box-shadow:0 2px 0 #0000001a;font-size:1.125rem}.word-brick:hover:not(.selected):not(:disabled){border-color:var(--secondary);box-shadow:0 3px 0 #1cb0f633;transform:translateY(-1px)}.word-brick.selected{box-shadow:none;cursor:default;opacity:.4}.word-brick.selected:disabled{background-color:#f5f5f5;border-color:var(--border-secondary);box-shadow:none;color:var(--text-light);cursor:default;opacity:.3;transform:none}.selected-word-brick{background-color:var(--bg-primary);border:2px solid var(--secondary);box-shadow:0 2px 0 #1cb0f64d;color:var(--secondary);font-size:1rem}.selected-word-brick:hover{background-color:var(--bg-light);transform:translateY(-1px)}.word-bricks-container{margin-bottom:.75rem;max-width:500px}.matching-container{display:flex;justify-content:center;margin:.25rem 0;padding:1rem}.matching-columns{display:flex;gap:2rem;max-width:800px;width:100%}.matching-column{display:flex;flex:1 1;flex-direction:column;gap:.5rem}.matching-word{background:var(--bg-primary);border:2px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;font-size:1rem;height:60px;padding:.75rem 1rem;text-align:center;transition:all .2s}.matching-word.selected{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:600}.matching-word.matched{animation:correctMatch .4s ease-out;background-color:var(--bg-tertiary);border-color:var(--border-primary);color:var(--text-light);cursor:default;opacity:.7;transform:scale(1)}.matching-word.shake{animation:shake .4s ease-in-out;background:var(--error-light);border-color:var(--error);color:var(--error)}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}@keyframes correctMatch{0%{opacity:1;transform:scale(1)}50%{background-color:var(--success-light);border-color:var(--success);color:var(--success);transform:scale(1.05)}to{background-color:var(--bg-tertiary);border-color:var(--border-primary);color:var(--text-light);transform:scale(1)}}.build .feedback-section{align-self:center;margin:0 auto;padding:1rem 0}.build .feedback-section,.feedback-section{align-items:center;display:flex;flex-direction:column;gap:1rem;width:100%}.feedback-section{max-width:500px}.feedback-result{border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.2rem;margin-bottom:1rem;padding:1rem;text-align:center;width:100%}.feedback-header{font-size:1.2rem;font-weight:700;margin-bottom:.25rem}.correct-result{background-color:var(--success-light);border:2px solid var(--success);color:var(--success)}.incorrect-result{background-color:var(--error-light);border:2px solid var(--error);color:var(--error)}.correct-result strong,.incorrect-result strong{font-size:1.5rem}.complete-sentence{align-items:center;background:var(--bg-primary);border-radius:var(--radius-md);color:var(--text-primary);display:flex;font-size:1.2rem;gap:1rem;justify-content:center;margin:.5rem 0;padding:1rem}.correct-answer{font-size:1.1rem;margin-top:.5rem}.correct-answer span{color:var(--text-secondary)}.correct-answer strong{color:var(--text-primary);margin-left:.5rem}.check-button,.continue-button{background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:var(--bg-primary);cursor:pointer;font-size:1.1rem;font-weight:700;max-width:300px;padding:.75rem 2rem;transition:all .2s;width:100%}.check-button:hover:not(:disabled),.continue-button:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.check-button:active:not(:disabled),.continue-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.check-button:disabled{background:#ccc;box-shadow:0 4px 0 #999;cursor:not-allowed}.continue-container{display:flex;justify-content:center;margin-top:.5rem;width:100%}.special-chars-container{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:.75rem 0}.special-char-button{background-color:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;padding:.5rem .75rem;transition:all .2s}.special-char-button:hover{background-color:var(--border-secondary);transform:translateY(-2px)}.special-char-button:active{transform:translateY(0)}.diacritic-reminder{align-items:center;animation:fadeIn .3s ease-in-out;background-color:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;gap:.4rem;margin:.25rem 0;padding:.75rem}.diacritic-reminder i{color:var(--primary);font-size:1.7rem}.diacritic-reminder span{color:var(--text-primary);font-size:1rem;font-weight:600}.lesson-navbar{align-items:center;background-color:var(--primary);display:flex;height:60px;left:0;padding:0 1rem;position:fixed;right:0;top:0;z-index:var(--z-1000)}.lesson-navbar-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;width:100%}.lesson-progress-bar{background:#0000001a;border-radius:8px;height:16px;margin:0 4rem}.lesson-progress-fill{background:var(--bg-primary);border-radius:8px}.lesson-exit-button{align-items:center;background:none;border:none;color:var(--bg-primary);cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:.5rem;transition:transform .2s;width:40px}.lesson-exit-button:hover{background:#0000001a;border-radius:50%;transform:scale(1.1)}.lesson-template{background-color:var(--bg-secondary);display:flex;height:calc(100vh - 210px);justify-content:center;margin-top:90px;padding:1rem;width:100%}.lesson-container{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);height:110%;max-width:800px;padding:1.5rem;width:100%}.lesson-complete{align-items:center;display:flex;flex-direction:column;gap:2rem;height:100%;justify-content:center;padding:2rem}.score-number{color:var(--error)}.score-number.passed{color:var(--success)}.score-divider,.score-total{color:var(--text-secondary)}.exit-modal{background:var(--bg-primary);border-radius:var(--radius-lg);max-width:400px;padding:2rem;text-align:center;width:100%}.exit-modal h2{color:var(--text-primary);font-size:1.75rem;margin-bottom:1rem}.exit-modal p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem}.exit-modal-buttons{display:flex;gap:1rem}.exit-confirm-button{background:var(--error);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-error);color:var(--bg-primary);cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:1rem;transition:all .2s}.exit-confirm-button:hover{box-shadow:0 6px 0 var(--error-dark);transform:translateY(-2px)}.exit-confirm-button:active{box-shadow:0 2px 0 var(--error-dark);transform:translateY(2px)}.exit-cancel-button{background:var(--border-primary);border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:1rem;transition:all .2s}.exit-cancel-button:hover{background:var(--border-secondary)}.sentence-build-content{align-items:center;display:flex;flex-direction:column;gap:1rem;height:400px;margin:-.5rem auto 0;max-width:600px;width:100%}.selected-words-area{align-items:center;background-color:var(--bg-secondary);border:3px dashed var(--border-primary);border-radius:var(--radius-lg);display:flex;justify-content:center;margin:1rem 0;min-height:120px;padding:.75rem;width:100%}.empty-sentence-prompt{color:var(--text-secondary);font-size:1.1rem;font-style:italic}.built-sentence,.word-bricks-container{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;width:100%}.word-bricks-container{padding:.5rem}.word-brick{background-color:#fff;border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:1.25rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.word-brick:hover:not(.selected):not(:disabled){background-color:var(--bg-tertiary);border-color:var(--primary);transform:translateY(-2px)}.word-brick.selected{cursor:not-allowed;opacity:.5}.selected-word-brick{background-color:#fff;border:2px solid var(--primary);border-radius:var(--radius-md);color:var(--primary);cursor:pointer;font-size:1.25rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.selected-word-brick:hover{background-color:var(--bg-tertiary);transform:translateY(-2px)}.check-button{background-color:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--primary-dark);color:#fff;cursor:pointer;font-size:1.2rem;font-weight:700;padding:.75rem 2rem;transition:all .2s}.check-button:hover:not(:disabled){box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.check-button:active:not(:disabled){box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.loader-container,.loading-container{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.creating-spinner{animation:spin 1s linear infinite;border:4px solid var(--primary);border-radius:50%;border-top:4px solid #0000;height:48px;margin-bottom:1rem;width:48px}.creating-lesson-block{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.creating-lesson-block h3{color:var(--text-primary);font-size:1.2rem;font-weight:600;margin:0}.direct-input-content{gap:0;min-height:400px;padding-top:2rem}.direct-input-content,.direct-input-form{align-items:center;display:flex;flex-direction:column;width:100%}.direct-input-form{box-shadow:none;gap:1.5rem;height:100%;justify-content:space-between;max-width:400px}.direct-input-field-container{margin-top:2rem;width:100%}.direct-input-field{border:2px solid var(--border-primary);border-radius:var(--radius-md);box-sizing:border-box;font-size:2rem;padding:.5rem;transition:all .2s;width:100%}.direct-input-field::placeholder{font-size:1.2rem;opacity:.7}.direct-input-field:focus{border-color:var(--primary);outline:none}.button-container{display:flex;justify-content:center;margin-top:auto;padding-top:3rem;width:100%}.direct-input-form .special-chars-container{margin:1.5rem 0}.direct-input-content .feedback-section{display:flex;flex-direction:column;height:100%;justify-content:space-between;padding:2rem 0}.direct-input-content .continue-container{margin-top:4rem}.challenge-indicator{background-color:var(--secondary-light);border-radius:20px;box-shadow:0 2px 4px #0003;color:var(--secondary-dark);display:block;font-size:.9rem;font-weight:700;margin:-75px auto 15px;padding:8px 16px;position:relative;text-align:center;width:fit-content;z-index:10}.challenge-indicator span{align-items:center;display:flex;gap:6px;justify-content:center}.challenge-indicator i{color:var(--secondary);font-size:1rem}.flashcards-edit-actions{border-top:1px solid var(--border-primary);display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:1rem}.edit-flashcards-button,.remix-flashcards-button{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.edit-flashcards-button{background-color:var(--primary);box-shadow:0 4px 0 var(--primary-dark);color:var(--bg-primary)}.edit-flashcards-button:hover{box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.edit-flashcards-button:active{box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.remix-flashcards-button{background-color:var(--secondary);box-shadow:0 4px 0 var(--secondary-dark);color:var(--bg-primary)}.remix-flashcards-button:hover{box-shadow:0 6px 0 var(--secondary-dark);transform:translateY(-2px)}.remix-flashcards-button:active{box-shadow:0 2px 0 var(--secondary-dark);transform:translateY(2px)}.remix-flashcards-button:disabled{background-color:var(--text-light);box-shadow:0 4px 0 var(--text-secondary);cursor:default}.remix-content{flex-direction:column;gap:1.5rem;padding:2rem 1rem;text-align:center}.remix-content,.remix-icon{align-items:center;display:flex}.remix-icon{background-color:var(--secondary-light);border-radius:50%;color:var(--secondary);font-size:3rem;height:80px;justify-content:center;margin-bottom:1rem;width:80px}.remix-content p{color:var(--text-primary);font-size:1.2rem;line-height:1.5;margin:0 auto;max-width:400px}.flashcards-selection-container{margin:0 auto;max-width:600px;padding:1rem;width:100%}.selection-header{background-color:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-primary);font-weight:600;margin-bottom:1rem}.flashcard-selection-row,.selection-header{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:2fr 2fr 1fr;padding:.75rem 1rem}.flashcard-selection-row{align-items:center;border:2px solid var(--border-primary);border-radius:var(--radius-md);margin-bottom:.75rem;transition:all .2s}.flashcard-selection-row.selected{background-color:var(--primary-light);border-color:var(--primary)}.flashcard-selection-row span{color:var(--text-primary);font-size:1.1rem}.select-flashcard-button{align-items:center;background-color:var(--bg-primary);border:2px solid var(--border-primary);border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;height:36px;justify-content:center;padding:0;transition:all .2s;width:36px}.select-flashcard-button:hover:not(:disabled){border-color:var(--primary);transform:scale(1.1)}.select-flashcard-button.selected{background-color:var(--primary);border-color:var(--primary);color:var(--bg-primary)}.select-flashcard-button:disabled,.select-flashcard-button:disabled:hover{background-color:var(--bg-primary);border-color:var(--border-primary);color:var(--text-secondary);cursor:not-allowed;opacity:.3;transform:none}.selection-status{background-color:var(--bg-tertiary);border-radius:var(--radius-md);color:var(--text-primary);font-weight:600;margin-top:1.5rem;padding:.75rem;text-align:center}.selection-info{align-items:flex-start;background-color:var(--secondary-light);border-radius:var(--radius-md);display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem}.selection-info-icon{color:var(--secondary);flex-shrink:0;font-size:1.5rem}.selection-info p{color:var(--text-primary);font-size:1rem;line-height:1.5;margin:0}.name-difficulty-container{margin:0 auto;max-width:500px;padding:1rem;width:100%}.form-group{margin-bottom:2rem}.form-group label{font-size:1.1rem}.form-help-text{color:var(--text-secondary);font-size:.9rem;margin-bottom:.75rem}.input-container{position:relative;width:100%}.input-container input{border:2px solid var(--border-primary);border-radius:var(--radius-md);font-size:1.1rem;padding:.75rem 1rem;transition:all .2s;width:100%}.input-container input:focus{border-color:var(--primary);outline:none}.char-count{color:var(--text-secondary);font-size:.9rem;position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.difficulty-buttons{display:flex;gap:.75rem;margin-top:.5rem}.difficulty-button{background-color:var(--bg-primary);border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;flex:1 1;font-size:1.1rem;font-weight:600;padding:.75rem;transition:all .2s}.difficulty-button:hover:not(.selected){background-color:var(--primary-light);border-color:var(--primary)}.difficulty-button.selected{background-color:var(--primary);border-color:var(--primary);color:var(--bg-primary)}.difficulty-button:disabled,.difficulty-button:disabled:hover{background-color:var(--bg-primary);border-color:var(--border-primary);color:var(--text-secondary);cursor:not-allowed;opacity:.5;transform:none}.save-button{background-color:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--primary-dark);color:var(--bg-primary);cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.save-button:hover:not(:disabled){box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.save-button:active:not(:disabled){box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.save-button:disabled,.save-button:disabled:hover{background-color:var(--border-primary);box-shadow:none;color:var(--text-secondary);cursor:not-allowed;opacity:.7;transform:none}.remix-token-error{align-items:center;background:#fff3cd;border:1px solid #ffeeba;border-radius:8px;box-shadow:0 2px 8px #00000008;color:#856404;display:flex;font-size:1.1rem;font-weight:500;gap:.75rem;margin:1.5rem 0 .5rem;padding:1rem 1.5rem}.remix-token-error i{color:#e0a800;font-size:1.3rem}.remix-button-container{display:inline-block;position:relative}.remix-button-container:before{border:6px solid #0000;border-top:6px solid var(--text-primary);bottom:calc(100% + 6px);content:"";filter:drop-shadow(0 1px 1px rgba(0,0,0,.2));left:50%;opacity:0;position:absolute;transform:translateX(-50%);transition:var(--transition-fast);z-index:var(--z-1001)}.remix-button-container:hover:before{bottom:calc(100% + 5px);opacity:1}.remix-button-container:after{background-color:var(--text-primary);border-radius:var(--radius-sm);bottom:calc(100% + 18px);box-shadow:var(--shadow-md);color:var(--bg-primary);content:attr(title);font-size:.875rem;font-weight:500;left:50%;opacity:0;padding:var(--spacing-2) var(--spacing-3);pointer-events:none;position:absolute;transform:translateX(-50%);transition:var(--transition-fast);white-space:nowrap;z-index:var(--z-1000)}.remix-button-container:hover:after{bottom:calc(100% + 17px);opacity:1}.courses-filters{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-4);margin:var(--spacing-5) 0 var(--spacing-6);max-width:800px}.filter-group,.search-group{flex:1 1;min-width:200px;position:relative}.filter-group label{color:#495057;font-weight:500;white-space:nowrap}.language-filter{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--bg-primary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233c3c3c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right var(--spacing-4) center;background-repeat:no-repeat;background-size:1em;border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-family:var(--font-family);font-size:1rem;padding:var(--spacing-3) var(--spacing-4);transition:var(--transition-fast);width:100%}.language-filter:hover{background-color:var(--bg-secondary);border-color:var(--border-active)}.language-filter:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.15);outline:none}.course-search{background-color:var(--bg-primary);border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-family);font-size:1rem;padding:var(--spacing-3) var(--spacing-4);transition:var(--transition-fast);width:100%}.course-search::placeholder{color:var(--text-light)}.course-search:hover{background-color:var(--bg-secondary);border-color:var(--border-active)}.course-search:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.15);outline:none}*,.course-search,.language-filter,:after,:before{box-sizing:border-box}@media (max-width:768px){.courses-filters{flex-direction:column}.course-search,.filter-group,.search-group{width:100%}}@media (prefers-color-scheme:dark){.course-search,.language-filter{background-color:var(--bg-secondary);border-color:var(--border-secondary);color:var(--text-primary)}.course-search:hover,.language-filter:hover{background-color:var(--bg-tertiary);border-color:var(--border-active)}.course-search::placeholder{color:var(--text-secondary)}.course-search:focus,.language-filter:focus{border-color:var(--primary-light);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.25)}}.profile-page{margin-top:6rem;overflow:hidden;padding:var(--spacing-4);position:relative}.confetti-background{bottom:0;left:0;overflow:hidden;position:absolute;right:0;top:0;z-index:-1}.confetti{border-radius:50%;height:15px;opacity:.6;position:absolute;width:15px}.confetti-1{background-color:var(--primary-light);left:5%;top:10%;transform:scale(2)}.confetti-2{background-color:var(--secondary-light);right:10%;top:40%;transform:scale(3)}.confetti-3{background-color:var(--warning-light);bottom:15%;left:25%;transform:scale(2.5)}.profile-hero{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-radius:var(--radius-lg);box-shadow:0 8px 0 var(--primary-dark),var(--shadow-lg);margin-bottom:var(--spacing-6);overflow:hidden;padding:var(--spacing-6);position:relative}.profile-hero-content{align-items:center;display:flex;gap:var(--spacing-6);justify-content:space-between;padding-right:2.5rem;position:relative;z-index:1}.profile-hero-info{flex:1 1}.username-flags-container{align-items:center;display:flex;flex-direction:row;gap:1rem;margin-bottom:var(--spacing-3)}.hero-username{color:#fff;font-size:2.5rem;line-height:1.2;margin:0;text-shadow:0 2px 4px #0003}.language-flags-row{align-items:center;display:flex;gap:.6rem}.flag-bubble{cursor:default;font-size:2.5rem;line-height:1;transition:transform .2s ease}.flag-bubble:hover{transform:scale(1.15)}.hero-email{color:#fffc;font-size:1rem;margin:.5rem 0 1.5rem}.member-info{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-4)}.member-badge{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff3;border:1px solid #ffffff4d;border-radius:30px;color:#fff;display:inline-flex;font-size:.8rem;gap:.5rem;padding:.4rem .8rem}.member-badge i{color:var(--gold)}.token-card{align-items:center;background:#fff;border:2px solid #fff3;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;margin-right:1.5rem;min-width:160px;overflow:hidden;padding:.8rem 1.8rem .8rem 1.2rem;position:relative}.token-icon-container{align-items:center;background-color:var(--warning-light);border-radius:50%;display:flex;height:3rem;justify-content:center;margin-right:1rem;width:3rem}.token-icon-container i{color:var(--warning);font-size:1.5rem}.token-details{display:flex;flex-direction:column}.token-num{color:var(--text-primary);font-size:1.8rem;font-weight:700;line-height:1}.token-label{color:var(--text-secondary);font-size:.9rem}.profile-tabs-container{margin:4rem auto;max-width:1200px;padding:0 4rem}.profile-cards-grid{grid-gap:var(--spacing-5);display:grid;gap:var(--spacing-5);grid-template-columns:1fr 1fr;margin-bottom:var(--spacing-6)}.profile-card{background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:visible;padding:3rem;position:relative;transition:transform .3s ease,box-shadow .3s ease}.profile-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.card-title{border-bottom:2px solid var(--border-primary);color:var(--text-primary);font-size:1.5rem;margin-top:0;padding-bottom:var(--spacing-3)}.card-title,.plan-status{margin-bottom:var(--spacing-4)}.plan-status{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-4)}.plan-badge{background:var(--primary);display:inline-block;margin-bottom:var(--spacing-3);padding:.5rem 1rem;position:relative;z-index:1}.renewal-info{align-items:center;color:var(--text-secondary);display:flex;gap:.5rem}.renewal-info i{color:var(--primary)}.free-plan-message{margin-top:.2rem}.duo-message{align-items:center;display:flex;gap:.8rem;margin-bottom:1rem}.duo-message p{color:var(--primary);font-size:1.1rem;font-weight:700;margin:0}.duo-icon{color:var(--primary);font-size:1.4rem}.duo-benefits{list-style:none;margin:0;padding:0}.duo-benefits li{color:var(--text-secondary);font-size:.95rem;line-height:1.4;margin-bottom:.7rem;padding-left:1.2rem;position:relative}.duo-benefits li:before{content:"•";left:0;position:absolute}.duo-benefits .highlight,.duo-benefits li:before{color:var(--primary);font-weight:700}.current-plan-status{align-items:center;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:1rem}.current-plan-status,.current-plan-status i{color:var(--text-secondary)}.upgrade-benefits{background:var(--bg-secondary);border-radius:var(--radius-md);padding:1.2rem}.upgrade-benefits h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 1rem}.benefit-item{align-items:center;display:flex;gap:1rem;margin-bottom:0;padding:.4rem .7rem}.benefit-item:last-of-type{margin-bottom:1.2rem}.benefit-item i{align-items:center;background:var(--secondary-light);border-radius:12px;color:var(--secondary);display:flex;flex-shrink:0;font-size:1.2rem;height:2.2rem;justify-content:center;width:2.2rem}.benefit-item i.fa-bolt{background:var(--warning-light);color:var(--warning)}.benefit-text{display:flex;flex-direction:column;gap:.2rem}.benefit-text strong{color:var(--text-primary);font-size:.85rem;font-weight:600}.card-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-3)}.vertical-actions{flex-direction:column;margin-top:1rem;width:100%}.action-button{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.8rem 1.2rem;position:relative;top:0;transition:all .2s ease}.action-button i{font-size:1rem}.primary-action{background:var(--primary);box-shadow:0 4px 0 var(--primary-dark);color:#fff}.primary-action:hover{background:var(--primary-dark);transform:translateY(-2px)}.primary-action:active{box-shadow:none;top:4px}.secondary-action{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-primary)}.secondary-action:hover{background:#fff;box-shadow:var(--shadow-sm);transform:translateY(-2px)}.danger-action{background:var(--error);box-shadow:0 4px 0 var(--error-dark);color:#fff}.danger-action:hover{background:var(--error-dark);transform:translateY(-2px)}.danger-action:active{box-shadow:none;top:4px}.full-width{width:100%}.danger-zone-box{background:var(--error-light);border:1px solid var(--error);border-radius:var(--radius-md);margin-top:var(--spacing-4);padding:var(--spacing-4)}.danger-zone-box .action-button:not(:last-child){margin-bottom:var(--spacing-3)}.danger-zone-header{align-items:center;color:var(--error);display:flex;font-weight:700;gap:.5rem;margin-bottom:var(--spacing-3)}.data-warning{align-items:center;background:var(--warning-light);border-radius:var(--radius-md);display:flex;gap:var(--spacing-3);margin-bottom:var(--spacing-4);padding:var(--spacing-3)}.data-warning i{color:var(--warning-dark);font-size:1.5rem}.data-warning p{color:var(--text-primary);font-weight:500;margin:0}.billing-info-message{align-items:flex-start;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);display:flex;gap:.8rem;margin:1.5rem 0;max-width:60%;padding:.8rem 1rem}.billing-info-message i{color:var(--primary);font-size:1.1rem;margin-top:.1rem}.billing-info-message p{color:var(--text-secondary);font-size:.85rem;line-height:1.4;margin:0}.downgrade-confirmation{padding:2rem;text-align:center}.downgrade-message{align-items:flex-start;display:flex;gap:1rem;margin-bottom:2rem;text-align:left}.downgrade-message i{color:var(--warning);font-size:1.5rem;margin-top:.2rem}.downgrade-message .fa-envelope,.downgrade-message .fa-lock,.downgrade-message .fa-user{color:var(--secondary)}.downgrade-message p{color:var(--text-primary);font-size:1.1rem;line-height:1.5;margin:0}.downgrade-actions{display:flex;gap:1rem;justify-content:center}.downgrade-actions .action-button{min-width:160px}@media (max-width:768px){.profile-tabs-container{padding:0 2rem}.profile-hero{padding:var(--spacing-4);text-align:center}.profile-hero-content{align-items:center;flex-direction:column;gap:var(--spacing-4);padding-right:0}.profile-hero-info{width:100%}.username-flags-container{align-items:center;flex-direction:column}.language-flags-row{justify-content:center}.member-badge{margin:0 auto}.token-card{margin-right:0;margin-top:1.5rem}.profile-cards-grid{grid-template-columns:1fr}}@media (max-width:480px){.hero-username{font-size:2rem}.card-actions{flex-direction:column}.action-button{width:100%}}.payment-methods-section{background:#f8f9fa;border-radius:8px;margin:20px 0;padding:15px}.payment-methods-section h3{color:#333;font-size:1.1em;margin:0 0 15px}.payment-methods-list{display:flex;flex-direction:column;gap:10px}.payment-method{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:flex;justify-content:space-between;padding:12px;transition:all .2s ease}.payment-method.default{border-color:var(--secondary)}.card-brand{align-items:center;display:flex;font-weight:500;gap:8px}.card-brand i{color:#666;font-size:1.2em}.card-details{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.card-number{color:#666;font-family:monospace;font-size:.9em}.card-expiry{color:#888;font-size:.8em}.default-badge{align-items:center;color:var(--primary);display:flex;font-size:.8em;gap:4px;margin-left:10px}.default-badge i{font-size:1.1em}.set-default-button{background:var(--primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8em;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.set-default-button:hover{background:var(--primary-dark);transform:translateY(-1px)}.set-default-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.set-default-button:active{transform:translateY(0)}.plan-actions{margin:20px 0;padding:0 15px}.plan-actions .action-button{margin-bottom:10px}.payment-method-actions{align-items:center;display:flex;gap:8px}.delete-payment-button{align-items:center;background:var(--error);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.8em;height:28px;justify-content:center;padding:6px;transition:all .2s ease;width:28px}.delete-payment-button:hover{background:var(--error-dark);transform:translateY(-1px)}.delete-payment-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.delete-payment-button:active{transform:translateY(0)}.delete-payment-button i{font-size:.9em}.email-change-form{box-shadow:none;padding:1rem}.email-change-form .form-group{margin-bottom:1px}.email-change-form input{border:1px solid var(--border-primary);border-radius:var(--radius-md);font-size:1rem;margin-bottom:1rem;padding:var(--spacing-3);transition:border-color .2s ease;width:100%}.email-change-form input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);outline:none}.email-change-form .downgrade-actions{margin-top:var(--spacing-4)}.error-message{font-size:.9rem;margin-top:.5rem}.error-message i{color:var(--error)}.success-message{align-items:center;display:flex;font-size:.9rem;gap:.5rem;margin-top:.5rem}.success-message,.success-message i{color:var(--primary)}.dialogue-content{align-items:center;display:flex;flex-direction:column;height:100%;margin:0 auto;max-width:650px;position:relative;width:100%}.dialogue-instruction{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;margin-top:.5rem;text-align:center}.dialogue-chat{background-color:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;max-width:600px;padding:3rem 1.5rem 1.5rem;width:100%}.dialogue-participants{display:flex;justify-content:space-evenly;margin-bottom:1rem;width:100%}.participant{align-items:center;display:flex;flex-direction:column;gap:.5rem;opacity:.6;transition:opacity .3s,transform .2s}.participant.active{opacity:1;transform:scale(1.05)}.avatar{align-items:center;border-radius:50%;box-shadow:var(--shadow-sm);display:flex;font-size:1.5rem;height:78px;justify-content:center;transition:all .2s;width:78px}.avatar.character-first,.avatar.character-second{background-color:var(--primary-light);border:2px solid var(--primary);color:var(--primary)}.name{color:var(--text-primary);font-size:.9rem;font-weight:700}.chat-container{border-radius:var(--radius-md);display:flex;flex-direction:column;gap:1rem;min-height:100px;padding:1rem;position:relative}.chat-message{left:0;margin-top:10px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.audio-bubble,.chat-message{align-items:center;display:flex;justify-content:center}.audio-bubble{background:var(--secondary);border:none;border-radius:var(--radius-round);box-shadow:0 4px 0 var(--secondary-dark);color:#fff;cursor:pointer;font-size:1.75rem;height:70px;min-width:70px;padding:1rem;transition:all .2s}.audio-bubble:hover:not(:disabled){background:var(--secondary-dark);box-shadow:0 6px 0 var(--secondary-dark);transform:translateY(-2px)}.audio-bubble:active:not(:disabled){box-shadow:0 2px 0 var(--secondary-dark);transform:translateY(2px)}.audio-bubble:disabled{cursor:not-allowed;opacity:.6}.audio-bubble.playing{animation:pulse 1s infinite;background-color:var(--secondary);box-shadow:0 4px 0 var(--secondary-dark)}.action-line{background-color:#0000000d;border-radius:var(--radius-md);color:var(--text-secondary);display:inline-block;font-style:italic;max-width:80%;padding:.75rem 1.25rem;text-align:center}.action-line p{font-size:.95rem;font-weight:500;margin:0;opacity:.85}.comprehension-question{background-color:var(--bg-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-top:1rem;max-width:500px;padding:1.5rem;text-align:center;width:100%}.comprehension-question h3{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:1.25rem}.question-text{color:var(--text-primary);font-size:1.2rem;font-weight:500;line-height:1.4;margin-bottom:2rem}.feedback-message{animation:fadeIn .3s ease-in-out;border-radius:var(--radius-md);font-weight:700;margin-top:1.5rem;padding:1rem}.feedback-message.correct{background-color:var(--success-light);border:2px solid var(--success);color:var(--success)}.feedback-message.incorrect{background-color:var(--error-light);border:2px solid var(--error);color:var(--error)}.dialogue-controls{display:flex;justify-content:center;margin-top:2rem;padding:1rem;width:100%}.continue-button{background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--primary-dark);color:var(--bg-primary);cursor:pointer;font-size:1.1rem;font-weight:700;max-width:300px;padding:.875rem 2rem;transition:all .2s;width:100%}.continue-button:hover:not(:disabled){box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.continue-button:active:not(:disabled){box-shadow:0 2px 0 var(--primary-dark);transform:translateY(2px)}.continue-button:disabled{background:#ccc;box-shadow:0 4px 0 #999;cursor:not-allowed;opacity:.7}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.dialogue-completion-container{display:flex;flex-direction:column;height:auto!important;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:700px;min-height:0!important;overflow:visible!important;padding:1rem 1.5rem;width:100%}.dialogue-completion-container h4{font-size:1.5rem;font-weight:700;margin-bottom:1rem;text-align:center;width:100%}.dialogue-completion-container h2{font-size:1.8rem;font-weight:700;margin-bottom:1rem}.dialogue-completion-container .continue-button{margin-left:auto;margin-right:auto;margin-top:1.5rem;max-width:300px}.dialogue-transcript{gap:1rem;margin-bottom:1rem;padding:.5rem .75rem}.dialogue-transcript,.transcript-message{display:flex;flex-direction:column;width:100%}.transcript-message{animation:fadeIn .3s ease-out;max-width:100%}.transcript-message.first-speaker{align-items:flex-start}.transcript-message.first-speaker .transcript-character{color:var(--primary);margin-left:.5rem}.transcript-message.first-speaker .transcript-content{align-self:flex-start;background-color:#fff;border:2px solid var(--primary);border-radius:12px;border-bottom-left-radius:4px;color:var(--text-primary);max-width:75%}.transcript-message.second-speaker{align-items:flex-end}.transcript-message.second-speaker .transcript-character{align-self:flex-end;color:var(--secondary);margin-right:.5rem;text-align:right}.transcript-message.second-speaker .transcript-content{align-self:flex-end;background-color:#fff;border:2px solid var(--secondary);border-radius:12px;border-bottom-right-radius:4px;color:var(--text-primary);max-width:75%}.transcript-character{color:var(--primary);font-size:.9rem;font-weight:700;margin-bottom:.3rem}.transcript-content{font-size:1.1rem;line-height:1.5;max-width:80%;padding:1rem 1.25rem}.transcript-action{animation:fadeIn .3s ease-out;margin:.5rem 0;text-align:center;width:100%}.transcript-action-text{color:var(--text-secondary);font-size:.95rem;font-style:italic;opacity:.8;padding:.5rem}.dialogue-completion-page{height:auto!important;min-height:100vh!important}.dialogue-completion-page .lesson-container{display:flex;flex-direction:column;height:auto!important;margin:0 auto;max-width:800px;min-height:0!important;overflow:visible!important;padding:1.5rem 1rem}.reading-wrapper{background-color:var(--bg-secondary);display:flex;flex-direction:column;margin-top:60px;min-height:100vh;padding-bottom:2rem;width:100%}.reading-full-container{box-sizing:border-box;flex:1 1;overflow-y:auto;padding:0 1rem 1rem}.reading-content,.reading-full-container,.reading-step{align-items:center;display:flex;flex-direction:column;width:100%}.reading-content{box-sizing:border-box;margin:0 auto;max-width:1100px;padding:1.5rem 2rem}.reading-title{color:var(--text-primary);font-size:2.4rem;font-weight:800;margin:0;padding-top:1rem;text-align:center}.reading-instruction-container{margin-bottom:1.2rem;text-align:center;width:100%}.reading-instruction{color:var(--text-primary);font-size:1.5rem!important;font-weight:700;margin:0}.reading-audio-container{display:flex;justify-content:center;margin-bottom:0;width:100%}.reading-audio-button{align-items:center;background-color:var(--secondary);border:none;border-radius:16px;box-shadow:0 5px 0 var(--secondary-dark);color:#fff;cursor:pointer;display:flex;font-size:1.15rem;font-weight:700;gap:.75rem;justify-content:center;padding:1rem 2rem;transition:all .2s}.reading-audio-button:hover:not(:disabled){box-shadow:0 8px 0 var(--secondary-dark);transform:translateY(-3px)}.reading-audio-button:active:not(:disabled){box-shadow:0 3px 0 var(--secondary-dark);transform:translateY(2px)}.reading-audio-button:disabled{cursor:not-allowed;opacity:.7}.reading-audio-button.playing{animation:reading-pulse 1.5s infinite}@keyframes reading-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.reading-display-options{background-color:var(--bg-tertiary);border-radius:16px;display:flex;gap:.5rem;justify-content:center;margin:1rem 0;max-width:90%;padding:.5rem;width:auto}.display-option-button{background-color:initial;border:none;border-radius:12px;color:var(--text-primary);cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 1.25rem;transition:all .2s}.display-option-button:hover:not(.active){background-color:#ffffffb3;transform:translateY(-1px)}.display-option-button.active{background-color:var(--bg-primary);box-shadow:var(--shadow-sm);color:var(--primary)}.reading-text-container{background-color:var(--bg-primary);border-radius:20px;box-shadow:var(--shadow-md);margin:1.5rem 0 2.5rem;max-width:96%;padding:2.5rem 3rem;width:100%}.reading-text-container.translation{background-color:var(--bg-secondary);border-left:6px solid var(--primary)}.reading-text{background:none;border:none;color:var(--text-primary);font-family:inherit;font-size:1.3rem;line-height:1.8;margin:0 auto;max-width:70ch;padding:0;text-align:left;white-space:pre-wrap}.reading-text p{margin-bottom:1.2em}.reading-text-container.translation .reading-text{color:var(--text-primary);font-size:1.25rem}.reading-no-text-container{align-items:center;background-color:var(--bg-primary);border-radius:20px;box-shadow:var(--shadow-md);display:flex;justify-content:center;margin:1.5rem 0 2.5rem;min-height:250px;padding:3rem;width:100%}.reading-no-text-message{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;font-size:1.3rem;gap:1.5rem;text-align:center}.reading-no-text-message i{color:var(--secondary);font-size:4rem}.reading-side-by-side-container{display:flex;gap:1.5rem;margin:1.5rem 0 2.5rem;max-width:96%;width:100%}.reading-side{background-color:var(--bg-primary);border-radius:20px;box-shadow:var(--shadow-md);flex:1 1;padding:2rem}.reading-side.translation{background-color:var(--bg-secondary);border-left:6px solid var(--primary)}.reading-side-header{border-bottom:2px solid var(--border-primary);color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 0 1.25rem;padding-bottom:.75rem}.reading-continue-container{display:flex;justify-content:center;margin-top:1rem;width:100%}.reading-continue-button{background-color:var(--primary);border:none;border-radius:16px;box-shadow:0 5px 0 var(--primary-dark);color:#fff;cursor:pointer;font-size:1.25rem;font-weight:700;max-width:350px;padding:1rem 2rem;transition:all .2s;width:100%}.reading-continue-button:hover{box-shadow:0 8px 0 var(--primary-dark);transform:translateY(-3px)}.reading-continue-button:active{box-shadow:0 3px 0 var(--primary-dark);transform:translateY(2px)}.reading-audio-player{align-items:center;background-color:var(--bg-primary);border-radius:16px;box-shadow:var(--shadow-md);display:flex;gap:1rem;max-width:500px;padding:1rem 1.5rem;width:100%}.audio-play-button{align-items:center;background-color:var(--secondary);border:none;border-radius:50%;box-shadow:0 4px 0 var(--secondary-dark);color:#fff;cursor:pointer;display:flex;font-size:1.25rem;height:48px;justify-content:center;min-width:48px;transition:all .2s;width:48px}.audio-play-button:hover{box-shadow:0 6px 0 var(--secondary-dark);transform:translateY(-2px)}.audio-play-button:active{box-shadow:0 2px 0 var(--secondary-dark);transform:translateY(2px)}.audio-progress-container{align-items:center;display:flex;gap:.75rem;width:100%}.audio-time-current,.audio-time-total{color:var(--text-secondary);font-size:.9rem;min-width:40px}.audio-progress-bar{appearance:none;background:var(--bg-tertiary);border-radius:3px;flex:1 1;height:6px;outline:none}.audio-progress-bar::-webkit-slider-thumb{appearance:none;background:var(--secondary);border-radius:50%;cursor:pointer;height:14px;width:14px}.audio-progress-bar::-moz-range-thumb{background:var(--secondary);border:none;border-radius:50%;cursor:pointer;height:14px;width:14px}@media (max-width:768px){.reading-audio-player{gap:.75rem;padding:.75rem 1rem}.audio-play-button{font-size:1rem;height:40px;min-width:40px;width:40px}.audio-time-current,.audio-time-total{font-size:.8rem;min-width:35px}.reading-display-options{flex-wrap:wrap;gap:.5rem;max-width:95%;padding:.5rem}.display-option-button{flex-grow:1;font-size:.9rem;padding:.6rem 1rem}.reading-text-container{max-width:95%;padding:1.5rem 2rem}.reading-side-by-side-container{flex-direction:column;max-width:95%}.reading-side.translation{border-left:none;border-top:6px solid var(--primary)}.reading-text{font-size:1.1rem}}.reading-questions-container{margin:2rem auto;max-width:850px;padding:0 1rem;width:100%}.reading-question-container{align-items:center;background-color:var(--bg-primary);border-radius:20px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;padding:2rem}.reading-question-header{margin-bottom:2rem;text-align:center;width:100%}.reading-question-count{color:var(--text-secondary);font-size:1rem;margin-bottom:.75rem}.reading-question-text{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.4;margin:0}.reading-options-container{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;max-width:600px;width:100%}.reading-options-container.true-false{flex-direction:row;flex-wrap:wrap;justify-content:center}.reading-options-container.true-false .reading-option-button{flex:1 1;max-width:300px;min-width:200px}.reading-option-button{align-items:center;background-color:var(--bg-primary);border:2px solid var(--border-primary);border-radius:16px;color:var(--text-primary);cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;padding:1rem 1.5rem;text-align:left;transition:all .2s}.reading-option-button:hover:not(:disabled){border-color:var(--primary-light);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.reading-option-button.correct-option{background-color:var(--success-light);border-color:var(--success);color:var(--success-dark)}.reading-option-button.incorrect-option{background-color:var(--error-light);border-color:var(--error);color:var(--error-dark)}.reading-option-button.show-correct{border:2px dashed var(--success);opacity:.8}.reading-feedback-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;max-width:600px;width:100%}.reading-feedback{align-items:center;border-radius:12px;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem;text-align:center;width:100%}.reading-feedback.correct{background-color:var(--success-light);color:var(--success-dark)}.reading-feedback.incorrect{background-color:var(--error-light);color:var(--error-dark)}.reading-feedback i{font-size:1.25rem}.no-questions-message{background-color:var(--bg-primary);border-radius:20px;box-shadow:var(--shadow-md);padding:3rem;text-align:center}.no-questions-message p{color:var(--text-secondary);font-size:1.2rem;margin-bottom:2rem}@media (max-width:768px){.reading-question-text{font-size:1.25rem}.reading-option-button{font-size:1rem;padding:.9rem 1.25rem}.reading-options-container.true-false{flex-direction:column}.reading-options-container.true-false .reading-option-button{max-width:none}}.prompt{font-size:2rem;font-weight:700;margin-bottom:1.5rem}.tf-buttons-container{gap:20px;margin:2rem auto;max-width:500px}.tf-button,.tf-buttons-container{display:flex;justify-content:center}.tf-button{align-items:center;border-radius:16px;cursor:pointer;font-size:3rem;height:120px;transition:all .25s ease;width:180px}.true-button{background-color:#e6f7ee;border:2px solid #4caf50;color:#4caf50}.false-button{background-color:#ffebee;border:2px solid #f44336;color:#f44336}.tf-button:disabled{background-color:inherit;border-color:inherit;color:inherit;opacity:1}.tf-button.selected{box-shadow:0 6px 15px #0003;transform:scale(1.08);z-index:1}.feedback-text{align-items:center;border-radius:8px;display:flex;font-size:1.2rem;font-weight:600;justify-content:center;margin:1.5rem auto;max-width:500px;padding:.75rem;text-align:center;width:100%}.feedback-text.correct{background-color:#e6f7ee;border:1px solid #4caf50;color:#4caf50}.feedback-text.incorrect{background-color:#ffebee;border:1px solid #f44336;color:#f44336}.feedback-text i{font-size:1.25rem;margin-right:10px}@media (max-width:768px){.tf-button{font-size:2.2rem;height:100px;width:140px}}@media (max-width:480px){.tf-button{font-size:2rem;height:90px;width:120px}}.reading-complete{padding:2rem;text-align:center}.score-container{align-items:center;display:flex;flex-direction:column;gap:1rem;margin:2rem 0}.score-display{align-items:center;display:flex;font-size:4rem;font-weight:800;gap:.5rem;margin-bottom:1rem}.score-number{color:var(--error)!important}.score-number.passed{color:var(--success)!important}.score-divider,.score-total{color:var(--text-secondary)!important;font-weight:600}.score-text{color:var(--text-primary);font-size:1.2rem;margin-top:.5rem}.lesson-complete h2{color:var(--text-primary);font-size:2.5rem;margin:0}.lesson-progress-bar{background-color:#ffffff4d;border-radius:4px;flex:1 1;height:8px;margin:0 1rem;overflow:hidden}.lesson-progress-fill{background-color:#fff;border-radius:4px;height:100%;transition:width .3s ease}.score-message{background-color:var(--secondary-light);border-radius:12px;box-shadow:var(--shadow-sm);margin:.5rem 0 1.5rem;max-width:400px;padding:1rem 1.25rem;text-align:center;width:100%}.score-message p{color:var(--secondary-dark);font-size:1.15rem;font-weight:500;line-height:1.6;margin:0}.score-message p:first-child{font-weight:600;margin-bottom:.75rem}.score-message.success{background-color:var(--success-light)}.score-message.success p{color:var(--success-dark)}.tooltip-token{border-bottom:1px dotted #666}.tooltip-token:hover{background-color:#0000000d}.completion-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.back-to-course-button{background:var(--border-active);border:none;border-radius:var(--radius-md);box-shadow:0 4px 0 var(--text-secondary);color:var(--bg-primary);cursor:pointer;font-size:1.1rem;font-weight:700;max-width:300px;padding:.875rem 2rem;transition:all .2s;width:100%}.back-to-course-button:hover:not(:disabled){box-shadow:0 6px 0 var(--text-secondary);transform:translateY(-2px)}.back-to-course-button:active:not(:disabled){box-shadow:0 2px 0 var(--text-secondary);transform:translateY(2px)}.flashcard-progress-containers{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px}.flashcard-progress-box{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;flex:1 1;min-width:250px;overflow:hidden;transition:all .2s ease}.flashcard-progress-box-header{border-bottom:1px solid #0000000d;padding:12px 15px}.started .flashcard-progress-box-header{background-color:var(--secondary)}.in-progress .flashcard-progress-box-header{background-color:var(--secondary-dark)}.almost-there .flashcard-progress-box-header{background-color:var(--primary)}.complete .flashcard-progress-box-header{background-color:var(--primary-dark)}.flashcard-progress-box-content{max-height:230px;overflow-y:auto;padding:8px 15px}.flashcard-progress-box h3{color:#fff;font-size:1.2rem;font-weight:700;margin:0}.flashcard-progress-box .count{color:#fff;font-size:1rem;font-weight:600;margin:8px 0}.word-list{list-style:none;margin:0;padding:0}.word-list li{color:#000000b3;font-size:1.1rem;padding:4px 0}.current-session-word{font-weight:600;padding-left:20px;position:relative}.session-indicator{background:var(--primary);border-radius:50%;display:inline-block;height:8px;margin-left:8px;vertical-align:middle;width:8px}.lesson-complete h2{color:var(--primary-dark);font-size:2.2rem;font-weight:800;margin-bottom:1.5rem;padding-bottom:.8rem;position:relative;text-align:center}.lesson-complete h2:after{background:var(--primary);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.lesson-complete{animation:fadeIn .5s ease-in;padding-top:1.5rem}.non-auth-home{background-color:var(--bg-secondary);color:var(--text-primary);padding:0;width:100%}.hero-section{align-items:center;background:var(--primary);border-radius:var(--radius-md);box-shadow:0 6px 0 var(--primary-dark);box-sizing:border-box;display:flex;margin-top:7rem;min-height:500px;padding:5rem var(--spacing-6);position:relative;width:100%}.hero-content{flex:1 1;margin-right:var(--spacing-6);max-width:600px;position:relative;z-index:2}.hero-content h1{color:#fff;font-size:3.5rem;line-height:1.2;margin-bottom:var(--spacing-5);text-shadow:0 2px 4px #0003}.hero-subtitle{color:#fff;font-size:1.25rem;line-height:1.6;margin-bottom:var(--spacing-6);opacity:.9}.hero-buttons{display:flex;gap:var(--spacing-4);margin-top:var(--spacing-5)}.primary-button{background-color:var(--secondary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-secondary);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:var(--spacing-3) var(--spacing-5);position:relative;top:0;transition:all var(--transition-normal)}.primary-button:hover{background-color:var(--secondary-dark);box-shadow:0 6px 0 var(--secondary-dark);transform:translateY(-2px)}.primary-button:active{box-shadow:none;top:4px;transform:translateY(0)}.secondary-button{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#fff3;border:2px solid #fff;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:var(--spacing-3) var(--spacing-5);transition:all var(--transition-normal)}.secondary-button:hover{background-color:#ffffff4d;transform:translateY(-2px)}.secondary-button:active{transform:translateY(0)}.hero-image{align-items:center;display:flex;flex:1 1;justify-content:center;position:relative;z-index:2}.hero-main-image{height:400px;max-width:550px;object-fit:cover;object-position:center;transform:scale(.85);transition:transform var(--transition-normal)}.hero-main-image,.image-placeholder{background-color:#ffffff26;border:1px solid #ffffff4d;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%}.image-placeholder{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;flex-direction:column;height:300px;justify-content:center;max-width:500px;padding:var(--spacing-8)}.image-placeholder i{color:#fff;font-size:5rem;margin-bottom:var(--spacing-4);text-shadow:0 2px 10px #0003}.image-placeholder span{color:#fff;font-size:1.2rem;opacity:.9}@media (min-width:1440px){.hero-section{padding-left:calc(50vw - 700px + var(--spacing-6));padding-right:calc(50vw - 700px + var(--spacing-6))}}@media (max-width:900px){.hero-section{flex-direction:column;min-height:auto;padding:var(--spacing-6) var(--spacing-4);text-align:center}.hero-content{margin-bottom:var(--spacing-6);margin-right:0;max-width:100%}.hero-buttons{justify-content:center}.hero-image{margin:0 auto;max-width:400px;width:100%}}@media (max-width:768px){.hero-section{border-radius:var(--radius-md);margin-top:5rem;padding:var(--spacing-5) var(--spacing-4)}.hero-content h1{font-size:2.5rem;margin-bottom:var(--spacing-4)}.hero-subtitle{font-size:1.1rem;margin-bottom:var(--spacing-4);padding:0 var(--spacing-2)}.hero-image{display:none}}@media (max-width:480px){.hero-section{min-height:auto;padding:var(--spacing-4) var(--spacing-3)}.hero-content h1{font-size:2rem;margin-bottom:var(--spacing-3)}.hero-subtitle{font-size:1rem;margin-bottom:var(--spacing-3);padding:0}.hero-buttons{flex-direction:column;gap:var(--spacing-3);padding:0 var(--spacing-3)}.primary-button,.secondary-button{font-size:1rem;padding:var(--spacing-3) var(--spacing-4);width:100%}}.features-section{padding:var(--spacing-8) var(--spacing-6);text-align:center}.features-section h2{color:var(--primary);display:inline-block;font-size:2.5rem;margin-bottom:var(--spacing-7);margin-top:2rem;position:relative}.features-section h2:after{background:var(--secondary);border-radius:var(--radius-sm);bottom:-12px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.features-grid{grid-gap:var(--spacing-6);display:grid;gap:var(--spacing-6);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1200px;padding:var(--spacing-4) 0}.feature-card{align-items:center;background-color:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;overflow:hidden;padding:var(--spacing-6) var(--spacing-5);position:relative;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.feature-card:before{background:linear-gradient(90deg,var(--primary) 0,var(--secondary) 100%);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--transition-normal)}.feature-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}.feature-card:hover:before{opacity:1}.feature-icon{align-items:center;background-color:var(--secondary-light);border-radius:var(--radius-round);display:flex;height:80px;justify-content:center;margin-bottom:var(--spacing-4);transition:transform var(--transition-fast);width:80px}.feature-card:hover .feature-icon{transform:scale(1.1)}.feature-icon i{color:var(--secondary);font-size:2rem}.feature-card h3{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:var(--spacing-3)}.feature-card p{color:var(--text-secondary);font-size:1.05rem;line-height:1.6}@media (max-width:1024px){.features-grid{display:flex;flex-direction:column;gap:var(--spacing-6);margin-top:var(--spacing-6);padding:0}.feature-card{margin-bottom:0;max-width:100%;padding:var(--spacing-5) var(--spacing-3)}.feature-card p{margin-left:auto;margin-right:auto;max-width:600px}.features-section{padding:var(--spacing-6) var(--spacing-4)}.features-scroll-indicator{display:none}}@media (max-width:768px){.features-section{overflow:hidden;padding:var(--spacing-6) var(--spacing-4)}.features-section h2{font-size:1.8rem;margin-bottom:var(--spacing-6)}.features-grid{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;display:flex;flex-direction:row;gap:var(--spacing-4);margin:0 -1rem;overflow-x:auto;padding:var(--spacing-2) var(--spacing-4);scroll-padding:0 var(--spacing-4);scroll-snap-type:x mandatory;scrollbar-width:none}.features-grid::-webkit-scrollbar{display:none}.feature-card{box-shadow:var(--shadow-md);flex:0 0 85%;margin-bottom:0;min-width:280px;scroll-snap-align:center;transform:none!important}.feature-card:hover{box-shadow:var(--shadow-md)!important;transform:none!important}.feature-card:hover:before{opacity:0!important}.feature-card:hover .feature-icon{transform:none!important}.features-scroll-indicator{display:flex;gap:8px;justify-content:center;margin-top:var(--spacing-4)}.scroll-dot{background:var(--border-primary);border-radius:50%;height:8px;transition:all .3s ease;width:8px}.scroll-dot.active{background:var(--primary);transform:scale(1.2)}}@media (max-width:480px){.features-section{padding:var(--spacing-5) var(--spacing-3)}.features-section h2{font-size:1.6rem;margin-bottom:var(--spacing-5)}.features-grid{gap:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3)}.feature-card{flex:0 0 90%;padding:var(--spacing-4)}.feature-icon{height:60px;width:60px}.feature-icon i{font-size:1.5rem}.feature-card h3{font-size:1.1rem;margin-bottom:var(--spacing-2);text-align:center}.feature-card p{font-size:.85rem;line-height:1.5}}.token-section{align-items:center;background:linear-gradient(135deg,var(--secondary) 0,var(--secondary-dark) 100%);border-radius:var(--radius-md);box-shadow:0 6px 0 var(--secondary-dark);box-sizing:border-box;display:flex;margin:var(--spacing-6);overflow:hidden;padding:var(--spacing-8) var(--spacing-7);position:relative;width:calc(100% - var(--spacing-12))}.token-content{flex:3 1;padding-right:var(--spacing-6);position:relative;z-index:1}.token-content h2{color:#fff;display:inline-block;font-size:2.5rem;margin-bottom:var(--spacing-4);position:relative;text-shadow:0 1px 2px #0003}.token-content h2:after{background:#fff;border-radius:var(--radius-sm);bottom:-10px;content:"";height:4px;left:0;position:absolute;width:60px}.token-content>p{color:#fff;font-size:1.1rem;line-height:1.6;margin-bottom:var(--spacing-5);max-width:700px;opacity:.9}.token-info-box{background-color:#fff;border:1px solid #fff3;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;margin-top:var(--spacing-4);padding:var(--spacing-5);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.token-info-box:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px)}.token-icon{align-items:center;background-color:var(--secondary-light);border-radius:var(--radius-round);display:flex;flex-shrink:0;height:60px;justify-content:center;margin-right:var(--spacing-4);width:60px}.token-icon i{color:var(--secondary);font-size:1.8rem}.token-details h3{color:var(--text-primary);font-size:1.4rem;font-weight:700;margin-bottom:var(--spacing-3)}.token-details p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-3)}.token-details p:last-child{margin-bottom:0}.token-highlight{color:var(--secondary);font-weight:700;padding:0 2px;position:relative}.token-visual{align-items:center;display:flex;flex:2 1;flex-direction:column;justify-content:center;position:relative;z-index:1}@media (max-width:1024px){.token-section{flex-direction:column;margin:var(--spacing-5);padding:var(--spacing-6) var(--spacing-5);width:calc(100% - var(--spacing-10))}.token-content{margin-bottom:var(--spacing-6);padding-right:0;text-align:center;width:100%}.token-content>p,.token-info-box{margin-left:auto;margin-right:auto;max-width:600px;text-align:left}.token-visual{width:100%}.token-details{text-align:left}}@media (max-width:768px){.token-section{margin:var(--spacing-4) var(--spacing-3);padding:var(--spacing-5) var(--spacing-4);width:calc(100% - var(--spacing-6))}.token-content h2{font-size:2rem;margin-bottom:var(--spacing-3);width:100%}.token-content>p{font-size:1rem;margin-bottom:var(--spacing-3);max-width:100%;padding:0}.token-info-box{align-items:center;box-shadow:var(--shadow-sm);flex-direction:column;margin-top:var(--spacing-3);padding:var(--spacing-4);text-align:center}.token-icon{height:50px;margin:0 0 var(--spacing-3) 0;width:50px}.token-icon i{font-size:1.5rem}.token-details h3{font-size:1.2rem;margin-bottom:var(--spacing-2);text-align:center}.token-details p{font-size:.95rem;margin-bottom:var(--spacing-2)}.token-visual{margin-top:var(--spacing-3)}.token-counter-demo{box-shadow:var(--shadow-sm);padding:var(--spacing-3) var(--spacing-5)}.token-counter-demo i{font-size:1.8rem}.token-counter-demo span{font-size:2rem}.token-visual p{font-size:.95rem;margin-top:var(--spacing-2)}}@media (max-width:480px){.token-section{margin:var(--spacing-2);padding:var(--spacing-5) var(--spacing-4);width:calc(100% - var(--spacing-3))}.token-content h2{display:inline-block;font-size:1.6rem;margin-bottom:var(--spacing-3);position:relative}.token-content h2:after{background:#fff;border-radius:var(--radius-sm);bottom:-8px;content:"";height:3px;left:0;position:absolute;width:100%}.token-content>p{font-size:.9rem;line-height:1.5;margin-bottom:var(--spacing-3)}.token-info-box{box-shadow:var(--shadow-sm);margin:var(--spacing-3) 0 0 0;padding:var(--spacing-4);width:auto}.token-details h3{font-size:1rem;margin-bottom:var(--spacing-2)}.token-details p{font-size:.85rem;line-height:1.5;margin-bottom:var(--spacing-2)}.token-counter-demo{box-shadow:var(--shadow-sm);padding:var(--spacing-3) var(--spacing-4)}.token-counter-demo i{font-size:1.4rem}.token-counter-demo span{font-size:1.6rem}.token-visual{margin-top:var(--spacing-3)}.token-visual p{font-size:.85rem;margin-top:var(--spacing-2)}}.subscription-section{background-color:var(--bg-secondary);box-sizing:border-box;padding:var(--spacing-8) var(--spacing-6);text-align:center;width:100%}.subscription-section h2{color:var(--primary);display:inline-block;font-size:2.5rem;margin-bottom:var(--spacing-3);position:relative}.subscription-section h2:after{background:var(--secondary);border-radius:var(--radius-sm);bottom:-12px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.section-subtitle{color:var(--text-secondary);font-size:1.2rem;margin-bottom:var(--spacing-7);margin-top:var(--spacing-4);max-width:700px}.subscription-tiers{box-sizing:border-box;display:flex;gap:var(--spacing-5);justify-content:center;margin:0 auto var(--spacing-8);max-width:1200px;padding:var(--spacing-3) 0;width:100%}.plan-card-noauth{background-color:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;display:flex;flex-direction:column;padding:var(--spacing-6) var(--spacing-5);position:relative;text-align:center;transition:transform var(--transition-normal),box-shadow var(--transition-normal);width:320px}.plan-card-noauth:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}.featured-plan{border:3px solid var(--secondary);margin:-2px;transform:scale(1.05);z-index:2}.featured-plan:hover{transform:scale(1.05) translateY(-8px)}.plan-badge{background-color:var(--secondary);border-radius:20px;box-shadow:0 2px 5px #0003;color:#fff;font-size:.85rem;font-weight:700;left:50%;padding:var(--spacing-2) var(--spacing-4);position:absolute;top:-15px;transform:translateX(-50%);white-space:nowrap}.plan-card-noauth h3{color:var(--primary);font-size:1.8rem;font-weight:700;margin-bottom:var(--spacing-4)}.plan-price{color:var(--text-primary);font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:var(--spacing-3)}.plan-price span{color:var(--text-secondary);font-size:1rem;font-weight:400}.plan-tokens{align-items:center;border-bottom:1px solid var(--border-primary);display:flex;justify-content:center;margin-bottom:var(--spacing-5);padding-bottom:var(--spacing-5)}.plan-tokens i{color:var(--warning);font-size:1.3rem;margin-right:var(--spacing-2)}.plan-tokens span{color:var(--text-primary);font-weight:600}.plan-features{flex-grow:1;list-style:none;margin:0 0 var(--spacing-5);padding:0;text-align:left}.plan-features li{color:var(--text-secondary);font-size:1rem;padding:var(--spacing-2) 0;padding-left:2rem;position:relative}.plan-features li:before{color:var(--success);content:"✓";font-weight:700;left:0;position:absolute}.plan-button{background-color:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:var(--spacing-3) var(--spacing-4);position:relative;top:0;transition:all var(--transition-normal);width:100%}.plan-button:hover{background-color:var(--primary-dark);box-shadow:0 6px 0 var(--primary-dark);transform:translateY(-2px)}.plan-button:active{box-shadow:none;top:4px;transform:translateY(0)}.featured-plan .plan-button{background-color:var(--secondary);box-shadow:var(--shadow-btn-secondary)}.featured-plan .plan-button:hover{background-color:var(--secondary-dark);box-shadow:0 6px 0 var(--secondary-dark)}.token-booster{align-items:center;background:var(--primary);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--primary-dark);display:flex;flex-direction:column;margin:var(--spacing-6) auto 0;max-width:800px;overflow:hidden;padding:var(--spacing-5);position:relative}.token-booster:before{height:150px;right:-50px;top:-50px;width:150px}.token-booster:after,.token-booster:before{background:#ffffff0d;border-radius:50%;content:"";position:absolute}.token-booster:after{bottom:-75px;height:200px;left:-75px;width:200px}.token-booster h3{align-items:center;color:#fff;display:flex;font-size:1.5rem;gap:var(--spacing-3);margin-bottom:var(--spacing-3)}.token-booster h3 i{color:var(--warning);font-size:1.3rem}.token-booster p{color:#fff;font-size:1.05rem;margin-bottom:var(--spacing-4)}.token-booster .secondary-button{background-color:var(--secondary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-secondary);color:#fff;min-width:200px;transition:all var(--transition-normal)}.token-booster .secondary-button:hover{background-color:var(--secondary-dark);box-shadow:0 6px 0 var(--secondary-dark);color:#fff;transform:translateY(-2px)}@media (max-width:1100px) and (min-width:769px){.subscription-tiers{flex-wrap:nowrap;gap:var(--spacing-3);padding:0 var(--spacing-3)}.plan-card-noauth{min-width:0;padding:var(--spacing-4) var(--spacing-3);width:calc(33.33% - var(--spacing-2))}.plan-card-noauth h3{font-size:1.4rem;margin-bottom:var(--spacing-3)}.plan-price{font-size:2rem}.plan-features{font-size:.9rem}.plan-features li{font-size:.9rem;padding:var(--spacing-2) 0;padding-left:1.5rem}.featured-plan{transform:scale(1.02)}.featured-plan:hover{transform:scale(1.02) translateY(-8px)}.plan-button{font-size:.95rem;padding:var(--spacing-2) var(--spacing-3)}}@media (max-width:768px){.subscription-section{box-sizing:border-box;padding:var(--spacing-7) var(--spacing-4);width:100%}.subscription-tiers{align-items:center;box-sizing:border-box;flex-direction:column;gap:var(--spacing-6);margin:3rem auto;padding:0;width:100%}.plan-card-noauth{box-sizing:border-box;margin:0 auto;max-width:350px;width:100%}.featured-plan{margin:-2px auto;order:0;transform:none}.featured-plan:hover{transform:translateY(-8px)}.subscription-section h2{font-size:2.2rem}.section-subtitle{font-size:1.1rem;padding:0 var(--spacing-2)}}@media (max-width:480px){.subscription-section{box-sizing:border-box;padding:var(--spacing-6) var(--spacing-3);width:100%}.subscription-tiers{box-sizing:border-box;padding:0;width:100%}.plan-card-noauth{box-sizing:border-box;max-width:100%;padding:var(--spacing-5) var(--spacing-3);width:100%}.plan-card-noauth h3{font-size:1.5rem}.plan-price{font-size:2rem}.subscription-section h2{font-size:1.8rem}.token-booster{box-sizing:border-box;margin:var(--spacing-4) var(--spacing-3) 0;padding:var(--spacing-4) var(--spacing-3);width:auto}}.faq-section{background-color:var(--bg-secondary);padding:var(--spacing-8) var(--spacing-6)}.faq-section h2{color:var(--primary);display:inline-block;font-size:2.5rem;left:50%;margin-bottom:var(--spacing-6);position:relative;text-align:center;transform:translateX(-50%)}.faq-section h2:after{background:var(--secondary);border-radius:var(--radius-sm);bottom:-12px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.faq-grid{margin:0 auto;max-width:1200px}.faq-item h3 i{font-size:1rem}@media (max-width:768px){.faq-grid{grid-template-columns:1fr}.faq-section{padding:var(--spacing-6) var(--spacing-4)}.faq-section h2{font-size:2rem}}@media (max-width:480px){.faq-section{padding:var(--spacing-5) var(--spacing-3)}.faq-section h2{font-size:1.8rem}}.cta-section{align-items:center;background:var(--primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;gap:var(--spacing-6);margin-bottom:9rem;margin-left:var(--spacing-6);margin-right:var(--spacing-6);margin-top:var(--spacing-6);overflow:hidden;padding:var(--spacing-8) var(--spacing-6);position:relative}.cta-logo{flex-shrink:0;height:180px;margin-left:var(--spacing-8);margin-right:var(--spacing-8);object-fit:contain;width:180px}.cta-content{flex:1 1;position:relative;text-align:left;z-index:2}.cta-section h2{color:#fff;font-size:2.2rem;font-weight:700;line-height:1.2;margin-bottom:var(--spacing-3)}.cta-section p{color:#ffffffe6;font-size:1.25rem;line-height:1.6;margin-bottom:var(--spacing-4);opacity:.9}.cta-actions{align-items:flex-start;display:flex;flex-direction:column;gap:var(--spacing-3)}.cta-section .primary-button{background-color:var(--secondary);box-shadow:0 6px 0 var(--secondary-dark);color:#fff;font-size:1.1rem;margin:0;min-width:250px;padding:var(--spacing-4) var(--spacing-6)}.cta-note{align-items:center;color:#fffc;display:flex;font-size:.95rem!important;gap:var(--spacing-2);margin:0}@media (max-width:1024px){.cta-section{margin:var(--spacing-5);padding:var(--spacing-6) var(--spacing-5)}.cta-logo{height:150px;margin-left:var(--spacing-3);width:150px}}@media (max-width:768px){.cta-section{flex-direction:column;gap:var(--spacing-4);margin:var(--spacing-4) var(--spacing-3);margin-bottom:6rem;padding:var(--spacing-6) var(--spacing-4);text-align:center}.cta-logo{height:110px;margin:0;width:110px}.cta-content{text-align:center}.cta-actions{align-items:center}.cta-section h2{font-size:1.8rem;margin-bottom:var(--spacing-2)}.cta-section p{font-size:1rem;margin-bottom:var(--spacing-3)}.cta-section .primary-button{font-size:1rem;max-width:300px;padding:var(--spacing-3) var(--spacing-4);width:100%}.cta-note{font-size:.9rem!important;justify-content:flex-start;max-width:300px;text-align:left;width:100%}}@media (max-width:480px){.cta-section{margin:var(--spacing-3) var(--spacing-2);margin-bottom:5rem;padding:var(--spacing-5) var(--spacing-3)}.cta-logo{height:120px;width:120px}.cta-section h2{font-size:1.6rem}.cta-section p{font-size:.95rem}.cta-section .primary-button{padding:var(--spacing-3) var(--spacing-4)}.cta-note{font-size:.85rem!important}}.features-showcase{background-color:var(--bg-secondary);padding:var(--spacing-8) var(--spacing-6);padding-top:0}.showcase-container{margin:var(--spacing-6) auto;max-width:1200px;padding:0 var(--spacing-4)}.showcase-tabs{border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:center;margin-bottom:var(--spacing-6);padding:var(--spacing-2)}.showcase-tab,.showcase-tabs{background:var(--bg-secondary);display:flex;gap:var(--spacing-2)}.showcase-tab{align-items:center;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:1.1rem;font-weight:600;min-width:160px;padding:var(--spacing-3) var(--spacing-4);position:relative;transition:all var(--transition-normal)}.showcase-tab i{font-size:1rem;opacity:.8}.showcase-tab:hover{background:#fff;box-shadow:var(--shadow-sm);transform:translateY(-2px)}.showcase-tab.active{background:#fff;border-color:var(--primary);box-shadow:var(--shadow-md);color:var(--primary);transform:translateY(-4px)}.showcase-tab.active i{color:var(--secondary);opacity:1}.showcase-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:0 auto;max-width:1000px;padding:var(--spacing-6)}.showcase-panel{display:none;opacity:0;transition:opacity var(--transition-normal)}.showcase-panel.active{align-items:flex-start;display:flex;gap:var(--spacing-6);opacity:1}.showcase-info{flex:1 1;max-width:450px;padding-right:var(--spacing-6)}.showcase-info h3{color:var(--primary);font-size:2rem;line-height:1.2;margin-bottom:var(--spacing-4);margin-top:10px}.showcase-info p{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin-bottom:var(--spacing-4)}.showcase-screenshots{grid-gap:var(--spacing-4);display:grid;flex:1.5 1;gap:var(--spacing-4);grid-template-columns:repeat(2,1fr)}.screenshot{border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-normal)}.screenshot:hover{transform:scale(1.02)}.screenshot img{display:block;height:auto;width:100%}.showcase-screenshots .image-placeholder{align-items:center;background-color:var(--bg-secondary);border-radius:var(--radius-md);display:flex;flex-direction:column;justify-content:center;min-height:180px;padding:var(--spacing-4)}.showcase-screenshots .image-placeholder:hover{box-shadow:var(--shadow-md);transform:scale(1.02)}.showcase-screenshots .image-placeholder i{color:var(--primary);font-size:3rem;margin-bottom:var(--spacing-3);opacity:.8}.showcase-screenshots .image-placeholder span{color:var(--text-secondary);font-size:1rem;text-align:center}@media (max-width:1024px){.showcase-content{padding:var(--spacing-5)}.showcase-panel.active{gap:var(--spacing-5)}.showcase-info{padding-right:var(--spacing-5)}}@media (max-width:768px){.showcase-content{padding:var(--spacing-4)}.showcase-panel.active{flex-direction:column;gap:var(--spacing-5)}.showcase-info{margin-top:0;padding-right:0}.showcase-slider{width:100%}}.showcase-slider{flex:1 1;padding:0;position:relative}.slider-container{border-radius:var(--radius-lg);height:300px;margin-top:var(--spacing-2);overflow:hidden;position:relative;width:100%}.slider-slide{height:100%;left:0;opacity:0;position:absolute;top:0;transform:translateX(100%);transition:all .5s ease-in-out;width:100%}.slider-slide.active{opacity:1;transform:translateX(0)}.slider-dots{display:flex;gap:var(--spacing-2);justify-content:center;margin-top:var(--spacing-4)}.slider-dot{background-color:var(--border-primary);border:none;border-radius:50%;cursor:pointer;height:10px;padding:0;transition:all var(--transition-normal);width:10px}.slider-dot.active{background-color:var(--primary);transform:scale(1.2)}@media (max-width:768px){.features-showcase{display:block!important;padding:var(--spacing-6) var(--spacing-4)}.showcase-container{display:none!important}.mobile-showcase{display:block!important;padding:0 var(--spacing-4);text-align:center}.mobile-showcase-title{color:var(--primary);font-size:1.6rem;font-weight:700;margin-bottom:var(--spacing-4)}.mobile-showcase-description{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:var(--spacing-6)}.mobile-showcase-carousel{margin:0 -1rem;overflow:hidden;padding:0 var(--spacing-4);position:relative}.carousel-container{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;display:flex;gap:var(--spacing-4);overflow-x:auto;padding-bottom:var(--spacing-4);scroll-snap-type:x mandatory;scrollbar-width:none}.carousel-container::-webkit-scrollbar{display:none}.carousel-slide{background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex:0 0 85%;overflow:hidden;scroll-snap-align:center}.carousel-image{align-items:center;background:var(--bg-secondary);display:flex;height:200px;width:100%}.carousel-image i{color:var(--primary);font-size:3rem}.carousel-caption{background:#fff;margin-bottom:1rem;text-align:center}.carousel-caption h3{color:var(--primary);font-size:1.1rem}.carousel-caption p{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.carousel-caption .mobile-description{display:block}.carousel-caption .desktop-description{display:none}.carousel-dots{display:flex;gap:8px;justify-content:center;margin-top:var(--spacing-4);padding:.1rem}.carousel-dot{background:var(--border-primary);border-radius:50%;height:8px;transition:all .3s ease;width:8px}.carousel-dot.active{background:var(--primary);transform:scale(1.2)}}@media (max-width:480px){.features-showcase{padding:var(--spacing-5) var(--spacing-3)}.mobile-showcase{padding:0 var(--spacing-3)}.mobile-showcase-title{font-size:1.3rem}.mobile-showcase-description{font-size:.9rem}.carousel-slide{flex:0 0 90%}.carousel-image{height:180px}.carousel-caption{padding:var(--spacing-3)}.carousel-caption h3{font-size:.95rem}.carousel-caption p{font-size:.85rem}}@media (min-width:769px){.features-showcase{display:block!important}.mobile-showcase{display:none!important}.showcase-container{display:block!important}.showcase-panel{display:none}.showcase-panel.active{display:flex}.carousel-caption .mobile-description{display:none}.carousel-caption .desktop-description{display:block}}.faq-more{display:flex;justify-content:center;margin-top:var(--spacing-6)}.faq-more .primary-button{min-width:200px;text-align:center}.community-preview-section{background-color:#f8f9fa;padding:60px 20px;text-align:center}.community-preview-section h2{color:var(--primary);font-size:2.2rem;margin-bottom:16px}.section-subtitle{color:#666;font-size:1.1rem;margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:800px}.community-courses-preview{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin:0 auto;max-width:1200px;padding:20px 0}.preview-course-card{background-color:#fff;border-radius:10px;box-shadow:0 3px 10px #0000001a;cursor:pointer;display:flex;flex-direction:column;min-height:160px;overflow:hidden;transition:transform .2s,box-shadow .2s}.preview-course-card:hover{box-shadow:0 6px 15px #00000026;transform:translateY(-5px)}.preview-course-header{align-items:center;background:linear-gradient(to right,var(--secondary-light),var(--secondary));color:#fff;display:flex;padding:15px;position:relative}.preview-flag{font-size:1.4rem;margin-right:10px}.preview-course-header h3{flex-grow:1;font-size:1.1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-badge{align-items:center;background-color:#ffffffe6;border-radius:50%;color:var(--primary);display:flex;font-size:.8rem;height:26px;justify-content:center;position:absolute;right:10px;top:10px;width:26px}.preview-course-info{display:flex;flex-direction:column;flex-grow:1;justify-content:space-between;padding:15px}.preview-course-info p{align-items:center;color:#666;display:flex;font-size:.9rem;margin:0}.preview-course-info i{color:var(--primary);margin-right:8px}.preview-error,.preview-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:200px}.preview-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top:4px solid var(--primary);height:40px;margin-bottom:15px;width:40px}.preview-error{color:#d9534f}.preview-actions{margin-top:30px}@media (max-width:768px){.community-courses-preview{grid-template-columns:1fr;max-width:400px}}.token-counter-demo{align-items:center;background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;gap:var(--spacing-3);margin-bottom:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);transition:transform var(--transition-normal)}.token-counter-demo:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.token-counter-demo i{color:var(--warning);font-size:2rem}.token-counter-demo span{animation:countUp .5s ease-out;color:var(--text-primary);display:inline-block;font-size:2.5rem;font-weight:700;position:relative}@keyframes countUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.token-visual p{animation:fadeIn .5s ease-out .3s both;color:#fff;font-size:1.1rem;margin-top:var(--spacing-3);opacity:.9;text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:.9;transform:translateY(0)}}.plan-toggle-buttons{display:none}@media (max-width:768px){.plan-toggle-buttons{display:flex;gap:var(--spacing-3);justify-content:center;margin-bottom:var(--spacing-4);padding:0 var(--spacing-4)}.plan-toggle-button{background:#fff;border:2px solid var(--primary);border-radius:var(--radius-md);color:var(--primary);cursor:pointer;font-size:1rem;font-weight:600;min-width:100px;padding:var(--spacing-3) var(--spacing-4);transition:all var(--transition-normal)}.plan-toggle-button:hover{background:var(--primary-light);transform:translateY(-2px)}.plan-toggle-button:active{transform:translateY(0)}.plan-toggle-button.active{background:var(--primary);border-color:var(--primary);color:#fff}.plan-toggle-button.active:hover{background:var(--primary-dark)}.subscription-tiers .plan-card-noauth{display:none}.subscription-tiers .plan-card-noauth.active{display:flex}.token-booster{margin:var(--spacing-4) var(--spacing-3) 0;padding:var(--spacing-4);text-align:center}.token-booster h3{font-size:1.3rem;gap:var(--spacing-2);justify-content:center}}@media (max-width:480px){.token-booster{margin:var(--spacing-3) var(--spacing-2) 0;padding:var(--spacing-4) var(--spacing-3)}.token-booster h3{font-size:1.2rem;gap:var(--spacing-2);justify-content:center}.token-booster h3 i{font-size:1.1rem}.token-booster p{font-size:.9rem}.token-booster .secondary-button{font-size:.9rem;padding:var(--spacing-2) var(--spacing-4)}}.slide-image{border-radius:var(--radius-lg)}.carousel-main-image,.slide-image{background-color:#fff;height:100%;object-fit:contain;object-position:center;width:100%}.slider-slide .image-placeholder{align-items:center;background-color:var(--bg-secondary);border-radius:var(--radius-lg);display:flex;flex-direction:column;height:100%;justify-content:center;transition:transform var(--transition-normal);width:100%}.slider-slide .image-placeholder:hover{transform:scale(1.02)}.slider-slide .image-placeholder i{color:var(--primary);font-size:4rem;margin-bottom:var(--spacing-4)}.slider-slide .image-placeholder span{color:var(--text-secondary);font-size:1.2rem;text-align:center}.community-register-cta{align-items:center;background:var(--primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;justify-content:center;margin:var(--spacing-6) 0 var(--spacing-4) 0;padding:var(--spacing-5) var(--spacing-6);position:relative;text-align:center}.community-register-cta-content{align-items:center;color:#fff;display:flex;flex-wrap:wrap;font-size:1.15rem;font-weight:500;gap:var(--spacing-4);justify-content:center}.community-register-cta-content i.fas.fa-bolt{color:var(--warning);font-size:2rem;margin-right:var(--spacing-2)}.community-register-cta-text{color:#fff;flex:1 1;font-size:1.1rem;font-weight:500;margin-right:var(--spacing-4);min-width:200px}.community-register-cta .primary-button{background-color:var(--secondary);border-radius:var(--radius-md);box-shadow:0 6px 0 var(--secondary-dark);color:#fff;font-size:1rem;font-weight:600;margin-left:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);transition:all var(--transition-normal)}.community-register-cta .primary-button:hover{background-color:var(--secondary-dark);box-shadow:0 6px 0 var(--secondary-dark);transform:translateY(-2px)}@media (max-width:768px){.community-register-cta{margin:var(--spacing-4) 0 var(--spacing-3) 0;padding:var(--spacing-4) var(--spacing-2)}.community-register-cta-content{flex-direction:column;font-size:1rem;gap:var(--spacing-3)}.community-register-cta-text{font-size:1rem;margin-right:0}.community-register-cta .primary-button{margin-left:0;width:100%}}.reset-password-container{align-items:center;background-color:var(--bg-secondary);display:flex;justify-content:center;min-height:100vh;padding:2rem}.reset-password-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:400px;padding:2rem;text-align:center;width:100%}.reset-password-card h2{color:var(--primary);font-size:1.75rem;margin-bottom:1rem}.reset-password-card form{box-shadow:none}.reset-password-card p{color:var(--text-secondary);margin-bottom:2rem}.form-group{margin-bottom:1.5rem;text-align:left}.form-group label{color:var(--text-primary);display:block;font-weight:600;margin-bottom:.5rem}.form-group input{border:2px solid var(--border-primary);border-radius:var(--radius-md);font-size:1rem;padding:.875rem;transition:all .2s;width:100%}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1);outline:none}.password-requirements{color:var(--text-secondary);display:block;font-size:.85rem;line-height:1.4;margin-top:.5rem}.error-message{background-color:var(--error-light);border-radius:var(--radius-md);color:var(--error);margin-bottom:1rem;padding:.75rem}.error-message,.reset-button{align-items:center;display:flex;gap:.5rem}.reset-button{background:var(--primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;justify-content:center;padding:.875rem;transition:all .2s;width:100%}.reset-button:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px)}.reset-button:disabled{background:var(--border-primary);cursor:not-allowed}.reset-password-card.error,.reset-password-card.success{text-align:center}.reset-password-card.error i,.reset-password-card.success i{font-size:3rem;margin-bottom:1rem}.reset-password-card.error i{color:var(--error)}.reset-password-card.success i{color:var(--primary)}.reset-password-card i.fa-spinner{color:var(--primary);font-size:2rem;margin-bottom:1rem}.back-to-login{background:var(--bg-secondary);border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .2s}.back-to-login:hover{background:var(--bg-tertiary);transform:translateY(-2px)}@media (max-width:480px){.reset-password-container{padding:1rem}.reset-password-card{padding:1.5rem}}.not-found-container{align-items:center;display:flex;justify-content:center;min-height:calc(90vh - 60px);padding:20px}.not-found-box{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:2rem;max-width:400px;padding:40px;text-align:center;width:100%}.not-found-image{height:120px;margin-bottom:20px;width:120px}.not-found-box h2{color:#333;font-size:24px;margin-bottom:12px}.not-found-box p{color:#666;margin-bottom:24px}.not-found-link{align-items:center;background-color:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-primary);color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:8px;padding:var(--spacing-3) var(--spacing-5);position:relative;text-decoration:none;top:0;transition:all var(--transition-normal)}.not-found-link:hover{background-color:var(--primary-dark);box-shadow:0 6px 0 var(--primary-dark);color:#fff;text-decoration:none;transform:translateY(-2px)}.not-found-link:active{box-shadow:none;color:#fff;text-decoration:none;top:4px;transform:translateY(0)}.not-found-link i{font-size:16px}.faq-page{align-items:center;background-color:var(--bg-secondary);color:var(--text-primary);display:flex;flex-direction:column;min-height:100vh;padding:0;width:100%}.faq-header{background:var(--primary);border-radius:var(--radius-md);box-shadow:0 6px 0 var(--primary-dark);box-sizing:border-box;color:#fff;margin:5rem var(--spacing-6) 0;max-width:1200px;padding:4rem var(--spacing-6);text-align:center;width:calc(100% - var(--spacing-12))}.faq-header h1{color:#fff;font-size:3rem;margin-bottom:var(--spacing-3);text-shadow:0 2px 4px #0003}.faq-header p{color:#fff;font-size:1.2rem;opacity:.9}.faq-content{box-sizing:border-box;margin:var(--spacing-6) auto;max-width:1200px;padding:0;width:calc(100% - var(--spacing-12))}.faq-category{margin-bottom:var(--spacing-8)}.faq-category h2{color:var(--primary);display:inline-block;font-size:2rem;margin-bottom:var(--spacing-5);position:relative}.faq-category h2:after{background:var(--secondary);border-radius:var(--radius-sm);bottom:-8px;content:"";height:4px;left:0;position:absolute;width:60px}.faq-grid{grid-gap:var(--spacing-4);display:grid;gap:var(--spacing-4);grid-template-columns:repeat(2,1fr)}.faq-item{background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-5);transition:transform var(--transition-normal)}.faq-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.faq-item h3{align-items:flex-start;color:var(--primary);display:flex;font-size:1.2rem;gap:var(--spacing-3);line-height:1.4;margin-bottom:var(--spacing-3)}.faq-item h3 i{color:var(--secondary);flex-shrink:0;font-size:1.1rem;margin-top:4px}.faq-item p{color:var(--text-secondary);font-size:1rem;line-height:1.6}.faq-footer{box-sizing:border-box;margin:0 auto var(--spacing-8);max-width:1200px;padding:0;width:calc(100% - var(--spacing-12))}.support-box{background:var(--primary);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--primary-dark);box-sizing:border-box;color:#fff;margin:0 auto;max-width:800px;padding:var(--spacing-6);text-align:center;width:100%}.support-box i{color:#fff;font-size:2.5rem;margin-bottom:var(--spacing-4)}.support-box h3{color:#fff;font-size:1.8rem;margin-bottom:var(--spacing-3)}.support-box p{color:#fff;font-size:1.1rem;line-height:1.6;margin-bottom:var(--spacing-4);opacity:.9}.support-button{align-items:center;background-color:var(--secondary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-btn-secondary);box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);text-decoration:none;transition:all var(--transition-normal);white-space:nowrap}.support-button:hover{background-color:var(--secondary-dark);box-shadow:0 6px 0 var(--secondary-dark);color:#fff;text-decoration:none;transform:translateY(-2px)}@media (max-width:1024px){.faq-page{margin-top:6rem}.faq-header{margin:var(--spacing-5);padding:var(--spacing-6) var(--spacing-5)}.faq-content{padding:0 var(--spacing-5)}}@media (max-width:768px){.faq-header{border-radius:var(--radius-md);margin:6rem var(--spacing-4) 0;padding:var(--spacing-5) var(--spacing-4)}.faq-header h1{font-size:2.2rem}.faq-header p{font-size:1.1rem;padding:0 var(--spacing-3)}.faq-content{margin:var(--spacing-6) auto;width:calc(100% - var(--spacing-8))}.faq-grid{grid-template-columns:1fr}.faq-category h2{font-size:1.8rem}.faq-item{padding:var(--spacing-4)}.faq-footer{margin:0 auto var(--spacing-6);width:calc(100% - var(--spacing-8))}.support-box{padding:var(--spacing-5)}.support-box i{font-size:2rem;margin-bottom:var(--spacing-3)}.support-box h3{font-size:1.6rem;margin-bottom:var(--spacing-3)}.support-box p{font-size:1rem;margin-bottom:var(--spacing-3);padding:0 var(--spacing-3)}.support-button{justify-content:center;max-width:300px;width:100%}}@media (max-width:480px){.faq-header{border-radius:var(--radius-md);margin:6rem var(--spacing-1) 0;padding:var(--spacing-4) var(--spacing-1)}.faq-header h1{font-size:1.8rem}.faq-header p{font-size:1rem;padding:0}.faq-content{max-width:100%;padding:0;width:100%}.faq-item{box-sizing:border-box;margin:0 auto var(--spacing-3) auto;padding:var(--spacing-2);width:100%}.faq-item h3{font-size:1.1rem;gap:var(--spacing-2)}.faq-item p{font-size:.95rem}.faq-footer{width:100%}.support-box{padding:var(--spacing-4)}.support-box i{font-size:1.75rem;margin-bottom:var(--spacing-3)}.support-box h3{font-size:1.4rem;margin-bottom:var(--spacing-2)}.support-box p{font-size:.95rem;line-height:1.5;margin-bottom:var(--spacing-3);padding:0}.support-button{font-size:.95rem;max-width:250px;padding:var(--spacing-3) var(--spacing-4);width:100%}}.terms-page{color:var(--text-primary);margin:5rem auto;max-width:1000px;padding:2rem}.terms-header{margin-bottom:3rem;text-align:center}.terms-header h1{color:var(--primary);font-size:2.5rem;margin-bottom:.5rem}.terms-header p{color:var(--text-secondary);font-size:1rem}.terms-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:3rem}.terms-content section{margin-bottom:2.5rem}.terms-content section:last-child{margin-bottom:0}.terms-content h2{border-bottom:2px solid var(--border-primary);color:var(--primary);font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem}.terms-content p{color:var(--text-primary);line-height:1.6;margin-bottom:1rem}.terms-content ul{list-style-type:none;margin-bottom:1rem;padding-left:1.5rem}.terms-content ul li{line-height:1.6;margin-bottom:.75rem;position:relative}.terms-content ul li:before{color:var(--secondary);content:"•";font-weight:700;left:-1.5rem;position:absolute}.terms-content strong{color:var(--primary);font-weight:600}.contact-info{background:var(--bg-secondary);border-radius:var(--radius-md);display:inline-block;margin-top:.5rem;padding:1rem}@media (max-width:768px){.terms-page{margin-bottom:3rem;margin-top:3rem;padding:1rem}.terms-content{padding:1.5rem}.terms-header h1{font-size:2rem}.terms-content h2{font-size:1.3rem}}@media (max-width:480px){.terms-page{margin-bottom:2rem;margin-top:2rem}.terms-content,.terms-page{padding:1rem}.terms-header h1{font-size:1.8rem}.terms-content h2{font-size:1.2rem}}.blog-page{margin:4rem auto 0;max-width:1200px;padding:2rem}.blog-header{margin:4rem auto 3rem;max-width:800px;padding:0 2rem;text-align:center}.blog-header h1{color:var(--primary);display:inline-block;font-size:3rem;line-height:1.2;margin-bottom:1rem;position:relative}.blog-header h1:after{background:var(--secondary);border-radius:var(--radius-sm);bottom:-12px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.blog-header p{color:var(--text-secondary);font-size:1.2rem;line-height:1.6;margin-top:1.5rem}.blog-container{align-items:flex-start;display:flex;gap:2rem}.blog-posts{grid-gap:1.5rem;align-items:start;display:grid;flex:1 1;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.blog-filters{align-self:flex-start;background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);flex-shrink:0;height:fit-content;padding:1.5rem;position:sticky;top:2rem;width:280px}.blog-filters h2{border-bottom:2px solid var(--border-primary);color:var(--primary);font-size:1.2rem;margin-bottom:1rem;padding-bottom:.5rem}.filter-section{margin-bottom:1.5rem}.filter-section h3{color:var(--text-primary);font-size:1rem;margin-bottom:.75rem}.search-input{border:1px solid var(--border-primary);border-radius:var(--radius-md);box-sizing:border-box;font-size:.9rem;margin-bottom:1rem;padding:.75rem;width:100%}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.1);outline:none}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag-button{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:.9rem;padding:.4rem .8rem;transition:all var(--transition-normal)}.tag-button:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.tag-button.active{background:var(--primary);border-color:var(--primary);color:#fff}.language-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23666' d='M6 8 2 4h8z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;border:1px solid var(--border-primary);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:.75rem 2rem .75rem .75rem;width:100%}.language-select:focus{border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.1);outline:none}.blog-post-card{background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:all var(--transition-normal)}.blog-post-card:before{background:linear-gradient(90deg,var(--primary) 0,var(--secondary) 100%);content:"";height:4px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--transition-normal)}.blog-post-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.blog-post-card:hover:before{opacity:1}.blog-post-card a{color:inherit;display:flex;flex-direction:column;height:100%;padding:1.25rem;text-decoration:none}.blog-post-card h2{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--primary);display:-webkit-box;font-size:1.2rem;font-weight:700;line-height:1.3;margin-bottom:.5rem;overflow:hidden;transition:color var(--transition-normal)}.blog-post-card:hover h2{color:var(--secondary)}.post-meta{display:flex;font-size:.85rem;gap:1rem;opacity:.8}.post-description,.post-meta{color:var(--text-secondary);margin-bottom:.75rem}.post-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;flex:1 1;line-height:1.4;overflow:hidden}.read-more{align-items:center;color:var(--secondary);display:flex;font-weight:600;gap:.5rem;margin-top:auto;transition:all var(--transition-normal)}.read-more i{font-size:.8rem;transition:transform var(--transition-normal)}.blog-post-card:hover .read-more{color:var(--secondary-dark)}.blog-post-card:hover .read-more i{transform:translateX(4px)}.no-posts{background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);grid-column:1/-1;padding:3rem;text-align:center}.no-posts i{color:var(--text-secondary);font-size:2rem;margin-bottom:1rem}.no-posts h3{color:var(--text-primary);margin-bottom:.5rem}.no-posts p{color:var(--text-secondary)}.blog-post{margin:2rem auto;max-width:1000px;padding:2rem}.back-to-blog{align-items:center;color:var(--primary);display:inline-flex;font-weight:500;gap:.5rem;margin:3rem 0 2rem;text-decoration:none;transition:color var(--transition-normal)}.back-to-blog:hover{color:var(--secondary)}.back-to-blog i{font-size:.9rem;transition:transform var(--transition-normal)}.back-to-blog:hover i{transform:translateX(-4px)}.post-header{background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:2rem;overflow:hidden;padding:2.5rem;position:relative}.post-header:before{background:linear-gradient(90deg,var(--primary) 0,var(--secondary) 100%);content:"";height:4px;left:0;position:absolute;right:0;top:0}.post-header h1{color:var(--primary);font-size:2.8rem;font-weight:700;line-height:1.2;margin-bottom:1rem}.post-meta-header{align-items:center;border-top:1px solid var(--border-primary);color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:1rem;gap:1.5rem;margin-top:1.5rem;padding-top:1.5rem}.post-meta-item{align-items:center;display:flex;gap:.5rem}.post-meta-item i{color:var(--secondary);font-size:1.1rem}.post-tags{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.post-tag{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);display:flex;font-size:.9rem;gap:.5rem;padding:.4rem .8rem}.post-tag i{color:var(--secondary);font-size:.8rem}.language-tag{background:#fff;border-color:var(--primary);font-weight:500}.language-tag,.language-tag i{color:var(--primary)}.markdown-content{background:#fff;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:var(--text-primary);font-size:1.1rem;line-height:1.6;padding:2.5rem}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{color:var(--primary);font-weight:700;line-height:1.3;margin:2rem 0 1rem}.markdown-content h1{font-size:2.2rem;margin-top:3rem}.markdown-content h2{border-bottom:2px solid var(--border-primary);font-size:1.8rem;margin-top:2.5rem;padding-bottom:.5rem}.markdown-content h3{font-size:1.5rem;margin-top:2rem}.markdown-content h4{font-size:1.3rem}.markdown-content h5{font-size:1.1rem}.markdown-content h6{font-size:1rem}.markdown-content p{line-height:1.8;margin-bottom:1.5rem}.markdown-content strong{color:var(--text-primary);font-weight:600}.markdown-content em{font-style:italic}.markdown-content blockquote{background:var(--bg-secondary);border-left:4px solid var(--secondary);border-radius:var(--radius-md);color:var(--text-secondary);font-style:italic;margin:2rem 0;padding:1rem 1.5rem}.markdown-content blockquote p{margin:0}.markdown-content ol,.markdown-content ul{margin:1.5rem 0;padding-left:2rem}.markdown-content li{line-height:1.7;margin-bottom:.75rem}.markdown-content ul li::marker{color:var(--secondary)}.markdown-content ol li::marker{color:var(--primary);font-weight:600}.markdown-content code{background:var(--bg-secondary);border-radius:var(--radius-sm);color:var(--primary);font-family:monospace;font-size:.9em;padding:.2rem .4rem}.markdown-content pre{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);margin:1.5rem 0;overflow-x:auto;padding:1.5rem}.markdown-content pre code{background:none;color:var(--text-primary);font-size:.9rem;padding:0}.markdown-content table{border-collapse:collapse;font-size:.95em;margin:2rem 0;width:100%}.markdown-content th{background:var(--bg-secondary);color:var(--primary);font-weight:600;text-align:left}.markdown-content td,.markdown-content th{border:1px solid var(--border-primary);padding:1rem}.markdown-content tr:nth-child(2n){background:var(--bg-secondary)}.markdown-content img{border-radius:var(--radius-md);display:block;height:auto;margin:2rem 0;max-width:100%}.markdown-content hr{border:none;border-top:2px solid var(--border-primary);margin:3rem 0}.markdown-content a{border-bottom:1px solid var(--secondary);color:var(--secondary);text-decoration:none;transition:all var(--transition-normal)}.markdown-content a:hover{border-bottom-color:var(--secondary-dark);color:var(--secondary-dark)}.blog-loading{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--bg-secondary);border:3px solid var(--bg-secondary);border-radius:50%;border-top-color:var(--primary);height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.blog-page{margin-top:5rem;padding:1rem}.blog-header{margin:2rem auto 1.5rem;padding:0 1rem}.blog-header h1{font-size:2.2rem}.blog-header p{font-size:1rem;margin-top:1rem}.blog-container{flex-direction:column;gap:1.5rem}.blog-filters{margin-bottom:1.5rem;padding:1.25rem;position:static;width:100%}.blog-posts{gap:1.25rem;grid-template-columns:1fr}.blog-post-card{min-height:auto}.blog-post-card h2{font-size:1.3rem}.blog-post-card a{padding:1rem}.post-description{font-size:.95rem;margin-bottom:1rem}.blog-post{margin-top:5rem;padding:1rem}.back-to-blog{font-size:.95rem;margin:1.5rem 0}.post-header{border-left:none;border-radius:0;border-right:none;margin:0 -1rem 1.5rem;padding:1.5rem}.post-header h1{font-size:1.8rem}.post-meta-header{flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem}.post-meta-item{font-size:.9rem}.post-tags{gap:.5rem;margin-top:1rem}.post-tag{font-size:.85rem;padding:.3rem .6rem}.markdown-content{border-left:none;border-radius:0;border-right:none;margin:0 -1rem;padding:1.5rem}}@media (max-width:480px){.blog-page{padding:.75rem}.blog-header{margin:1.5rem auto 1rem}.blog-header h1{font-size:1.8rem}.blog-filters{margin:0 .5rem 1rem;padding:1rem;width:auto}.filter-section h3,.language-select,.search-input{font-size:.95rem}.tag-button{font-size:.85rem;padding:.35rem .7rem}.blog-post-card{border-radius:var(--radius-md)}.blog-post-card h2{font-size:1.2rem}.post-meta{font-size:.8rem}.blog-post{margin-top:5rem;padding:0}.post-header{border-radius:var(--radius-md);padding:1.25rem}.post-header h1{font-size:1.6rem}.markdown-content{border-radius:var(--radius-md);padding:1.25rem}.no-posts{padding:2rem 1rem}.no-posts h3{font-size:1.2rem}.no-posts p{font-size:.9rem}}.blog-cta{background:var(--primary);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:3rem -2.5rem -2.5rem;overflow:hidden;padding:3rem 2rem;position:relative}.blog-cta:before{height:150px;right:-50px;top:-50px;width:150px}.blog-cta:after,.blog-cta:before{background:#ffffff0d;border-radius:50%;content:"";position:absolute}.blog-cta:after{bottom:-75px;height:200px;left:-75px;width:200px}.blog-cta-content{margin:0 auto;max-width:600px;position:relative;text-align:center;z-index:2}.blog-cta-icon{align-items:center;background:#ffffff1a;border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.blog-cta-icon i{color:var(--warning);font-size:2.5rem}.blog-cta h3{color:#fff;font-size:2rem;line-height:1.3;margin-bottom:1rem}.blog-cta p{color:#ffffffe6;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.blog-cta .highlight{color:var(--warning);font-weight:600}.blog-cta-button{align-items:center;background:var(--secondary);border:none;border-radius:var(--radius-md);box-shadow:0 6px 0 var(--secondary-dark);color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.75rem;padding:1rem 2rem;transition:all var(--transition-normal)}.blog-cta-button:hover{box-shadow:0 8px 0 var(--secondary-dark);transform:translateY(-2px)}.blog-cta-button:active{box-shadow:0 2px 0 var(--secondary-dark);transform:translateY(2px)}.blog-cta-note{align-items:center;display:flex;font-size:.9rem!important;gap:.5rem;justify-content:center;margin-bottom:0!important;margin-top:1rem!important}.blog-cta-note i{font-size:.9rem}@media (max-width:768px){.blog-cta{margin:2rem -1.25rem -1.25rem;padding:2rem 1.5rem}.blog-cta-icon{height:60px;margin-bottom:1rem;width:60px}.blog-cta-icon i{font-size:2rem}.blog-cta h3{font-size:1.6rem}.blog-cta p{font-size:1rem;margin-bottom:1.5rem}.blog-cta-button{font-size:1rem;justify-content:center;padding:.875rem 1.5rem;width:100%}}@media (max-width:480px){.blog-cta{margin:1.5rem -1rem -1rem;padding:1.5rem 1rem}.blog-cta h3{font-size:1.4rem}.blog-cta p{font-size:.95rem}.blog-cta-note{font-size:.85rem!important}}.related-posts{margin-top:4rem}.related-posts h2{color:var(--primary);display:inline-block;font-size:2rem;margin-bottom:2rem;position:relative}.related-posts h2:after{background:var(--secondary);border-radius:var(--radius-sm);bottom:-12px;content:"";height:4px;left:0;position:absolute;width:60px}.related-posts-grid{grid-gap:2rem;align-items:stretch;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr)}.related-posts-grid .blog-post-card{height:100%;margin:0}.related-posts-grid .blog-post-card h2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:1.2rem;line-height:1.4;margin-bottom:.75rem;overflow:hidden}.related-posts-grid .blog-post-card .post-description{-webkit-line-clamp:2;font-size:.95rem;line-height:1.5;margin-bottom:1.5rem}@media (max-width:768px){.related-posts{margin-top:3rem}.related-posts h2{font-size:1.8rem;margin-bottom:1.5rem}.related-posts-grid{gap:1.5rem;grid-template-columns:1fr}.related-posts-grid .blog-post-card h2{font-size:1.1rem;margin-bottom:.5rem}.related-posts-grid .blog-post-card .post-description{font-size:.9rem;margin-bottom:1rem}}.notification-bell{align-items:center;background:#fff3;border:2px solid #ffffff4d;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:44px;justify-content:center;outline:none;position:relative;transition:all .2s;width:44px}.notification-bell:hover{background:#ffffff40;transform:translateY(-2px)}.notification-bell.active{background:#ffffff40}.notification-bell:focus{outline:2px solid var(--primary)}.notification-bell i{color:#fff;font-size:1.6rem;z-index:1}.notification-badge{align-items:center;background:var(--error);border-radius:50%;color:#fff;display:flex;font-size:.7rem;font-weight:800;height:18px;justify-content:center;pointer-events:none;position:absolute;right:-4px;top:-4px;width:18px;z-index:2}.notifications-dropdown-wrapper{align-items:center;display:flex;margin-right:8px;position:relative}.mark-all-read-container{background:var(--bg-primary);border-top:1px solid var(--bg-tertiary);bottom:0;margin-top:auto;padding:.75rem 1.25rem;position:sticky}.mark-all-read-button{align-items:center;background:none;border:1px solid var(--primary-light);border-radius:var(--radius-md);color:var(--primary);cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;padding:.6rem 1rem;transition:all .15s;width:100%}.mark-all-read-button:hover{background:var(--primary);border-color:var(--primary);color:#fff}.mark-all-read-button i{font-size:.85rem}.notifications-dropdown{animation:dropdownFade .2s ease;background:var(--bg-primary);border:1px solid #00000014;border-radius:var(--radius-lg);box-shadow:0 8px 24px #00000026;display:flex;flex-direction:column;max-height:450px;min-width:320px;overflow:hidden;padding:0;position:absolute;right:0;top:145%;z-index:1200}.notifications-header{background:var(--primary);border-bottom:none;color:#fff;font-size:1.1rem;font-weight:800;letter-spacing:.01em;margin:0;padding:1rem 1.25rem}.notification-list{flex:1 1;list-style:none;margin:0;max-height:340px;overflow-y:auto;padding:.5rem 0}.notification-item{background:none;border-bottom:1px solid var(--bg-tertiary);cursor:pointer;padding:0;transition:background .15s}.notification-item:hover{background:var(--bg-secondary)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:rgba(var(--primary-rgb),.05);border-left:2px solid var(--primary)}.notification-item.unread:hover{background:rgba(var(--primary-rgb),.08)}.notification-content{align-items:flex-start;display:flex;gap:1rem;padding:1rem 1.25rem}.notification-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center;width:24px}.notification-icon i{color:var(--primary);font-size:1.2rem}.notification-item .notification-icon i.fa-exclamation-circle{color:var(--error)}.notification-body{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.notification-message{color:var(--text-primary);font-size:.95rem;font-weight:500;line-height:1.4}.notification-time{color:var(--text-secondary);font-size:.85rem}.notification-item.read{opacity:1}.notification-date,.notification-link,.notification-meta,.notification-type,.notification-type-label,.notification-unread-dot{display:none}.notification-item.notification-news .notification-type i{color:var(--primary)}.notification-item.notification-tips .notification-type i{color:var(--success)}.notification-item.notification-error-creating-lesson-block .notification-type i{color:var(--error)}.notification-item.notification-lesson-block-created .notification-type i{color:var(--success)}.notification-loading,.notification-loading-more{align-items:center;color:var(--text-secondary);display:flex;font-size:.95rem;gap:.75rem;justify-content:center;padding:1.5rem 1.25rem}.notification-loading i,.notification-loading-more i{color:var(--primary);font-size:1.1rem}.notification-loading-more{border-top:1px solid var(--bg-tertiary);font-size:.9rem;padding:1rem 1.25rem}.notification-empty{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;font-size:1rem;gap:.75rem;padding:2rem 1.25rem;text-align:center}.notification-empty i{color:var(--primary);font-size:2.5rem}.notification-empty span{font-weight:500}@media (max-width:600px){.notifications-dropdown{min-width:220px;right:-30px}.notification-bell{font-size:1.1rem;height:36px;width:36px}.notification-bell i{font-size:1.2rem}.notification-badge{font-size:.8rem;height:18px;right:4px;top:4px;width:18px}}
/*# sourceMappingURL=main.275e8269.css.map*/