@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-repeat:repeat;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh;overflow-y:auto}body:before{background-color:#ffffff80;bottom:0;content:"";left:0;position:fixed;right:0;top:0;z-index:-1}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.tooltip{background:#4b5563!important;border-radius:4px!important;font-size:12px!important;padding:4px 8px!important}.fraction-exercise-container{background:#ffffffe6;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:800px;padding:20px}@media (max-width:768px){.fraction-exercise{padding:1rem}.answer-input{align-items:flex-start;flex-direction:column}.fraction-input{margin-bottom:1rem}}.dev-mode-disable{background:#0009;border:none;border-radius:4px;bottom:10px;color:#fff;cursor:pointer;font-size:12px;left:10px;opacity:.8;padding:6px 10px;position:fixed;z-index:2000}.dev-mode-disable:hover{opacity:1}.student-login{width:100%}.student-login form{align-items:center;display:flex;flex-direction:column}.code-input-container{display:flex;gap:10px;justify-content:space-between;margin:20px 0}.code-input{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:24px;height:50px;text-align:center;transition:all .2s;width:100%}.code-input.error{background-color:#fef2f2;border-color:#ef4444}.code-input:focus{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533;outline:none}.code-input:focus.error{border-color:#ef4444;box-shadow:0 0 0 2px #ef444433}.error-message{color:#ef4444;font-size:14px;margin-top:8px;text-align:center}.button{align-items:center;background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:8px;justify-content:center;margin-top:20px;padding:12px;transition:background .2s;width:100%}.button:hover{background:#4338ca}.teacher-login-link{color:#6b7280;font-size:14px;margin-top:20px;padding:8px 0;text-align:center;width:100%}.teacher-login-link button{background:none;border:none;color:#4f46e5;cursor:pointer;display:inline;font-size:14px;font-weight:600;margin:0;padding:0 4px;text-decoration:underline}.teacher-login-link button:hover{color:#4338ca;text-decoration:none}.title{font-size:1.5rem;font-weight:600;margin-bottom:24px}.subtitle,.title{color:#4f46e5;text-align:center}.subtitle{margin-bottom:20px}.loading{margin-top:10px;text-align:center}.input-container{margin:20px 0;position:relative;width:100%}.input-icon{color:#6b7280;left:12px;position:absolute;top:12px}.name-input{border:1px solid #e5e7eb;border-radius:8px;font-size:14px;margin-left:0;padding:12px 12px 12px 40px;transition:border-color .2s;width:calc(100% - 52px)}.admin-dashboard{background-color:#f8fafc;display:flex;flex-direction:column;height:100vh}.admin-dashboard .dashboard-header{align-items:center;background-color:#4f46e5;color:#fff;display:flex;gap:1.5rem;justify-content:space-between;padding:1rem 2rem}.admin-dashboard .dashboard-header .profile-info{align-items:center;display:flex;flex:1 1;gap:1rem}.admin-dashboard .dashboard-header .profile-info .avatar{background:#f3f4f6;border-radius:50%;flex-shrink:0;height:60px;overflow:hidden;width:60px}.admin-dashboard .dashboard-header .profile-info .avatar svg{height:100%;width:100%}.admin-dashboard .dashboard-header .profile-info .profile-details h1{align-items:center;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0}.admin-dashboard .dashboard-header .profile-info .profile-details h1:after{background:#fff3;border-radius:12px;content:"Administrator";font-size:.75rem;font-weight:500;padding:.25rem .75rem}.admin-dashboard .dashboard-header .profile-info .profile-details .profile-meta{display:flex;font-size:.85rem;gap:1rem;margin-top:.25rem;opacity:.9}.admin-dashboard .dashboard-header .profile-info .profile-details .profile-meta .email,.admin-dashboard .dashboard-header .profile-info .profile-details .profile-meta .school{align-items:center;display:flex;gap:.25rem}.admin-dashboard .dashboard-header .profile-info .profile-details .profile-meta .icon{font-size:.9em;margin-top:.25rem}.admin-dashboard .dashboard-header .header-actions{display:flex;gap:1rem}.admin-dashboard .dashboard-header .header-actions .teacher-view-button{align-items:center;background-color:#ffffff1a;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.admin-dashboard .dashboard-header .header-actions .teacher-view-button:hover{background-color:#fff3}.admin-dashboard .dashboard-header .header-actions .logout-button{align-items:center;background-color:#fff;border:none;border-radius:4px;color:#4f46e5;cursor:pointer;display:flex;font-weight:700;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.admin-dashboard .dashboard-header .header-actions .logout-button:hover{background-color:#f1f5f9;transform:translateY(-1px)}.admin-dashboard .license-banner{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;margin:1.5rem;padding:1.25rem}.admin-dashboard .license-banner .license-info{align-items:center;display:flex;gap:1.25rem}.admin-dashboard .license-banner .license-info .license-icon-container{align-items:center;background:#e0e7ff;border-radius:50%;display:flex;height:48px;justify-content:center;width:48px}.admin-dashboard .license-banner .license-info .license-icon-container .license-icon{color:#4f46e5;font-size:1.5rem}.admin-dashboard .license-banner .license-info .license-text{display:flex;flex-direction:column;gap:.25rem}.admin-dashboard .license-banner .license-info .license-text .license-label{color:#6b7280;font-size:.875rem;font-weight:500}.admin-dashboard .license-banner .license-info .license-text .license-key-container{background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;display:inline-flex;padding:.5rem .75rem}.admin-dashboard .license-banner .license-info .license-text .license-key-container .license-key{color:#1e293b;font-family:Roboto Mono,monospace;font-size:1.1rem;font-weight:600;letter-spacing:.5px}.admin-dashboard .license-banner .copy-button{align-items:center;background-color:#4f46e5;border:none;border-radius:8px;box-shadow:0 2px 5px #4f46e526;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s}.admin-dashboard .license-banner .copy-button:hover{background-color:#4338ca;box-shadow:0 4px 8px #4f46e533;transform:translateY(-1px)}.admin-dashboard .license-banner .copy-button:active{transform:translateY(0)}.admin-dashboard .contact-tab{padding:1.5rem 2rem}.admin-dashboard .contact-tab .contact-header{margin-bottom:2rem}.admin-dashboard .contact-tab .contact-header h2{align-items:center;color:#4f46e5;display:flex;font-size:1.75rem;gap:.75rem;margin:0}.admin-dashboard .contact-tab .contact-header .subtitle{color:#64748b;font-size:1.1rem;margin:.5rem 0 0}.admin-dashboard .contact-tab .contact-content{display:flex;gap:2rem}.admin-dashboard .contact-tab .contact-content .contact-main{display:flex;flex:2 1;flex-direction:column;gap:1.5rem}.admin-dashboard .contact-tab .contact-content .support-sidebar{display:flex;flex:1 1;flex-direction:column;gap:1.5rem}.admin-dashboard .contact-tab .support-options{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:1rem}.admin-dashboard .contact-tab .support-option{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 10px #0000000d;padding:1.5rem}.admin-dashboard .contact-tab .support-option .option-icon{align-items:center;background:#e0e7ff;border-radius:50%;color:#4f46e5;display:flex;font-size:1.25rem;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.admin-dashboard .contact-tab .support-option h3{color:#1e293b;margin:0 0 .5rem}.admin-dashboard .contact-tab .support-option p{color:#64748b;margin:0 0 1.5rem}.admin-dashboard .contact-tab .quick-links,.admin-dashboard .contact-tab .support-hours{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 10px #0000000d;padding:1.5rem}.admin-dashboard .contact-tab .quick-links h3,.admin-dashboard .contact-tab .support-hours h3{align-items:center;color:#4f46e5;display:flex;font-size:1.1rem;gap:.5rem;margin:0 0 1rem}.admin-dashboard .contact-tab .quick-links ul,.admin-dashboard .contact-tab .support-hours ul{list-style:none;margin:0;padding:0}.admin-dashboard .contact-tab .quick-links ul li,.admin-dashboard .contact-tab .support-hours ul li{align-items:center;color:#4b5563;display:flex;gap:.5rem;padding:.5rem 0}.admin-dashboard .contact-tab .quick-links ul li a,.admin-dashboard .contact-tab .support-hours ul li a{align-items:center;color:#4f46e5;display:flex;gap:.5rem;text-decoration:none}.admin-dashboard .contact-tab .quick-links ul li a:hover,.admin-dashboard .contact-tab .support-hours ul li a:hover{text-decoration:underline}.admin-dashboard .contact-tab .support-button{align-items:center;background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1.25rem;transition:all .2s;width:100%}.admin-dashboard .contact-tab .support-button:hover{background:#4338ca;transform:translateY(-1px)}.admin-dashboard .admin-content{flex:1 1;overflow-y:auto;padding:0 1.5rem 1.5rem}.admin-dashboard .admin-content .admin-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:.5rem;margin:0 1.5rem 1.5rem;padding-bottom:.5rem}.admin-dashboard .admin-content .admin-tabs .tab-button{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.admin-dashboard .admin-content .admin-tabs .tab-button.active{background:#e0e7ff;color:#4f46e5;font-weight:600}.admin-dashboard .admin-content .admin-tabs .tab-button:hover{background:#f3f4f6}.admin-dashboard .admin-content .teachers-management{display:flex;gap:2rem;margin:0 1.5rem}.admin-dashboard .admin-content .teachers-management .add-teacher-form{background:#fff;border-radius:12px;box-shadow:0 2px 15px #0000000d;flex:1 1;max-width:400px;padding:1.75rem}.admin-dashboard .admin-content .teachers-management .add-teacher-form h3{align-items:center;color:#4f46e5;display:flex;gap:.75rem;margin-bottom:1.75rem;margin-top:0}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group{margin-bottom:1.25rem}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group label{color:#4b5563;display:block;font-weight:500;margin-bottom:.5rem}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group input[type=email],.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group input[type=text]{border:1px solid #e5e7eb;border-radius:6px;font-size:1rem;padding:.75rem;transition:all .2s;width:100%}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group input[type=email]:focus,.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group input[type=text]:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group input[type=email]::placeholder,.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group input[type=text]::placeholder{color:#9ca3af}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group.checkbox{align-items:center;display:flex;gap:.75rem;margin-top:1.5rem}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group.checkbox label{align-items:center;color:#4b5563;display:flex;font-weight:500;gap:.75rem;margin-bottom:0}.admin-dashboard .admin-content .teachers-management .add-teacher-form .form-group.checkbox input[type=checkbox]{accent-color:#4f46e5;height:18px;width:18px}.admin-dashboard .admin-content .teachers-management .add-teacher-form .add-button{align-items:center;background-color:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;margin-top:1rem;padding:.875rem;transition:all .2s;width:100%}.admin-dashboard .admin-content .teachers-management .add-teacher-form .add-button:hover{background-color:#4338ca;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.admin-dashboard .admin-content .teachers-management .teachers-list{background:#fff;border-radius:12px;box-shadow:0 2px 15px #0000000d;flex:2 1;padding:1.75rem}.admin-dashboard .admin-content .teachers-management .teachers-list h3{color:#4f46e5;margin-bottom:1.5rem;margin-top:0}.admin-dashboard .admin-content .teachers-management .teachers-list .table-container{overflow-x:auto}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle{align-items:center;display:flex}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch{align-items:center;cursor:pointer;display:inline-flex;position:relative}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch input{height:0;opacity:0;width:0}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch input:checked+.slider{background-color:#4f46e5}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch input:checked+.slider:before{transform:translateX(20px)}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch input:disabled+.slider{background-color:#e5e7eb;cursor:not-allowed}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch input:disabled+.slider:before{background-color:#d1d5db}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch .slider{background-color:#d1d5db;border-radius:24px;height:24px;margin-right:8px;position:relative;transition:.4s;width:48px}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch .slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.4s;width:18px}.admin-dashboard .admin-content .teachers-management .teachers-list .role-toggle .toggle-switch .toggle-label{color:#4b5563;font-weight:500}.admin-dashboard .admin-content .teachers-management .teachers-list table{border-collapse:initial;border-spacing:0;width:100%}.admin-dashboard .admin-content .teachers-management .teachers-list table td,.admin-dashboard .admin-content .teachers-management .teachers-list table th{border-bottom:1px solid #f3f4f6;padding:1rem;text-align:left}.admin-dashboard .admin-content .teachers-management .teachers-list table th{background-color:#f9fafb;color:#4f46e5;font-weight:600;position:sticky;top:0}.admin-dashboard .admin-content .teachers-management .teachers-list table tr:hover{background-color:#f9fafb}.admin-dashboard .admin-content .teachers-management .teachers-list table .remove-button{align-items:center;background:none;border:1px solid #f3f4f6;border-radius:6px;color:#ef4444;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.admin-dashboard .admin-content .teachers-management .teachers-list table .remove-button:hover{background:#ef44440d;border-color:#ef444433}.admin-dashboard .admin-content .license-info{background:#fff;border-radius:12px;box-shadow:0 2px 15px #0000000d;padding:1.5rem}.admin-dashboard .admin-content .license-info h3{align-items:center;color:#4f46e5;display:flex;gap:.75rem;margin-bottom:1.5rem;margin-top:0}.admin-dashboard .admin-content .license-info .developer-contact{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.admin-dashboard .admin-content .license-info .developer-contact h3{align-items:center;color:#4f46e5;display:flex;gap:.75rem;margin-bottom:1.5rem}.admin-dashboard .admin-content .license-info .license-details-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;display:flex;gap:1.25rem;padding:1.5rem}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-icon{align-items:center;background:#e0e7ff;border-radius:50%;color:#4f46e5;display:flex;flex-shrink:0;font-size:1.25rem;height:48px;justify-content:center;width:48px}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content{flex:1 1}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content h4{color:#1e293b;font-size:1.1rem;margin:0 0 .5rem}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content p{color:#4b5563;margin:.5rem 0}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .license-key-value{background:#f3f4f6;border-radius:6px;color:#1e293b;display:inline-block;font-family:Roboto Mono,monospace;font-weight:600;padding:.5rem}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .copy-license-btn{align-items:center;background:#4f46e5;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;gap:.5rem;margin-top:.5rem;padding:.5rem 1rem;transition:all .2s}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .copy-license-btn:hover{background:#4338ca}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .date-range{display:flex;flex-direction:column;margin-top:.5rem}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .date-range .days-remaining{color:#64748b;font-size:.85rem}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .trial-status{align-items:center;display:flex;gap:.75rem;margin:.5rem 0}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .trial-status .status-badge{background:#10b981;border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .trial-status .status-badge.active{background:#10b981}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .trial-status .status-badge.expired{background:#ef4444}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .usage-meter{background:#e5e7eb;border-radius:4px;height:8px;margin:.75rem 0;overflow:hidden}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .usage-meter .meter-bar{background:#4f46e5;border-radius:4px;height:100%;transition:width .3s ease}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .usage-meter span{color:#64748b;display:block;font-size:.85rem;margin-top:.25rem}.admin-dashboard .admin-content .license-info .license-details-grid .license-detail-card .detail-content .usage-note{color:#64748b;font-size:.85rem;margin-top:.5rem}.contact-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:1.5rem;padding:1.5rem}.contact-card .contact-avatar{border:3px solid #e0e7ff;border-radius:50%;flex-shrink:0;height:80px;overflow:hidden;width:80px}.contact-card .contact-avatar svg{height:100%;width:100%}.contact-card .contact-details{flex:1 1}.contact-card .contact-details h4{color:#1e293b;font-size:1.25rem;margin:0 0 .5rem}.contact-card .contact-details .contact-info p{align-items:center;color:#4b5563;display:flex;gap:.75rem;margin:.5rem 0}.contact-card .contact-details .contact-info p svg{color:#64748b;width:16px}.contact-card .contact-details .contact-info .linkedin-link{color:#0077b5;margin-left:.5rem;text-decoration:none;transition:color .2s}.contact-card .contact-details .contact-info .linkedin-link:hover{color:#005582;text-decoration:underline}.contact-card .contact-details .contact-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.25rem}.contact-card .contact-details .contact-actions .contact-button{align-items:center;background:#4f46e5;border:none;border-radius:8px;color:#fff;display:flex;font-size:.9rem;gap:.5rem;padding:.75rem 1.25rem;text-decoration:none;transition:all .2s}.contact-card .contact-details .contact-actions .contact-button:hover{background:#4338ca;transform:translateY(-1px)}.contact-card .contact-details .contact-actions .contact-button:active{transform:translateY(0)}.contact-card .contact-details .contact-actions .contact-button.linkedin-button{background:#0077b5}.contact-card .contact-details .contact-actions .contact-button.linkedin-button:hover{background:#005582}.classes-sidebar{background:#fff;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:column;gap:16px;height:100%;padding:20px;position:relative;transition:width .3s ease;width:300px}.classes-sidebar.collapsed{padding:12px 8px;width:70px}.classes-sidebar.collapsed .sidebar-header{align-items:center;flex-direction:column;gap:12px;margin-bottom:12px}.classes-sidebar.collapsed .sidebar-header h2{display:none}.classes-sidebar.collapsed .class-list-container{gap:8px}.classes-sidebar.collapsed .class-list-container .class-card{align-items:center;flex-direction:column;gap:4px;justify-content:center;min-height:70px;padding:8px}.classes-sidebar.collapsed .class-list-container .class-card .class-avatar{height:36px;width:36px}.classes-sidebar.collapsed .class-list-container .class-card .class-content{align-items:center;display:flex;flex-direction:column;min-width:0;width:100%}.classes-sidebar.collapsed .class-list-container .class-card .class-content .class-name{font-size:12px;margin:4px 0 0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.classes-sidebar.collapsed .class-list-container .class-card .class-content .class-actions,.classes-sidebar.collapsed .class-list-container .class-card .class-content .student-count{display:none}.classes-sidebar.collapsed .class-list-container .new-class-button{border-radius:50%;height:36px;justify-content:center;padding:0;width:36px}.classes-sidebar.collapsed .class-list-container .new-class-button span{display:none}.classes-sidebar.collapsed .class-list-container .new-class-button svg{height:14px;width:14px}.classes-sidebar .collapse-button{align-items:center;background:#f3f4f6;border:none;border-radius:6px;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .2s ease;transition:all .2s;width:32px}.classes-sidebar .collapse-button:hover{background:#e4e7eb;transform:scale(1.05)}.classes-sidebar .sidebar-header{align-items:center;display:flex;flex-direction:row;gap:16px;justify-content:space-between;margin-bottom:16px}.classes-sidebar .sidebar-header h2{color:#1e293b;font-size:20px;font-weight:600;margin:0}.classes-sidebar .new-class-button{align-items:center;background:#4f46e5;border:none;border-radius:6px;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s ease;width:100%}.classes-sidebar .new-class-button:hover{background:#2d22e0;transform:translateY(-1px)}.classes-sidebar .new-class-button:active{transform:translateY(0)}.classes-sidebar .create-class-form{display:flex;gap:8px;width:100%}.classes-sidebar .create-class-form input{border:1px solid #e5e7eb;border-radius:8px;flex:1 1;font-size:14px;padding:10px 12px;transition:border-color .2s}.classes-sidebar .create-class-form input:focus{border-color:#4f46e5;outline:none}.classes-sidebar .create-class-form .form-actions{display:flex;gap:8px}.classes-sidebar .create-class-form .form-actions button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.classes-sidebar .create-class-form .form-actions .confirm-button{background:#10b981;color:#fff}.classes-sidebar .create-class-form .form-actions .confirm-button:hover{background:#0d9367}.classes-sidebar .create-class-form .form-actions .cancel-button{background:#f3f4f6;color:#6b7280}.classes-sidebar .create-class-form .form-actions .cancel-button:hover{background:#e4e7eb}.classes-sidebar .class-list-container{display:flex;flex:1 1;flex-direction:column;gap:12px;margin-top:8px;padding-right:4px}.classes-sidebar .class-list-container::-webkit-scrollbar{width:6px}.classes-sidebar .class-list-container::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.classes-sidebar .class-list-container::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:3px}.classes-sidebar .class-list-container .class-card.creating{order:1;padding:12px 16px;position:relative}.classes-sidebar .class-list-container .class-card.creating .class-avatar{align-items:center;background:#cfccf8;color:#4f46e5;cursor:pointer;display:flex;justify-content:center;transition:all .2s}.classes-sidebar .class-list-container .class-card.creating .class-avatar:hover{background:#a49ff2;transform:scale(1.05)}.classes-sidebar .class-list-container .class-card.creating .class-content{align-items:center;display:flex;flex:1 1;gap:12px}.classes-sidebar .class-list-container .class-card.creating .class-content input{border:1px solid #e5e7eb;border-radius:8px;box-sizing:border-box;flex:1 1;font-size:14px;height:40px;padding:10px 12px;transition:border-color .2s}.classes-sidebar .class-list-container .class-card.creating .class-content input:focus{border-color:#4f46e5;outline:none}.classes-sidebar .class-list-container .class-card.creating .close-create-button{align-items:center;background:#f3f4f6;border:none;border-radius:6px;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;height:24px;justify-content:center;opacity:.7;position:absolute;right:-12px;top:-12px;transition:all .2s ease;transition:all .2s;width:24px}.classes-sidebar .class-list-container .class-card.creating .close-create-button:hover{background:#e4e7eb;opacity:1}.classes-sidebar .class-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;gap:16px;padding:16px;transition:all .2s ease}.classes-sidebar .class-card:hover{border-color:#c8ccd5;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.classes-sidebar .class-card.active{background:#fff;border-left:4px solid #4f46e5}.classes-sidebar .class-card .class-avatar{align-items:center;background:#f3f4f6;border-radius:8px;display:flex;flex-shrink:0;height:48px;justify-content:center;overflow:hidden;width:48px}.classes-sidebar .class-card .class-avatar svg{height:80%;width:80%}.classes-sidebar .class-card .class-content{align-items:center;display:flex;flex:1 1;gap:12px;justify-content:space-between;min-width:0}.classes-sidebar .class-card .class-content .class-main-info{min-width:0}.classes-sidebar .class-card .class-content .class-name{color:#1e293b;font-size:16px;font-weight:600;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classes-sidebar .class-card .class-content .student-count{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:4px}.classes-sidebar .class-card .class-actions{align-items:center;display:flex;gap:8px}.classes-sidebar .class-card .toggle-class-open-button{background:none;border:none;border-radius:50%;border-radius:6px;color:#4f46e5;cursor:pointer;flex-shrink:0;opacity:.7;padding:8px;transition:all .2s ease;transition:all .2s}.classes-sidebar .class-card .toggle-class-open-button:hover{background:#e4e3fb;opacity:1;transform:scale(1.1)}.classes-sidebar .class-card .delete-class-button{background:none;border:none;border-radius:50%;border-radius:6px;color:#ef4444;cursor:pointer;flex-shrink:0;opacity:.7;padding:8px;transition:all .2s ease;transition:all .2s}.classes-sidebar .class-card .delete-class-button:hover{background:#fde8e8;opacity:1;transform:scale(1.1)}.classes-sidebar .delete-confirmation-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.classes-sidebar .delete-confirmation-modal .modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-width:400px;padding:24px;width:90%}.classes-sidebar .delete-confirmation-modal .modal-content h3{color:#1e293b;margin-bottom:12px;margin-top:0}.classes-sidebar .delete-confirmation-modal .modal-content p{color:#6b7280;line-height:1.5;margin:0}.classes-sidebar .delete-confirmation-modal .modal-content .modal-actions{display:flex;gap:12px;margin-top:24px}.classes-sidebar .delete-confirmation-modal .modal-content .modal-actions button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-weight:500;padding:12px;transition:all .2s ease}.classes-sidebar .delete-confirmation-modal .modal-content .modal-actions .confirm-delete{background:#ef4444;color:#fff}.classes-sidebar .delete-confirmation-modal .modal-content .modal-actions .confirm-delete:hover{background:#ec1e1e}.classes-sidebar .delete-confirmation-modal .modal-content .modal-actions .cancel-delete{background:#f3f4f6;color:#6b7280}.classes-sidebar .delete-confirmation-modal .modal-content .modal-actions .cancel-delete:hover{background:#e4e7eb}.student-list-compact{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0}.student-card-compact{cursor:pointer;height:36px;position:relative;transition:all .2s ease;width:36px}.student-card-compact:hover{transform:scale(1.1)}.student-card-compact:hover .remove-button-compact{opacity:1}.student-card-compact.offline{opacity:.4}.student-avatar-compact{background:#f3f4f6;border:1px solid #e5e7eb80;border-radius:50%;height:100%;object-fit:cover;width:100%}.status-indicator-compact{border:1px solid #fff;border-radius:50%;bottom:-2px;height:10px;right:-2px;width:10px}.remove-button-compact,.status-indicator-compact{align-items:center;background:#fff;display:flex;justify-content:center;position:absolute}.remove-button-compact{border:none;border-radius:50%;box-shadow:0 1px 3px #0000001a;color:#6b7280;cursor:pointer;font-size:6px;height:14px;opacity:0;padding:0;right:-4px;top:-4px;transition:all .2s;width:14px}.remove-button-compact:hover{background:#ef44441a;color:#ef4444}.react-tooltip{font-size:12px!important;padding:4px 8px!important;z-index:1000!important}.class-details{background:#f8fafc;flex:1 1;overflow-y:auto;padding:0}.class-details .no-class-selected{align-items:center;color:#64748b;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.class-details .no-class-selected .welcome-image{height:auto;margin-bottom:2rem;max-width:400px;object-fit:contain;width:100%}.class-details .no-class-selected .create-class-prompt{align-items:center;background:#4f46e51a;border-radius:8px;color:#4f46e5;display:flex;gap:8px;margin-left:auto;margin-right:auto;margin-top:1rem;max-width:fit-content;padding:.75rem 1.5rem}.class-details .no-class-selected .create-class-prompt .arrow-icon{font-size:1rem}@media(max-width:768px){.class-details .no-class-selected .welcome-image{max-width:280px}}.class-details .no-class-selected .placeholder-icon{color:#cbd5e1;font-size:3rem;margin-bottom:1.5rem}.class-details .no-class-selected h3{color:#1e293b;font-size:1.5rem;margin-bottom:.5rem}.class-details .no-class-selected p{color:#64748b;line-height:1.5;max-width:400px}.class-details .class-management{margin:0 auto;max-width:1200px;padding:2rem}.class-details .class-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.class-details .class-header h2{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0}.class-details .class-header .class-status .status-badge{border-radius:8px;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.class-details .class-header .class-status .status-badge.open{background:#10b9811a;color:#10b981}.class-details .class-header .class-status .status-badge.closed{background:#ef44441a;color:#ef4444}.class-details .combined-student-container{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-bottom:1.5rem;padding:1.25rem}.class-details .combined-student-container .combined-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.class-details .combined-student-container .combined-header h3{align-items:center;color:#1e293b;display:flex;font-size:1rem;gap:.5rem;margin:0}.class-details .combined-student-container .combined-header .show-qr-button{align-items:center;background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.class-details .combined-student-container .combined-header .show-qr-button:hover{background:#2d22e0}.class-details .combined-student-container .empty-students-message{align-items:center;color:#64748b;display:flex;flex-direction:column;padding:1rem 0;text-align:center}.class-details .combined-student-container .empty-students-message p{max-width:400px}.class-details .combined-student-container .empty-students-message .qr-instruction-image{height:auto;margin-bottom:1rem;max-width:300px;width:100%}.class-details .share-container{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-top:20px;padding:16px}.class-details .share-container .share-header{margin-bottom:1.5rem}.class-details .share-container .share-header h3{color:#1e293b;font-size:1.25rem;margin:0 0 .25rem}.class-details .share-container .share-header p{color:#64748b;font-size:.95rem;margin:0}.class-details .share-container .share-content{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.class-details .share-container .share-content .qr-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;position:relative;transition:all .2s}.class-details .share-container .share-content .qr-wrapper:hover{box-shadow:0 4px 12px #00000014;transform:scale(1.02)}.class-details .share-container .share-content .qr-wrapper .fullscreen-button{align-items:center;background:#000000b3;border:none;border-radius:4px;bottom:8px;color:#fff;cursor:pointer;display:flex;font-size:.75rem;gap:4px;padding:4px 8px;position:absolute;right:8px;transition:all .2s}.class-details .share-container .share-content .qr-wrapper .fullscreen-button:hover{background:#000000e6}.class-details .share-container .share-content .code-section{align-items:center;display:flex;flex-direction:column;gap:1rem}.class-details .share-container .share-content .code-section .code-display{background:#f8fafc;border-radius:8px;color:#4f46e5;font-family:Courier New,monospace;font-size:1.75rem;font-weight:700;letter-spacing:.25rem;padding:.5rem 1rem;text-align:center}.class-details .share-container .share-content .code-section .copy-button{align-items:center;background:#e0e7ff;border:none;border-radius:8px;color:#4f46e5;cursor:pointer;display:flex;font-weight:500;gap:8px;justify-content:center;padding:.5rem 1rem;transition:all .2s}.class-details .share-container .share-content .code-section .copy-button:hover{background:#c7d2fe}.class-details .calculations-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-top:2rem;padding:1.5rem}.class-details .calculations-section .katex{font-family:KaTeX_Main,Times New Roman,serif;font-size:1.1em}.class-details .bg-green-100{background-color:#f0fdf4}.class-details .border-green-400{border-color:#4ade80}.class-details .bg-orange-100{background-color:#fff7ed}.class-details .border-orange-400{border-color:#fb923c}.class-details .bg-red-100{background-color:#fef2f2}.class-details .border-red-400{border-color:#f87171}.exercise-sheets{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-top:20px;padding:16px;position:relative}.exercise-sheets .action-loading-overlay{align-items:center;background:#fff9;display:flex;height:100%;inset:0;justify-content:center;position:absolute;width:100%;z-index:2000}.exercise-sheets .tabs{border-bottom:1px solid #e2e8f0;display:flex;margin-bottom:1.5rem}.exercise-sheets .tabs button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.exercise-sheets .tabs button.active{border-bottom-color:#4f46e5;color:#4f46e5}.exercise-sheets .management-view .sheet-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-auto-rows:min-content;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));width:100%}.exercise-sheets .delete-confirm-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1010}.exercise-sheets .delete-confirm-modal .delete-confirm-content{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:400px;padding:2rem;width:100%}.exercise-sheets .delete-confirm-modal .delete-confirm-content h3{color:#1e293b;margin-top:0}.exercise-sheets .delete-confirm-modal .delete-confirm-content p{color:#64748b;margin-bottom:2rem}.exercise-sheets .delete-confirm-modal .delete-confirm-content .confirm-buttons{display:flex;gap:1rem;justify-content:flex-end}.exercise-sheets .delete-confirm-modal .delete-confirm-content .confirm-buttons button{border-radius:4px;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s}.exercise-sheets .delete-confirm-modal .delete-confirm-content .confirm-buttons button.cancel-btn{background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b}.exercise-sheets .delete-confirm-modal .delete-confirm-content .confirm-buttons button.cancel-btn:hover{background:#e2e8f0}.exercise-sheets .delete-confirm-modal .delete-confirm-content .confirm-buttons button.confirm-btn{background:#ef4444;border:1px solid #ef4444;color:#fff}.exercise-sheets .delete-confirm-modal .delete-confirm-content .confirm-buttons button.confirm-btn:hover{background:#dc2626;border-color:#dc2626}.exercise-sheets .distribution-confirm-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1010}.exercise-sheets .distribution-confirm-modal .distribution-confirm-content{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:400px;padding:2rem;width:100%}.exercise-sheets .distribution-confirm-modal .distribution-confirm-content h3{color:#1e293b;margin-top:0}.exercise-sheets .distribution-confirm-modal .distribution-confirm-content p{color:#64748b;margin-bottom:2rem}.exercise-sheets .distribution-confirm-modal .distribution-confirm-content .distribution-illustration{display:block;margin:0 auto 1rem;max-width:320px;width:100%}.exercise-sheets .distribution-confirm-modal .distribution-confirm-content .confirm-buttons{display:flex;justify-content:flex-end}.exercise-sheets .distribution-confirm-modal .distribution-confirm-content .confirm-buttons button{background:#4f46e5;border:1px solid #4f46e5;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s}.exercise-sheets .distribution-confirm-modal .distribution-confirm-content .confirm-buttons button:hover{background:#4338ca;border-color:#4338ca}.exercise-sheets .sheet-detail-modal{--sheet-color-light:color-mix(in srgb,var(--sheet-color) 50%,#fff);z-index:1005}.exercise-sheets .sheet-detail-modal .sheet-detail-content{background:var(--sheet-color-light);display:flex;flex-direction:column;height:90vh;max-width:1400px;width:90%}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header{background:#f8fafc;background:var(--sheet-color,#f8fafc);border-bottom:1px solid color-mix(in srgb,var(--sheet-color),#000 10%);color:color-contrast(var(--sheet-color) vs #fff,#000);padding:1.5rem}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header h2{color:inherit;margin:0 0 .5rem}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-meta{color:color-mix(in srgb,currentColor,#0000 30%);display:flex;font-size:.9rem;gap:1rem;margin-bottom:1rem}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-meta .time-estimate{background:color-mix(in srgb,var(--sheet-color),#fff 20%);border:1px solid color-mix(in srgb,var(--sheet-color),#0000 70%);border-radius:4px;color:inherit;font-weight:500;padding:.2rem .5rem}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions{display:flex;gap:.75rem}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.edit-btn{background:#eef2ff;border:1px solid #e0e7ff;color:#4f46e5}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.edit-btn:hover{background:#e0e7ff}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.distribute-btn{background:#4f46e5;border:1px solid #4f46e5;color:#fff}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.distribute-btn:hover{background:#4338ca;border-color:#4338ca}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.delete-btn{background:#fee2e2;border:1px solid #fee2e2;color:#dc2626}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.delete-btn:hover{background:#fecaca;border-color:#fecaca}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.draft-btn{background:#eef2ff;border:1px solid #e0e7ff;color:#4f46e5}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-header .sheet-actions button.draft-btn:hover{background:#e0e7ff}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-body{flex:1 1;overflow-y:auto;padding:1.5rem}.exercise-sheets .sheet-detail-modal .sheet-detail-content .sheet-detail-body .selected-sessions .session-list{background:#0000;border:none;padding:0}.topic-selection{display:flex;flex-direction:column;height:100%;padding:1rem}.topic-selection .header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.topic-selection .header .back-button{align-items:center;align-self:flex-start;background:none;border:none;border-radius:6px;color:#4f46e5;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.5rem .75rem;transition:all .2s}.topic-selection .header .back-button:hover{background:#4f46e51a}.topic-selection .header h2{align-items:center;color:#4f46e5;display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;justify-content:center;margin:0;text-align:center}.topic-selection .topic-grid{grid-gap:1.25rem;display:grid;flex:1 1;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));overflow-y:auto;padding-bottom:1rem}@media(max-width:768px){.topic-selection{padding:.75rem}.topic-selection .topic-grid{gap:1rem;grid-template-columns:1fr}}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_AMS-Regular.73ea273a72f4aca30ca5.woff2) format("woff2"),url(/static/media/KaTeX_AMS-Regular.d562e886c52f12660a41.woff) format("woff"),url(/static/media/KaTeX_AMS-Regular.853be92419a6c3766b9a.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Caligraphic-Bold.a1abf90dfd72792a577a.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Bold.d757c535a2e5902f1325.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Bold.7489a2fbfb9bfe704420.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Caligraphic-Regular.d6484fce1ef428d5bd94.woff2) format("woff2"),url(/static/media/KaTeX_Caligraphic-Regular.db074fa22cf224af93d7.woff) format("woff"),url(/static/media/KaTeX_Caligraphic-Regular.7e873d3833eb108a0758.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Fraktur-Bold.931d67ea207ab37ee693.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Bold.354501bac435c3264834.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Bold.4c761b3711973ab04edf.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Fraktur-Regular.172d3529b26f8cedef6b.woff2) format("woff2"),url(/static/media/KaTeX_Fraktur-Regular.6fdf0ac577be0ba82a4c.woff) format("woff"),url(/static/media/KaTeX_Fraktur-Regular.ed305b5434865e06ffde.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/static/media/KaTeX_Main-Bold.39890742bc957b368704.woff2) format("woff2"),url(/static/media/KaTeX_Main-Bold.0c3b8929d377c0e9b2f3.woff) format("woff"),url(/static/media/KaTeX_Main-Bold.8169508bf58f8bd92ad8.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Main-BoldItalic.20f389c4120be058d80a.woff2) format("woff2"),url(/static/media/KaTeX_Main-BoldItalic.428978dc7837d46de091.woff) format("woff"),url(/static/media/KaTeX_Main-BoldItalic.828abcb200061cffbaae.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Main-Italic.fe2176f79edaa716e621.woff2) format("woff2"),url(/static/media/KaTeX_Main-Italic.fd947498bc16392e76c2.woff) format("woff"),url(/static/media/KaTeX_Main-Italic.fa675e5e4bec9eb250b6.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Main-Regular.f650f111a3b890d116f1.woff2) format("woff2"),url(/static/media/KaTeX_Main-Regular.4f35fbcc9ee8614c2bcc.woff) format("woff"),url(/static/media/KaTeX_Main-Regular.9eba1d77abcf2aa6e94e.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/static/media/KaTeX_Math-BoldItalic.dcbcbd93bac0470b462d.woff2) format("woff2"),url(/static/media/KaTeX_Math-BoldItalic.3f07ed67f06c720120ce.woff) format("woff"),url(/static/media/KaTeX_Math-BoldItalic.bf2d440b3a42ea78a998.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/static/media/KaTeX_Math-Italic.6d3d25f4820d0da8f01f.woff2) format("woff2"),url(/static/media/KaTeX_Math-Italic.96759856b4e70f3a8338.woff) format("woff"),url(/static/media/KaTeX_Math-Italic.8a5f936332e8028c7278.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/static/media/KaTeX_SansSerif-Bold.95591a929f0d32aa282a.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Bold.b9cd458ac6d5889ff9c3.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Bold.5b49f4993ae22d7975b4.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Italic.7d393d382f3e7fb1c637.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Italic.8d593cfaa96238d5e2f8.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Italic.b257a18c016f37ee4543.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/static/media/KaTeX_SansSerif-Regular.cd5e231e0cc53b2cb2c0.woff2) format("woff2"),url(/static/media/KaTeX_SansSerif-Regular.02271ec5cb9f5b4588ac.woff) format("woff"),url(/static/media/KaTeX_SansSerif-Regular.2f7bc363fc5424ebda59.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Script-Regular.c81d1b2a4b75d3eded60.woff2) format("woff2"),url(/static/media/KaTeX_Script-Regular.073b3402d036714b4370.woff) format("woff"),url(/static/media/KaTeX_Script-Regular.fc9ba5249878cd8f8d88.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size1-Regular.6eec866c69313624be60.woff2) format("woff2"),url(/static/media/KaTeX_Size1-Regular.0108e89c9003e8c14ea3.woff) format("woff"),url(/static/media/KaTeX_Size1-Regular.6de7d4b539221a49e9e2.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size2-Regular.2960900c4f271311eb36.woff2) format("woff2"),url(/static/media/KaTeX_Size2-Regular.3a99e70aee4076660d38.woff) format("woff"),url(/static/media/KaTeX_Size2-Regular.57f5c1837853986ea1db.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size3-Regular.e1951519f6f0596f7356.woff2) format("woff2"),url(/static/media/KaTeX_Size3-Regular.7947224e8a9914fa332b.woff) format("woff"),url(/static/media/KaTeX_Size3-Regular.8d6b6822586eea3d3b20.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Size4-Regular.e418bf257af1052628d8.woff2) format("woff2"),url(/static/media/KaTeX_Size4-Regular.aeffd8025cba3647f1a6.woff) format("woff"),url(/static/media/KaTeX_Size4-Regular.4ad7c7e8bb8d10a34bb7.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/static/media/KaTeX_Typewriter-Regular.c295e7f71970f03c0549.woff2) format("woff2"),url(/static/media/KaTeX_Typewriter-Regular.4c6b94fd1d07f8beff7c.woff) format("woff"),url(/static/media/KaTeX_Typewriter-Regular.c5c02d763c89380dcb4e.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.21"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.katex-renderer{align-items:center;gap:.25rem;line-height:1.5}.katex{font-size:1.05em;vertical-align:middle}.katex-display{margin:1rem 0;text-align:center;width:100%}.tooltip-word{cursor:help;text-decoration:underline;text-decoration-color:#666;text-decoration-style:dotted}.custom-tooltip{background-color:#333!important;border-radius:4px!important;box-shadow:0 2px 8px #00000026!important;color:#fff!important;font-size:.9rem!important;line-height:1.4!important;max-width:350px!important;padding:.75rem!important;z-index:9999!important}.custom-tooltip .katex{color:#fff!important;font-size:1em!important}.custom-tooltip .katex-display{margin:.5rem 0!important;text-align:center!important}@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;display:inline-block;max-width:100%;position:relative}.ReactCrop *,.ReactCrop :after,.ReactCrop :before{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-height:inherit;max-width:100%}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{bottom:0;height:calc(100% + .5px);left:0;pointer-events:none;position:absolute;right:0;top:0;width:calc(100% + .5px)}.ReactCrop__crop-selection{cursor:move;left:0;position:absolute;top:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);bottom:-1px;content:"";left:-1px;opacity:.3;pointer-events:none;position:absolute;right:-1px;top:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,right top,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444)),-webkit-gradient(linear,left top,left bottom,color-stop(50%,#fff),color-stop(50%,#444));background-image:linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(90deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0),linear-gradient(180deg,#fff 50%,#444 0);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;color:#fff}.ReactCrop__crop-selection:focus{outline:2px solid #08f;outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{background-color:#fff6;content:"";display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-vt:before{height:100%;width:1px}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:after,.ReactCrop__rule-of-thirds-hz:before{height:1px;width:100%}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{background-color:#0003;background-color:var(--rc-drag-handle-bg-colour);border:1px solid #ffffffb3;border:1px solid var(--rc-border-color);height:12px;height:var(--rc-drag-handle-size);position:absolute;width:12px;width:var(--rc-drag-handle-size)}.ReactCrop__drag-handle:focus{background:#08f;background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;left:0}.ReactCrop .ord-n,.ReactCrop .ord-nw{top:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;left:50%}.ReactCrop .ord-ne{cursor:ne-resize;top:0}.ReactCrop .ord-e,.ReactCrop .ord-ne{right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%}.ReactCrop .ord-se{bottom:0;cursor:se-resize;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;left:50%}.ReactCrop .ord-s,.ReactCrop .ord-sw{bottom:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;left:0}.ReactCrop .ord-w{cursor:w-resize;left:0;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{height:6px;height:var(--rc-drag-bar-size);left:0;top:0;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:100%}.ReactCrop__drag-bar.ord-e{height:100%;right:0;top:0;-webkit-transform:translate(50%);transform:translate(50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop__drag-bar.ord-s{bottom:0;height:6px;height:var(--rc-drag-bar-size);left:0;-webkit-transform:translateY(50%);transform:translateY(50%);width:100%}.ReactCrop__drag-bar.ord-w{height:100%;left:0;top:0;-webkit-transform:translate(-50%);transform:translate(-50%);width:6px;width:var(--rc-drag-bar-size)}.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w,.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle{display:none}@media (pointer:coarse){.ReactCrop .ord-e,.ReactCrop .ord-n,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{height:24px;height:var(--rc-drag-handle-mobile-size);width:24px;width:var(--rc-drag-handle-mobile-size)}}.session-selection{max-height:100%}.session-selection.compact-view{padding:0}.session-selection.compact-view .session-list{gap:.75rem;grid-template-columns:1fr;max-height:none}.session-selection.compact-view .session-list.compact .session-card{padding:.75rem}.session-selection.compact-view .session-list.compact .session-card.compact .session-content{gap:.25rem}.session-selection.compact-view .session-list.compact .session-card.compact .session-content h3{font-size:.9rem}.session-selection.compact-view .session-list.compact .session-card.compact .session-content .session-meta{font-size:.7rem}.session-selection .view-all-button{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#4f46e5;cursor:pointer;font-size:.8rem;margin-top:.75rem;padding:.5rem;transition:all .2s;width:100%}.session-selection .view-all-button:hover{background:#e2e8f0}.session-selection .back-button{align-items:center;background:none;border:none;border-radius:6px;color:#4f46e5;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;margin-bottom:1.5rem;padding:.5rem .75rem;transition:all .2s}.session-selection .back-button:hover{background:#4f46e51a}.session-selection .tag-filter{border-bottom:1px solid #e2e8f0;margin-bottom:1rem;padding-bottom:.5rem}.session-selection .tag-filter .tag-filter-label{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:.75rem;font-weight:500;gap:.3rem;margin-bottom:.5rem}.session-selection .tag-filter .tag-filter-label:before{content:"◢";display:inline-block;font-size:.6rem;transform:rotate(45deg);transition:transform .2s}.session-selection .tag-filter .tag-filter-label.collapsed:before{transform:rotate(-45deg)}.session-selection .tag-filter .tag-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem;max-height:120px;overflow-y:auto;padding-right:.2rem}.session-selection .tag-filter .tag-buttons::-webkit-scrollbar{width:4px}.session-selection .tag-filter .tag-buttons::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.session-selection .tag-filter .tag-button{align-items:center;background:#f8fafc;border:none;border-radius:12px;box-shadow:none;cursor:pointer;display:flex;font-size:.7rem;gap:.2rem;height:24px;padding:.25rem .5rem;transition:all .2s}.session-selection .tag-filter .tag-button:hover{background:#e2e8f0;transform:none}.session-selection .tag-filter .tag-button.active{background:#4f46e5;box-shadow:none;color:#fff}.session-selection .tag-filter .tag-button.active .tag-icon{background:#fff3}.session-selection .tag-filter .tag-button .tag-icon{align-items:center;background:#4f46e51a;border-radius:50%;display:flex;font-size:.6rem;height:16px;justify-content:center;padding:0;width:16px}.session-selection .tag-filter .tag-button .tag-icon .katex{font-size:.6em}.session-selection .tag-filter .tag-button .tag-text{margin-left:.1rem;white-space:nowrap}.session-selection .tag-filter .clear-tags-button{align-items:center;background:none;border:1px dashed #cbd5e1;border-radius:12px;color:#475569;cursor:pointer;display:flex;font-size:.7rem;gap:.2rem;height:24px;padding:.25rem .5rem;transition:all .2s}.session-selection .tag-filter .clear-tags-button:hover{background:#4f46e50d;border-color:#4f46e5;color:#4f46e5}.session-selection .session-card{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #0000000d;cursor:pointer;display:flex;gap:1rem;padding:1rem;position:relative;transition:all .2s}.session-selection .session-card .save-button{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:4px;bottom:.75rem;cursor:pointer;display:flex;height:24px;justify-content:center;opacity:0;position:absolute;right:.75rem;transition:all .2s ease;width:24px;z-index:2}.session-selection .session-card .save-button:hover{background:#f8fafc;border-color:#cbd5e1}.session-selection .session-card .save-button.saved{background:#3b82f61a;border-color:#3b82f633}.session-selection .session-card .save-button.saved .icon-filled{color:#3b82f6}.session-selection .session-card .save-button svg{color:#475569;font-size:.8rem}.session-selection .session-card:hover{border-color:#4f46e5;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.session-selection .session-card:hover .save-button{opacity:1;transform:translateY(0)}.session-selection .session-card .equation-icon{align-items:center;background:#4f46e514;border:1px solid #4f46e51a;border-radius:8px;display:flex;flex-shrink:0;height:60px;justify-content:center;overflow:hidden;padding:.5rem;width:60px}.session-selection .session-card .equation-icon .katex{display:flex!important;justify-content:center;max-height:100%;max-width:100%;transform-origin:center}.session-selection .session-card .equation-icon .katex .katex-html{display:flex;overflow:hidden}.session-selection .session-card .equation-icon .katex .katex-html>.newline,.session-selection .session-card .equation-icon .katex .katex-mathml{display:none}.session-selection .session-card .equation-icon .katex-display{display:flex!important;justify-content:center;transform:scale(.9);transform-origin:center;transition:transform .2s}.session-selection .session-card .equation-icon[data-long=true] .katex-display{transform:scale(.7)}.session-selection .session-card .equation-icon[data-very-long=true] .katex-display{transform:scale(.5)}.session-selection .session-card .session-content{display:flex;flex-direction:column;flex-grow:1;gap:.5rem;min-width:0}.session-selection .session-card .session-header{display:flex;gap:.5rem;justify-content:space-between}.session-selection .session-card .session-header h3{color:#0f172a;font-size:.95rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-selection .session-card .session-header .session-status{align-items:center;color:#64748b;display:flex;flex-shrink:0;font-size:.75rem;gap:.3rem;margin-left:auto;padding-left:.5rem}.session-selection .session-card .session-header .session-status svg.completed{color:#10b981}.session-selection .session-card .session-header .session-status svg.active{color:#4f46e5}.session-selection .session-card .session-header .session-status svg.scheduled{color:#3b82f6}.session-selection .session-card .session-meta{color:#64748b;display:flex;font-size:.75rem;justify-content:space-between}.session-selection .session-card .session-meta span{align-items:center;display:flex;gap:.3rem}.session-selection .session-card.completed .equation-icon{background:#10b98114;border-color:#10b9811a}.session-selection .session-card.active .equation-icon{background:#4f46e514;border-color:#4f46e51a}.session-selection .session-card.scheduled .equation-icon{background:#3b82f614;border-color:#3b82f61a}.session-selection .session-card .add-button{align-items:center;background:#4f46e5;border:none;border-radius:4px;bottom:.75rem;color:#fff;cursor:pointer;display:flex;font-size:.8rem;gap:.3rem;padding:.25rem .5rem;position:absolute;right:.75rem;transition:all .2s}.session-selection .session-card .add-button:hover{background:#291fd9}.session-selection .session-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));max-height:60vh;overflow-y:auto;padding:.5rem 0}@media(max-width:768px){.session-selection .tag-button{height:24px;justify-content:center;padding:.3rem;width:24px}.session-selection .tag-button .tag-text{display:none}.session-selection .clear-tags-button{height:24px;justify-content:center;padding:.3rem;width:24px}.session-selection .clear-tags-button span{display:none}}.ai-generation-view{display:flex;flex-direction:column;height:100%}.ai-generation-view.compact{padding:0}.ai-generation-view .generation-content{display:flex;flex:1 1;flex-direction:column;gap:1rem;padding:0}.ai-generation-view .generation-content .fullscreen-view{background:#000;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:1000}.ai-generation-view .generation-content .fullscreen-view .fullscreen-media{align-items:center;display:flex;flex:1 1;height:100%;justify-content:center;object-fit:contain;width:100%}.ai-generation-view .generation-content .fullscreen-view .control-button{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0000004d;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;position:absolute;transition:all .2s;width:48px;z-index:1001}.ai-generation-view .generation-content .fullscreen-view .control-button.top-right{right:1.5rem;top:1.5rem}.ai-generation-view .generation-content .fullscreen-view .control-button:active{transform:scale(.95)}.ai-generation-view .generation-content .fullscreen-view.camera-view .camera-controls{bottom:2rem;display:flex;justify-content:center;left:0;padding:0 1rem;position:absolute;right:0;z-index:1001}.ai-generation-view .generation-content .fullscreen-view.camera-view .camera-controls .capture{background:#ffffff1a;border:2px solid #fff;height:64px;position:relative;width:64px}.ai-generation-view .generation-content .fullscreen-view.camera-view .camera-controls .capture .capture-circle{background:#fff;border-radius:50%;height:50px;transition:all .1s;width:50px}.ai-generation-view .generation-content .fullscreen-view.camera-view .camera-controls .capture:active .capture-circle{transform:scale(.9)}.ai-generation-view .generation-content .fullscreen-view.crop-view .crop-instruction{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;border-radius:20px;color:#fff;font-size:1rem;left:0;margin:0 auto;padding:.5rem 1rem;position:absolute;right:0;text-align:center;top:2rem;width:fit-content;z-index:1001}.ai-generation-view .generation-content .fullscreen-view.crop-view .ReactCrop{display:flex;margin:auto;max-height:100%;max-width:100%}.ai-generation-view .generation-content .fullscreen-view.crop-view .crop-controls{bottom:2.5rem;position:absolute;right:1.5rem;z-index:1001}.ai-generation-view .generation-content .fullscreen-view.crop-view .crop-controls .confirm{background:#4f46e5cc;color:#fff;font-size:1.2rem;position:relative}.ai-generation-view .generation-content .fullscreen-view.crop-view .crop-controls .confirm:disabled{cursor:not-allowed;opacity:.5}.ai-generation-view .generation-content .error-message,.ai-generation-view .generation-content .warning-message{align-items:center;border-radius:8px;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:.5rem;padding:.75rem}.ai-generation-view .generation-content .error-message .icon,.ai-generation-view .generation-content .warning-message .icon{flex-shrink:0}.ai-generation-view .generation-content .confirmation-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box{animation:fadeInScale .25s ease;background:#fff;border-radius:1rem;box-shadow:0 10px 30px #0003;max-width:400px;padding:2rem;text-align:center;width:90%}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .icon-row{margin-bottom:.5rem}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .icon-row .icon.warning{color:#e53935;font-size:1.8rem}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .main-message{color:#333;font-size:1rem;font-weight:600;margin-bottom:.5rem}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .info-note{align-items:center;color:#666;display:flex;font-size:.85rem;gap:.4rem;justify-content:center;margin-bottom:1.5rem}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .info-note .icon.info{color:#2196f3}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .button-group{display:flex;gap:1rem;justify-content:center}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .button-group button{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:flex;font-size:.9rem;gap:.4rem;padding:.6rem 1.2rem;transition:all .2s ease}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .button-group .confirm-button{background:#4caf50;color:#fff}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .button-group .confirm-button:hover{background:#43a047}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .button-group .cancel-button{background:#e0e0e0;color:#333}.ai-generation-view .generation-content .confirmation-overlay .confirmation-box .button-group .cancel-button:hover{background:#d5d5d5}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ai-generation-view .generation-content .error-message{background:#fff5f5;color:#e53e3e}.ai-generation-view .generation-content .warning-message{background:#fffaf0;color:#dd6b20}.ai-generation-view .generation-content .chat-input-container{padding:.5rem}.ai-generation-view .generation-content .chat-input-container .input-wrapper{background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 1px 3px #0000000d;padding:.75rem .75rem 3.5rem;position:relative}.ai-generation-view .generation-content .chat-input-container .input-wrapper .auto-expand-textarea{border:none;font-family:Inter,sans-serif;font-size:.95rem;line-height:1.5;margin:0;max-height:200px;min-height:80px;overflow-y:hidden;padding:0;resize:none;width:100%}.ai-generation-view .generation-content .chat-input-container .input-wrapper .auto-expand-textarea:focus{box-shadow:none;outline:none}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions{bottom:.75rem;display:flex;gap:.5rem;position:absolute;right:.75rem}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button{align-items:center;background:none;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button:hover{background:#f8fafc;color:#4f46e5}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button.send{background:#4f46e5;color:#fff;overflow:hidden;position:relative}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button.send:hover{background:#291fd9}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button.send:disabled{background:#cbd5e1;cursor:not-allowed}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button.send:disabled:not(.loading){opacity:.6}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button.send .loading-overlay{align-items:center;background:#4f46e5e6;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.ai-generation-view .generation-content .attachment-preview{margin:0 .5rem .5rem}.ai-generation-view .generation-content .attachment-preview .attachment-item{border-radius:8px;box-shadow:0 1px 3px #0000001a;height:120px;overflow:hidden;position:relative;width:120px}.ai-generation-view .generation-content .attachment-preview .attachment-item img{height:100%;object-fit:cover;width:100%}.ai-generation-view .generation-content .attachment-preview .attachment-item .remove-attachment{align-items:center;background:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:.25rem;top:.25rem;transition:all .2s;width:24px}.ai-generation-view .generation-content .attachment-preview .attachment-item .remove-attachment:hover{background:#000000b3}@media(max-width:768px){.ai-generation-view .generation-content{padding:0}.ai-generation-view .generation-content .fullscreen-view .control-button.top-right{right:1rem;top:1rem}.ai-generation-view .generation-content .fullscreen-view.camera-view .camera-controls,.ai-generation-view .generation-content .fullscreen-view.crop-view .crop-controls{bottom:1.5rem}.ai-generation-view .generation-content .fullscreen-view.crop-view .crop-instruction{font-size:.9rem;top:1rem}.ai-generation-view .generation-content .chat-input-container{padding:.5rem .25rem}.ai-generation-view .generation-content .chat-input-container .input-wrapper{padding-bottom:3rem}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions{gap:.25rem}.ai-generation-view .generation-content .chat-input-container .input-wrapper .input-actions .action-button{font-size:.8rem;height:28px;width:28px}.ai-generation-view .generation-content .attachment-preview .attachment-item{height:100px;width:100px}}.selected-sessions{display:flex;flex-direction:column;flex-grow:1;overflow:hidden;position:relative}.selected-sessions h3{color:#1e293b;font-size:1rem;margin:.5rem 0}.selected-sessions .compact-undo-redo{background:#fff;border:1px solid #e2e8f0;border-radius:4px;bottom:10px;box-shadow:0 1px 3px #0000001a;display:flex;gap:.5rem;left:10px;padding:.4rem;position:absolute;z-index:2}.selected-sessions .compact-undo-redo button{align-items:center;background:none;border:none;border-radius:3px;color:#475569;cursor:pointer;display:flex;justify-content:center;padding:.3rem;transition:all .2s ease}.selected-sessions .compact-undo-redo button:hover{background:#4f46e51a;color:#4f46e5}.selected-sessions .compact-undo-redo button:disabled{cursor:not-allowed;opacity:.5}.selected-sessions .session-list{background:#f9fafb;border:1px solid #e2e8f0;border-radius:6px;display:flex;flex-direction:column;flex-grow:1;gap:1rem;margin-top:1rem;overflow-y:auto;padding:.75rem}.selected-sessions .session-list .empty-message{align-items:center;border-radius:8px;color:#64748b;display:flex;flex-direction:column;gap:1rem;height:80%;justify-content:center;margin:2rem 0;text-align:center}.selected-sessions .session-list .empty-message .creation-methods{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-bottom:1rem}.selected-sessions .session-list .empty-message .creation-methods .method{align-items:center;display:flex;flex-direction:column;gap:.5rem;transition:transform .2s ease;width:150px}.selected-sessions .session-list .empty-message .creation-methods .method img{height:auto;width:100%}.selected-sessions .session-list .empty-message .creation-methods .method p{color:#334155;font-size:.9rem;font-weight:500;margin:0}.selected-sessions .session-list .empty-message .instruction-text{align-items:center;display:flex;font-size:1rem;margin-top:1rem}.selected-sessions .session-list .empty-message .instruction-text svg{color:#4f46e5;margin-left:.5rem}.selected-sessions .session-list .session-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 2px 6px #00000014;margin-bottom:.75rem;padding:.75rem;transition:box-shadow .2s ease,transform .2s ease}.selected-sessions .session-list .session-item .drag-handle{align-items:center;color:#cbd5e1;cursor:grab;display:flex;justify-content:center;margin-right:.5rem;padding:.3rem;touch-action:none;transition:color .2s ease}.selected-sessions .session-list .session-item .drag-handle:hover{color:#4f46e5}.selected-sessions .session-list .session-item .drag-handle:active{cursor:grabbing}.selected-sessions .session-list .session-item.dragging{border-color:#4f46e5;box-shadow:0 4px 12px #00000026;opacity:.9;transform:scale(1.01)}.selected-sessions .session-list .session-item:last-child{margin-bottom:0}.selected-sessions .session-list .session-item .session-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.selected-sessions .session-list .session-item .session-header .session-controls{display:flex;flex-direction:column;gap:.1rem}.selected-sessions .session-list .session-item .session-header .session-controls button{background:none;border:none;color:#64748b;cursor:pointer;font-size:.7rem;padding:.1rem}.selected-sessions .session-list .session-item .session-header .session-controls button:hover:not(:disabled){color:#4f46e5}.selected-sessions .session-list .session-item .session-header .session-controls button:disabled{color:#cbd5e1;cursor:not-allowed}.selected-sessions .session-list .session-item .session-header h4{color:#0f172a;display:flex;flex-grow:1;font-size:.95rem;font-weight:600;margin:0}.selected-sessions .session-list .session-item .session-header .info-span{color:#64748b;font-size:.8rem}.selected-sessions .session-list .session-item .session-header .session-actions{align-items:center;display:flex;gap:.5rem}.selected-sessions .session-list .session-item .session-header .session-actions .toggle-expand-button{align-items:center;background:none;border:none;border-radius:3px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:.3rem}.selected-sessions .session-list .session-item .session-header .session-actions .toggle-expand-button:hover{background:#4f46e51a;color:#4f46e5}.selected-sessions .session-list .session-item .session-header .session-actions .remove-button{background:none;border:none;border-radius:3px;color:#64748b;cursor:pointer;padding:.3rem}.selected-sessions .session-list .session-item .session-header .session-actions .remove-button:hover{background:#fee2e2;color:#dc2626}.selected-sessions .session-list .session-item .exercise-table{border-collapse:collapse;display:table;width:100%}.selected-sessions .session-list .session-item .exercise-table .exercise-row{display:table-row}.selected-sessions .session-list .session-item .exercise-table .exercise-row:first-child{border-bottom:none}.selected-sessions .session-list .session-item .exercise-table .exercise-description,.selected-sessions .session-list .session-item .exercise-table .exercise-hint,.selected-sessions .session-list .session-item .exercise-table .exercise-number,.selected-sessions .session-list .session-item .exercise-table .exercise-solution{border-bottom:1px solid #f8fafc;display:table-cell;padding:.5rem;vertical-align:middle}.selected-sessions .session-list .session-item .exercise-table .exercise-row:first-child .exercise-hint,.selected-sessions .session-list .session-item .exercise-table .exercise-row:first-child .exercise-number{border-bottom:none}.selected-sessions .session-list .session-item .exercise-table .exercise-row:first-child .exercise-description,.selected-sessions .session-list .session-item .exercise-table .exercise-row:first-child .exercise-solution{border-bottom:2px solid #e2e8f0;color:#475569;font-size:.8rem;font-weight:600;padding-bottom:.25rem;text-transform:uppercase}.selected-sessions .session-list .session-item .exercise-table .exercise-number{font-weight:700;min-width:30px;padding-right:0;text-align:center;width:30px}.selected-sessions .session-list .session-item .exercise-table .exercise-description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:auto;word-break:break-word}.selected-sessions .session-list .session-item .exercise-table .exercise-description .exercise-math{margin-bottom:.5rem;overflow:visible;text-overflow:clip;white-space:normal}.selected-sessions .session-list .session-item .exercise-table .exercise-description .exercise-progress-bar{width:100%}.selected-sessions .session-list .session-item .exercise-table .exercise-solution{color:#64748b;font-style:italic;max-width:120px;min-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:120px}.selected-sessions .session-list .session-item .exercise-table .exercise-hint{min-width:40px;padding-left:0;position:relative;text-align:center;width:40px}.selected-sessions .session-list .session-item .exercise-table .exercise-hint .hint-button{background:none;border:none;color:#888;cursor:pointer;margin:0 auto;padding:.3rem}.selected-sessions .session-list .session-item .exercise-table .exercise-hint .hint-button.active{color:#f39c12}.selected-sessions .session-list .session-item .exercise-table .exercise-hint .hint-popup{animation:fadeIn .3s ease forwards;background:#f5f5f5;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 8px #0000001a;font-size:.9rem;margin-top:.5rem;max-width:300px;min-width:200px;padding:.75rem;position:absolute;right:0;top:100%;z-index:6}.selected-sessions .session-list .session-item .exercise-table .exercise-hint .hint-popup:before{border-color:#0000 #0000 #f5f5f5;border-style:solid;border-width:0 8px 8px;content:"";position:absolute;right:20px;top:-8px}.selected-sessions .session-list .session-item .exercise-table .exercise-actions{border-bottom:1px solid #f8fafc;display:table-cell;min-width:40px;padding:.5rem;text-align:center;vertical-align:middle;width:40px}.selected-sessions .session-list .session-item .exercise-table .exercise-actions .delete-task-button{background:none;border:none;border-radius:3px;color:#64748b;cursor:pointer;padding:.3rem}.selected-sessions .session-list .session-item .exercise-table .exercise-actions .delete-task-button:hover{background:#fee2e2;color:#dc2626}.selected-sessions .session-list .session-item .exercise-table .exercise-row:first-child .exercise-actions{border-bottom:none}.selected-sessions .total-duration{border-top:1px solid #e2e8f0;color:#334155;font-size:.85rem;font-weight:500;margin-top:.5rem;padding-top:.5rem;text-align:right}.progress-summary{display:flex;justify-content:center;padding-top:20px;width:100%}.progress-summary .progress-container{margin:0 auto;max-width:1000px;min-width:600px;width:auto;z-index:5}.progress-summary .progress-container .progress-bar{background:#f0f0f0;border-radius:4px;display:flex;height:6px;margin-bottom:.15rem;overflow:hidden}.progress-summary .progress-container .progress-bar .progress-segment{cursor:pointer;height:100%;transition:width .3s ease}.progress-summary .progress-container .progress-bar .progress-segment.correct{background:#10b981}.progress-summary .progress-container .progress-bar .progress-segment.corrected{background:#86d486 repeating-linear-gradient(-45deg,#0000,#0000 2px,#fff3 0,#fff3 4px)}.progress-summary .progress-container .progress-bar .progress-segment.wrong{background:#ef4444}.progress-summary .progress-container .progress-bar .progress-segment.in-work{background:#f59e0b}.progress-summary .progress-container .progress-bar .progress-segment.error{background:#000}.progress-summary .progress-container .progress-bar .progress-segment.not-attempted{background:#ffffff80}.progress-tooltip{font-size:.8rem;padding:.25rem .5rem;z-index:1000}.exercise-selection-container{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;width:350px}.exercise-selection-content{display:flex;flex:1 1;flex-direction:column;gap:2rem;overflow-y:auto;padding-top:3rem}.ai-generation-section{background:#0000;box-shadow:none;margin-bottom:1rem;padding:0}.topic-selection-section{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.topic-selection-button{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:1.5rem;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.topic-selection-button:hover{background:#fff;border-color:#4f46e5;box-shadow:0 6px 12px #0000001a;transform:translateY(-3px)}.topic-selection-button .button-content{align-items:center;display:flex;flex-direction:column;gap:.75rem}.topic-selection-button .button-content .button-icon{color:#4f46e5;font-size:1.75rem}.topic-selection-button .button-content span{color:#0f172a;font-size:1.1rem;font-weight:600}.topic-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));overflow-y:auto;padding-bottom:1rem}.topic-card{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:1.5rem;position:relative;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.topic-card:hover{border-color:#4f46e5;box-shadow:0 6px 12px #0000001a;transform:translateY(-3px)}.topic-card:hover .topic-icon{transform:scale(1.05)}.topic-card .topic-icon{align-items:center;background:#4f46e51a;border-radius:50%;color:#4f46e5;display:flex;height:50px;justify-content:center;transition:all .3s;width:50px}.topic-card h3{color:#0f172a;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.topic-card p{color:#64748b;flex-grow:1;font-size:.9rem;line-height:1.4;margin:0 0 1rem}.topic-card .session-count{align-items:center;color:#4f46e5;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;margin-top:auto}@media(max-width:768px){.exercise-selection-content{gap:1.5rem;padding:.75rem}.topic-grid{gap:1rem;grid-template-columns:1fr}.topic-card{padding:1.25rem}}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-overlay .modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:90vh;max-width:1200px;overflow:hidden;position:relative;width:90%}.modal-overlay .modal-content .close-button{align-items:center;background:none;border:none;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:.5rem;position:absolute;right:1rem;top:1rem;z-index:10}.modal-overlay .modal-content .close-button:hover{color:#394250}.modal-overlay .modal-content .close-button svg{height:20px;width:20px}.exercise-sheet-creator-modal{display:flex;flex-direction:column;height:80vh;padding:1rem}.exercise-sheet-creator-modal .creator-container{display:flex;gap:1.5rem;height:calc(100% - 30px);overflow:hidden}.exercise-sheet-creator-modal .sheet-configuration{border-right:1px solid #e2e8f0;display:flex;flex:3 1;flex-direction:column;overflow:hidden;padding-right:1rem}.exercise-sheet-creator-modal .sheet-configuration .sheet-title{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:.75rem;margin-bottom:1rem;padding:.5rem;transition:all .2s}.exercise-sheet-creator-modal .sheet-configuration .sheet-title:hover{background:#4f46e50d}.exercise-sheet-creator-modal .sheet-configuration .sheet-title:hover .edit-icon{opacity:1}.exercise-sheet-creator-modal .sheet-configuration .sheet-title h2{color:#0f172a;font-size:1.25rem;font-weight:600;margin:0}.exercise-sheet-creator-modal .sheet-configuration .sheet-title .edit-icon{color:#64748b;font-size:.9rem;opacity:.5;transition:opacity .2s}.exercise-sheet-creator-modal .sheet-configuration .sheet-title-input{border:1px solid #cbd5e1;border-radius:4px;color:#0f172a;font-family:Inter,sans-serif;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding:.5rem}.exercise-sheet-creator-modal .sheet-configuration .sheet-title-input:focus{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533;outline:none}.exercise-sheet-creator-modal .sheet-configuration .save-button{background:#4f46e5;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;margin-top:.75rem;padding:.6rem;transition:background .2s;width:100%}.exercise-sheet-creator-modal .sheet-configuration .save-button:hover{background:#291fd9}.exercise-sheet-creator-modal .sheet-configuration .save-button:disabled{background:#cbd5e1;cursor:not-allowed}.exercise-sheet-creator-modal .session-selection{display:flex;flex:2 1;flex-direction:column;overflow:hidden}.exercise-sheet-creator-modal .session-selection .session-selection-container{display:flex;flex:0 0 400px;flex-direction:column;overflow:hidden}.name-prompt-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1020}.name-prompt-overlay .name-prompt-modal{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:320px;padding:1.25rem;position:relative;width:90%}.name-prompt-overlay .name-prompt-modal .close-button{background:none;border:none;color:#64748b;cursor:pointer;font-size:1.1rem;padding:.25rem;position:absolute;right:.75rem;top:.75rem}.name-prompt-overlay .name-prompt-modal .close-button:hover{color:#334155}.name-prompt-overlay .name-prompt-modal h3{color:#0f172a;font-size:1.1rem;font-weight:600;margin-bottom:1rem;margin-top:0;padding-right:1.5rem}.name-prompt-overlay .name-prompt-modal form{display:flex;flex-direction:column;gap:1rem}.name-prompt-overlay .name-prompt-modal .input-row{align-items:center;display:flex;gap:.5rem}.name-prompt-overlay .name-prompt-modal .name-input{border:1px solid #cbd5e1;border-radius:4px;flex:1 1;font-size:.95rem;min-width:0;padding:.5rem}.name-prompt-overlay .name-prompt-modal .name-input:focus{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533;outline:none}.name-prompt-overlay .name-prompt-modal .color-button{border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;flex-shrink:0;height:36px;transition:transform .2s;width:36px}.name-prompt-overlay .name-prompt-modal .color-button:hover{transform:scale(1.05)}.name-prompt-overlay .name-prompt-modal .confirm-button{align-items:center;background:#4f46e5;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:.5rem;justify-content:center;padding:.5rem;transition:background .2s;width:100%}.name-prompt-overlay .name-prompt-modal .confirm-button:hover{background:#291fd9}.sheet-card{--sheet-color-light:color-mix(in srgb,var(--sheet-color),#fff 30%);--sheet-color-lighter:color-mix(in srgb,var(--sheet-color),#fff 50%);--sheet-color-very-light:color-mix(in srgb,var(--sheet-color),#fff 70%);--sheet-color-text:color-contrast(var(--sheet-color) vs #fff,#000);--sheet-color-muted:color-mix(in srgb,var(--sheet-color),#fff 15%);--sheet-color-border:color-mix(in srgb,var(--sheet-color),#0000 70%);aspect-ratio:210/297;background:#dee791;background:var(--sheet-color,#dee791);border:1px solid #0000001a;box-shadow:0 4px 8px #0000001a;clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,0 100%);cursor:pointer;display:flex;flex-direction:column;max-width:300px;overflow:hidden;padding:1rem;position:relative;transition:all .2s}.sheet-card:after{box-shadow:-1px 1px 2px #0000001a;content:"";height:24px;position:absolute;right:0;top:0;transition:all .2s;width:24px}.sheet-card.active:after,.sheet-card:after,.sheet-card:hover:after{background:linear-gradient(225deg,var(--sheet-color-light) 50%,#0000 50%)}.sheet-card.new-sheet{clip-path:none}.sheet-card.new-sheet:after{display:none}.sheet-card .sheet-actions{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:var(--sheet-color-very-light);right:0;top:0;transform:translateY(-50%)}.sheet-card.active{border-color:var(--sheet-color-border);box-shadow:0 0 0 2px var(--sheet-color-muted)}.sheet-card.draft{background-color:var(--sheet-color-very-light);border:4px dotted var(--sheet-color);opacity:.6;transition:all .3s ease}.sheet-card.new-sheet{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;color:#64748b;display:flex;flex-direction:column;justify-content:center;transition:all .2s}.sheet-card.new-sheet .add-icon{color:#94a3b8;font-size:2rem;margin-bottom:.5rem;transition:all .2s}.sheet-card.new-sheet:hover{background:#f1f5f9;border-color:#94a3b8;color:#4f46e5}.sheet-card.new-sheet:hover .add-icon{color:#4f46e5;transform:scale(1.1)}.sheet-card .sheet-header{border-bottom:1px solid var(--sheet-color-border);color:var(--sheet-color-text);margin-bottom:.75rem;padding-bottom:.5rem;padding-right:0}.sheet-card .sheet-header .sheet-title-row{align-items:center;display:flex;justify-content:space-between}.sheet-card .sheet-header .sheet-title-row .sheet-status{align-items:center;background-color:var(--sheet-color);border-radius:8px;color:var(--sheet-color-text);display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;padding:2px 8px;text-transform:uppercase}.sheet-card .sheet-header .sheet-title-row .status-icon{height:14px;width:14px}.sheet-card .sheet-header .sheet-status.draft{background-color:#facc15;color:#4a1e02}.sheet-card .sheet-header .sheet-meta{align-items:center;color:var(--sheet-color-muted);display:flex;font-size:.75rem;justify-content:space-between}.sheet-card .sheet-header .sheet-meta .sheet-time{background:var(--sheet-color-light);border:1px solid var(--sheet-color-border);border-radius:4px;color:var(--sheet-color-text);font-weight:500;padding:.2rem .4rem}.sheet-card .sheet-content{display:flex;flex:1 1;flex-direction:column;gap:.75rem;margin-right:-.25rem;overflow-y:auto;padding:.25rem 0}.sheet-card .sheet-content .session-preview{background:var(--sheet-color-light);border:1px solid var(--sheet-color-border);border-radius:6px;padding:.75rem .75rem 0;transition:all .2s}.sheet-card .sheet-content .session-preview:hover{background:var(--sheet-color-light)}.sheet-card .sheet-content .session-preview.complete{background:var(--sheet-color-very-light);border-color:var(--sheet-color-muted);cursor:default;opacity:.9}.sheet-card .sheet-content .session-preview.complete .exercise-preview,.sheet-card .sheet-content .session-preview.complete .session-name{color:var(--sheet-color-text);font-weight:600}.sheet-card .sheet-content .session-preview.complete .complete-icon{color:var(--sheet-color-text)}.sheet-card .sheet-content .session-preview .session-name{color:var(--sheet-color-text);font-size:.85rem;font-weight:600;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-card .sheet-content .session-preview .exercise-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--sheet-color-text);display:-webkit-box;font-size:.85rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis}.sheet-card .sheet-actions{background:#fff;border:1px solid var(--sheet-color-border);border-radius:20px;box-shadow:0 1px 3px #0000001a;display:flex;gap:.25rem;opacity:0;padding:.25rem;position:absolute;right:.5rem;top:.5rem;transform:translateY(-5px);transition:all .2s;z-index:2}.sheet-card .sheet-actions button{align-items:center;background:#fff;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;font-size:.7rem;height:24px;justify-content:center;transition:all .2s;width:24px}.sheet-card .sheet-actions button:hover{background:#f1f5f9;transform:scale(1.1)}.sheet-card .sheet-actions button:hover.edit-btn{background:#eff6ff;color:#3b82f6}.sheet-card .sheet-actions button:hover.distribute-btn{background:#4f46e5;color:#fff}.sheet-card .sheet-actions button:hover.delete-btn{background:#fee2e2;color:#ef4444}.sheet-card .session-progress{margin-top:.5rem}.sheet-card .session-progress .progress-summary{padding:0}.sheet-card .session-progress .progress-container{min-width:100%}.sheet-card:hover .sheet-actions{opacity:1;transform:translateY(0)}.class-link-button{align-items:center;background-color:#0000;border:2px solid #4f46e5;border-radius:.5rem;color:#4f46e5;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:.5rem;line-height:1;padding:.5rem 1rem;transition:all .2s ease-in-out}.class-link-button:hover{background-color:#4f46e51a}.class-link-button:focus{box-shadow:0 0 0 2px #4f46e580;outline:none}.class-link-button:active{background-color:#4f46e533}.class-link-button.secondary{background-color:#0000;border:1px solid #8f89ee;color:#4f46e5;font-size:.875rem;font-weight:400;padding:.375rem .75rem}.class-link-button.secondary:hover{background-color:#4f46e50d}.class-link-button.secondary:active{background-color:#4f46e51a}.class-link-button.secondary .class-link-icon{font-size:.875rem}.class-link-button .class-link-icon{font-size:1rem}.teacher-dashboard{background-color:#f5f7fa;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100vh}.teacher-dashboard .dashboard-header{align-items:center;background-color:#4f46e5;color:#fff;display:flex;flex-wrap:nowrap;gap:1rem;justify-content:space-between;padding:.75rem 1rem;position:relative;z-index:10}.teacher-dashboard .dashboard-header .profile-info{align-items:center;display:flex;flex:1 1;gap:.75rem;min-width:0;overflow:hidden}.teacher-dashboard .dashboard-header .profile-info .avatar{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;height:44px;justify-content:center;min-width:44px;overflow:hidden;width:44px}.teacher-dashboard .dashboard-header .profile-info .avatar svg{height:100%;width:100%}.teacher-dashboard .dashboard-header .profile-info .profile-details{min-width:0;overflow:hidden}.teacher-dashboard .dashboard-header .profile-info .profile-details h1{font-size:1rem;font-weight:600;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-dashboard .dashboard-header .profile-info .profile-details .profile-meta{display:none}@media(min-width:768px){.teacher-dashboard .dashboard-header .profile-info .profile-details .profile-meta{display:flex;font-size:.75rem;gap:1rem;margin-top:.15rem;opacity:.9}.teacher-dashboard .dashboard-header .profile-info .profile-details .profile-meta span{align-items:center;display:flex;gap:.25rem;white-space:nowrap}.teacher-dashboard .dashboard-header .profile-info .profile-details .profile-meta .icon{font-size:.8em}}.teacher-dashboard .dashboard-header .header-actions{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.teacher-dashboard .dashboard-header .header-actions .admin-view-button{align-items:center;background-color:#ffffff1a;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;gap:.5rem;justify-content:center;min-height:36px;padding:.5rem .75rem;transition:all .2s;white-space:nowrap}.teacher-dashboard .dashboard-header .header-actions .admin-view-button:hover{background-color:#fff3}.teacher-dashboard .dashboard-header .header-actions .admin-view-button .action-text{display:none}@media(min-width:480px){.teacher-dashboard .dashboard-header .header-actions .admin-view-button .action-text{display:inline}}.teacher-dashboard .dashboard-header .header-actions .logout-button{align-items:center;background-color:#fff;border:none;border-radius:4px;color:#4f46e5;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:.5rem;justify-content:center;min-height:44px;min-width:44px;padding:.5rem;position:relative;transition:all .2s}.teacher-dashboard .dashboard-header .header-actions .logout-button:hover{background-color:#f1f5f9;transform:translateY(-1px)}.teacher-dashboard .dashboard-header .header-actions .logout-button .logout-icon{font-size:1.1rem}.teacher-dashboard .dashboard-header .header-actions .logout-button .action-text{display:none}@media(min-width:480px){.teacher-dashboard .dashboard-header .header-actions .logout-button .action-text{display:inline}}@media(max-width:479px){.teacher-dashboard .dashboard-header .header-actions .logout-button:after{background:#000c;border-radius:4px;color:#fff;content:attr(aria-label);font-size:.75rem;left:50%;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;top:100%;transform:translateX(-50%);transition:opacity .2s;white-space:nowrap;z-index:100}.teacher-dashboard .dashboard-header .header-actions .logout-button:focus:after,.teacher-dashboard .dashboard-header .header-actions .logout-button:hover:after{opacity:1}}@media(max-width:480px){.teacher-dashboard .dashboard-header{gap:.5rem;padding:.5rem}.teacher-dashboard .dashboard-header .profile-info{gap:.5rem}.teacher-dashboard .dashboard-header .profile-info .avatar{height:40px;min-width:40px;width:40px}.teacher-dashboard .dashboard-header .profile-info .profile-details h1{font-size:.9rem}.teacher-dashboard .dashboard-header .header-actions{gap:.25rem}.teacher-dashboard .dashboard-header .header-actions .admin-view-button,.teacher-dashboard .dashboard-header .header-actions .logout-button{min-height:40px;min-width:40px;padding:.4rem}}.teacher-dashboard .dashboard-content{display:flex;flex:1 1;overflow:hidden}.header-container{align-items:center;display:flex;height:70px;justify-content:space-between;left:0;padding:0 20px;position:fixed;right:0;top:0;z-index:1000}.header-container .header-section{align-items:center;display:flex;flex:1 1;height:100%}.header-container .header-section:first-child{justify-content:flex-start}.header-container .header-section:nth-child(2){justify-content:center}.header-container .header-section:last-child{justify-content:flex-end}.header-container .teacher-view-button{align-items:center;background:#fff;border:none;border-radius:20px;box-shadow:0 2px 5px #0000001a;color:#000;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.header-container .teacher-view-button:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.header-container .teacher-view-button:active{box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.header-container .teacher-view-button .teacher-view-icon{font-size:16px}.header-container .teacher-view-button .teacher-view-text{white-space:nowrap}@media(max-width:768px){.header-container .teacher-view-button{font-size:12px;padding:8px 12px}.header-container .teacher-view-button .teacher-view-icon{font-size:14px}}@keyframes pulse-gold{0%{box-shadow:0 0 0 0 #ffd700b3}70%{box-shadow:0 0 0 10px #ffd70000}to{box-shadow:0 0 0 0 #ffd70000}}@keyframes pulse-silver{0%{box-shadow:0 0 0 0 #c0c0c0b3}70%{box-shadow:0 0 0 10px #c0c0c000}to{box-shadow:0 0 0 0 #c0c0c000}}@keyframes pulse-bronze{0%{box-shadow:0 0 0 0 #cd7f32b3}70%{box-shadow:0 0 0 10px #cd7f3200}to{box-shadow:0 0 0 0 #cd7f3200}}.action-buttons{align-items:center;justify-content:space-between;padding:0 8px}.action-buttons,.action-buttons-group{display:flex;gap:8px}.logout-wrapper{margin-left:auto}.action-button{align-items:center;background:#f3f4f6;border:none;border-radius:50%;cursor:pointer;display:flex;gap:8px;height:36px;justify-content:center;position:relative;transition:all .2s ease;width:36px}.action-button:hover{background:#e0e7ff;color:#4f46e5;transform:scale(1.1)}.action-button:active{transform:scale(.95)}.action-button.primary{color:#4f46e5}.action-button.primary:hover{background:#e0e7ff}.action-button.secondary{color:#6b7280}.action-button.secondary:hover{background:#fee2e2;color:#ef4444}.action-button.rank-1{animation:pulse-gold 2s infinite,float 3s ease-in-out infinite;background:linear-gradient(135deg,gold,#ffec80);color:#8b7500}.action-button.rank-1 .rank-badge{color:#8b7500;text-shadow:0 1px 2px #0003}.action-button.rank-2{animation:pulse-silver 2s .5s infinite,float 3.5s ease-in-out infinite;background:linear-gradient(135deg,silver,#e0e0e0);color:dimgray}.action-button.rank-2 .rank-badge{color:dimgray;text-shadow:0 1px 2px #0003}.action-button.rank-3{animation:pulse-bronze 2s 1s infinite,float 4s ease-in-out infinite;background:linear-gradient(135deg,#cd7f32,#e6a861);color:#5d3a1a}.action-button.rank-3 .rank-badge{color:#5d3a1a;text-shadow:0 1px 2px #0003}.action-button .rank-badge{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.action-button .rank-badge .rank-number{font-size:18px;font-weight:800;position:relative;z-index:2}.action-button .rank-badge .rank-crown{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath fill='currentColor' d='M576 136c0 22.09-17.91 40-40 40-.248 0-.455-.127-.703-.13l-50.52 277.9C482 468.9 468.8 480 453.3 480H122.7c-15.46 0-28.72-11.06-31.48-26.27L40.71 175.9c-.25 0-.46.1-1.61.1-22.09 0-40-17.91-40-40s18.81-40 40-40 40 17.91 40 40c0 8.998-3.521 16.89-8.537 23.57l89.63 71.7c15.91 12.73 39.5 7.544 48.61-10.68l57.6-115.2C255.1 98.34 247.1 86.34 247.1 72c0-22.09 18.8-40 40.9-40s39.1 17.91 39.1 40c0 14.34-7.963 26.34-19.3 33.4l57.6 115.2c9.111 18.22 32.71 23.4 48.61 10.68l89.63-71.7C499.5 112.9 496 104.1 496 96c0-22.09 17.91-40 40-40s40 17.91 40 40z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;height:12px;left:50%;opacity:.8;position:absolute;top:-8px;transform:translateX(-50%);width:24px;z-index:1}.tooltip{background:#333;border-radius:4px;color:#fff;font-size:12px;padding:4px 8px}@media(max-width:480px){.action-buttons{gap:6px}.action-button{height:32px;width:32px}.action-button svg{height:14px;width:14px}.action-button .rank-badge{font-size:14px}.action-button .rank-badge .rank-number{font-size:16px}.action-button .rank-badge .rank-crown{top:-6px;width:20px}}.student-ranking-popup{background:#fff;border-right:1px solid #e1e1e1;bottom:0;box-shadow:2px 0 10px #0000001a;display:flex;flex-direction:column;left:0;position:fixed;top:0;transform:translateX(0);transition:transform .3s ease;width:320px;z-index:1000}.student-ranking-popup .popup-content{display:flex;flex-direction:column;height:100%}.student-ranking-popup .popup-header{align-items:center;background:#fff;border-bottom:1px solid #e1e1e1;display:flex;justify-content:space-between;padding:1rem}.student-ranking-popup .popup-title{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.student-ranking-popup .close-button{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:1.2rem;padding:.25rem;position:static;right:auto;top:auto;transition:background-color .2s}.student-ranking-popup .close-button:hover{background:#f1f5f9;color:#475569}.student-ranking-popup .popup-body{flex:1 1;overflow-y:auto;padding:.5rem 1rem}.student-ranking-popup .student-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;padding:.75rem 0}.student-ranking-popup .student-row:last-child{border-bottom:none}.student-ranking-popup .student-row.highlight{background-color:#f8fafc;border-radius:6px;margin:0 -.5rem;padding:.75rem}.student-ranking-popup .rank{align-items:center;background:#f1f5f9;border-radius:4px;color:#64748b;display:flex;font-size:.75rem;font-weight:600;height:24px;justify-content:center;margin-right:.75rem;width:24px}.student-ranking-popup .rank.top-rank{background:#4f46e5;color:#fff}.student-ranking-popup .avatar{align-items:center;background:#f1f5f9;border-radius:50%;display:flex;height:35px;justify-content:center;margin-right:.75rem;overflow:hidden;width:35px}.student-ranking-popup .student-info{flex:1 1}.student-ranking-popup .student-name{align-items:center;color:#1e293b;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.student-ranking-popup .student-points{align-items:center;color:#64748b;display:flex;font-size:.75rem;gap:.25rem;margin-top:.25rem}.student-ranking-popup .points-badge{background:#e2e8f0;border-radius:4px;color:#475569;font-size:.6875rem;padding:.125rem .375rem}.student-ranking-popup .distance-badge{color:#ef4444;font-size:.6875rem;font-weight:600;margin-left:.25rem}.student-ranking-popup .distance-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:.8125rem;margin:.5rem 0;padding:.75rem;text-align:center}.student-ranking-popup .ellipsis{color:#64748b;font-size:.75rem;font-style:italic;margin:.25rem 0;padding:.5rem 0;text-align:center}.loading-spinner-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;z-index:1000}.loading-spinner-container .loading-spinner-content{align-items:center;display:flex;flex-direction:column;gap:1rem}.loading-spinner-container .loading-spinner-content .loading-text{color:#4f46e5;font-size:1.2rem;font-weight:500}.completed-exercises-popup{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.completed-exercises-popup .popup-overlay{background-color:#00000080;bottom:0;left:0;position:absolute;right:0;top:0}.completed-exercises-popup .popup-content{animation:fadeIn .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-height:80vh;max-width:900px;overflow-y:auto;padding:20px;position:relative;width:80%}.completed-exercises-popup .popup-content .popup-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.completed-exercises-popup .popup-content .popup-header h2{color:#4f46e5;margin:0}.completed-exercises-popup .popup-content .popup-header .close-button{background:none;border:none;color:#6b7280;cursor:pointer;font-size:24px;padding:5px 10px}.completed-exercises-popup .popup-content .popup-header .close-button:hover{color:#4f46e5}.completed-exercises-popup .popup-content .completed-sheets-container .sheet-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.completed-exercises-popup .popup-content .completed-sheets-container .no-completed-message{color:#6b7280;font-size:18px;padding:40px;text-align:center}.no-sheets-container{align-items:center;background-attachment:fixed;background-color:#5542b2;background-position:50%;background-size:cover;display:flex;height:100vh;justify-content:center}.no-sheets-container .no-sheets-content{align-items:center;animation:fadeIn .3s ease-out;background-color:#fff;border:1px solid #f3f4f6;border-radius:12px;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;gap:1.5rem;margin:20px 0;max-width:500px;padding:2.5rem;text-align:center;width:90%}.no-sheets-container .no-sheets-content .no-sheets-illustration{display:block;filter:drop-shadow(0 0 5px rgba(0,0,0,.1));margin:1rem auto;max-width:300px;width:80%}.no-sheets-container .no-sheets-content .no-sheets-title{color:#4f46e5;font-size:1.75rem;font-weight:700;margin:0}.no-sheets-container .no-sheets-content .no-sheets-message{color:#4b5563;font-size:1.1rem;line-height:1.6;margin:0}.no-sheets-container .no-sheets-content .no-sheets-summary{align-items:center;display:flex;flex-direction:column;gap:1rem}.no-sheets-container .no-sheets-content .medal-icon{color:#f4b400;margin-left:.5rem}.no-sheets-container .no-sheets-content .train-more-button{background-color:#4f46e5;border:none;border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .2s ease}.no-sheets-container .no-sheets-content .train-more-button:hover{background-color:#4338ca;box-shadow:0 6px 8px #00000026;transform:translateY(-2px)}.no-sheets-container .no-sheets-content .train-more-button:active{box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.pupil-exercise-selection{background-attachment:fixed;background-position:50%;display:flex;justify-content:center;min-height:100vh}.pupil-exercise-selection .content-container{align-items:center;display:flex;justify-content:center;min-height:100%}.pupil-exercise-selection .sheet-grid{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;padding:2rem}.pupil-exercise-selection .sheet-grid .sheet-card{width:300px}.ExerciseCard_container__HEmm1{background:#0000;bottom:0;display:flex;flex-direction:column;left:0;position:fixed;right:0;top:0;z-index:1}.ExerciseCard_canvasWrapper__Lla4R{height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}.ExerciseCard_taskHeader__Xv6EZ{display:flex;justify-content:center;padding-top:50px;position:relative;width:100%;z-index:2}.ExerciseCard_taskContent__UUthV{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 20px #0000001f;display:flex;gap:16px;margin:0 auto;max-width:90%;padding:16px 24px}.ExerciseCard_taskExpression__1U4My{display:flex;flex-direction:column;font-size:1.2rem;gap:.5rem}@keyframes ExerciseCard_slideIn__z33VG{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ExerciseCard_taskContent__UUthV{animation:ExerciseCard_slideIn__z33VG .3s ease-out forwards}@media(max-width:768px){.ExerciseCard_taskHeader__Xv6EZ{padding-top:60px}.ExerciseCard_taskContent__UUthV{max-width:95%;padding:14px 20px}.ExerciseCard_taskExpression__1U4My .ExerciseCard_katex__tfG2k{font-size:1.4rem!important}}.ExerciseCard_taskControls__G79VI{align-items:center;display:flex;gap:8px;margin-left:8px}.ExerciseCard_hintButton__LqT5i{align-items:center;background:#fff;border:2px solid #e0e7ff;border-radius:12px;box-shadow:0 2px 8px #4f46e526;color:#4f46e5;cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;right:24px;top:90px;transition:all .2s ease;width:44px;z-index:100}.ExerciseCard_hintButton__LqT5i:hover{background:#4f46e5;border-color:#4f46e5;box-shadow:0 4px 12px #4f46e540;color:#fff;transform:scale(1.05)}.ExerciseCard_hintButton__LqT5i.ExerciseCard_requested__OhpG7{animation:ExerciseCard_pulse__7QDow 1.2s infinite;background:#4f46e5;border-color:#4f46e5;color:#fff}.ExerciseCard_hintButton__LqT5i.ExerciseCard_used__X5hkr{background:#e0e7ff;border-color:#c7d2fe;color:#4f46e5}.ExerciseCard_hintButton__LqT5i svg{font-size:1.2rem}@keyframes ExerciseCard_pulse__7QDow{0%{box-shadow:0 0 0 0 #4f46e566;transform:scale(1)}50%{box-shadow:0 0 0 6px #4f46e500;transform:scale(1.05)}to{box-shadow:0 0 0 0 #4f46e500;transform:scale(1)}}.ExerciseCard_hintIndicator__vGUyz{background:#4f46e5;border-radius:50%;box-shadow:0 0 0 2px #fff;height:8px;position:absolute;right:6px;top:6px;width:8px}.ExerciseCard_hintPopup__l4KQp{animation:ExerciseCard_fadeIn__dssD5 .15s ease-out;background:#fff;border:1px solid #f1f5f9;border-radius:8px;box-shadow:0 2px 12px #00000014;position:absolute;right:24px;top:140px;width:min(300px,90vw);z-index:99}.ExerciseCard_hintHeader__UV4fe{align-items:center;border-bottom:1px solid #f1f5f9;color:#334155;display:flex;font-size:.9rem;font-weight:500;justify-content:space-between;padding:12px 16px}.ExerciseCard_hintHeader__UV4fe .ExerciseCard_hintTitle__gc6WY{align-items:center;color:#1e293b;display:flex;font-weight:600;gap:8px}.ExerciseCard_hintHeader__UV4fe .ExerciseCard_hintTitle__gc6WY svg{color:#f59e0b}.ExerciseCard_hintHeader__UV4fe .ExerciseCard_closeHint__ShHpf{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:1rem;padding:4px}.ExerciseCard_hintHeader__UV4fe .ExerciseCard_closeHint__ShHpf:hover{background:#f1f5f9}.ExerciseCard_hintContent__fss8S{color:#475569;font-size:.95rem;line-height:1.5;padding:16px}@keyframes ExerciseCard_fadeIn__dssD5{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.ExerciseCard_resultIndicator__qc-Qy{align-items:center;border-radius:50%;display:flex;font-size:.8rem;height:24px;justify-content:center;width:24px}.ExerciseCard_resultIndicator__qc-Qy.ExerciseCard_correct__aAdf3{background:#10b9811a;color:#10b981}.ExerciseCard_resultIndicator__qc-Qy.ExerciseCard_wrong__nuqzc{background:#ef44441a;color:#ef4444}.ExerciseCard_xpPopup__TdjZ9{animation:ExerciseCard_fadeIn__dssD5 .3s ease-out forwards;background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000001a;left:50%;padding:8px 16px;position:absolute;top:120px;transform:translateX(-50%);z-index:100}.ExerciseCard_xpContent__C9uur{align-items:center;color:#1e293b;display:flex;font-weight:500;gap:8px}.ExerciseCard_xpContent__C9uur .ExerciseCard_starIcon__PXM2t{color:#fbbf24}.ExerciseCard_xpContent__C9uur .ExerciseCard_baseXp__U2oi6{color:#4f46e5}.ExerciseCard_xpContent__C9uur .ExerciseCard_bonusXp__Z17po{color:#10b981;font-size:.8rem}.ExerciseCard_xpContent__C9uur .ExerciseCard_streakBonus__JsrnT{color:#f59e0b}.ExerciseCard_closeExerciseButton__HczO-{align-items:center;background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:40px;justify-content:center;padding:8px;position:absolute;right:24px;top:24px;transition:all .2s ease;width:40px;z-index:100}.ExerciseCard_closeExerciseButton__HczO-:hover{background:#f1f5f9;color:#334155;transform:rotate(90deg)}.ExerciseCard_closeExerciseButton__HczO- svg{font-size:1.25rem}@media(max-width:768px){.ExerciseCard_taskHeader__Xv6EZ{padding-top:60px}.ExerciseCard_taskContent__UUthV{padding:10px 12px}.ExerciseCard_taskExpression__1U4My .ExerciseCard_katex__tfG2k{font-size:1.3rem!important}.ExerciseCard_hintButton__LqT5i{height:42px;right:16px;top:70px;width:42px}.ExerciseCard_hintPopup__l4KQp{max-width:calc(100vw - 32px);right:16px;top:120px}.ExerciseCard_closeExerciseButton__HczO-{height:40px;left:16px;top:16px;width:40px}}.sketch-container{overflow:hidden;position:fixed}.checkered-paper,.sketch-container{height:100%;left:0;top:0;width:100%}.checkered-paper{position:absolute}.checkered-paper .react-sketch-canvas{height:100%!important;left:0;position:absolute;top:0;width:100%!important}.checkered-paper .excalidraw .App-bottom-bar,.checkered-paper .excalidraw .App-contextMenu,.checkered-paper .excalidraw .App-dialog,.checkered-paper .excalidraw .App-dropdown,.checkered-paper .excalidraw .App-footer,.checkered-paper .excalidraw .App-help,.checkered-paper .excalidraw .App-library,.checkered-paper .excalidraw .App-menu,.checkered-paper .excalidraw .App-menu-container,.checkered-paper .excalidraw .App-mobile-menu,.checkered-paper .excalidraw .App-modal,.checkered-paper .excalidraw .App-popover,.checkered-paper .excalidraw .App-right-sidebar,.checkered-paper .excalidraw .App-sidebar,.checkered-paper .excalidraw .App-statusbar,.checkered-paper .excalidraw .App-statusbar-actions,.checkered-paper .excalidraw .App-statusbar-clear,.checkered-paper .excalidraw .App-statusbar-collaborators,.checkered-paper .excalidraw .App-statusbar-container,.checkered-paper .excalidraw .App-statusbar-content,.checkered-paper .excalidraw .App-statusbar-contextMenu,.checkered-paper .excalidraw .App-statusbar-dialog,.checkered-paper .excalidraw .App-statusbar-dropdown,.checkered-paper .excalidraw .App-statusbar-export,.checkered-paper .excalidraw .App-statusbar-help,.checkered-paper .excalidraw .App-statusbar-library,.checkered-paper .excalidraw .App-statusbar-load,.checkered-paper .excalidraw .App-statusbar-menu,.checkered-paper .excalidraw .App-statusbar-modal,.checkered-paper .excalidraw .App-statusbar-popover,.checkered-paper .excalidraw .App-statusbar-save,.checkered-paper .excalidraw .App-statusbar-share,.checkered-paper .excalidraw .App-statusbar-sidebar,.checkered-paper .excalidraw .App-statusbar-theme,.checkered-paper .excalidraw .App-statusbar-toast,.checkered-paper .excalidraw .App-statusbar-toolbar,.checkered-paper .excalidraw .App-statusbar-tooltip,.checkered-paper .excalidraw .App-statusbar-viewMode,.checkered-paper .excalidraw .App-statusbar-zoom,.checkered-paper .excalidraw .App-toast,.checkered-paper .excalidraw .App-toolbar,.checkered-paper .excalidraw .App-toolbar-container,.checkered-paper .excalidraw .App-toolbar-content,.checkered-paper .excalidraw .App-tooltip,.checkered-paper .excalidraw .App-top-bar,.checkered-paper .excalidraw .App-welcome-screen,.checkered-paper .excalidraw .App-zoom{display:none!important}.checkered-paper .excalidraw .scroll-back-to-content{bottom:100px!important}.toolbar{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;border:1px solid #0000000d;border-radius:12px;bottom:24px;box-shadow:0 4px 12px #0000001a;display:flex;gap:8px;padding:8px 12px;position:fixed;z-index:100}.toolbar.right .toolbar-content{align-items:center;display:flex;gap:8px}.toolbar.right .toolbar-content .pen-status{margin-right:4px;padding-right:12px;position:relative}.toolbar.right .toolbar-content .pen-status:after{background:#00000014;content:"";height:60%;position:absolute;right:0;top:20%;width:1px}.toolbar.right .toolbar-content .pen-status button{color:#6b7280;padding:0 8px;width:auto}.toolbar.right .toolbar-content .pen-status button:hover{background:#0000;color:#4f46e5}.toolbar.right .toolbar-content .pen-status button.active{background:#0000;color:#4f46e5;position:relative}.toolbar.right .toolbar-content .pen-status button.active:before{background:#4f46e5;border-radius:2px;bottom:-4px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:16px}.toolbar.right .toolbar-content .tools-group{display:flex;gap:8px}.toolbar button{align-items:center;background:#0000;border:none;border-radius:8px;color:#495057;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.toolbar button:hover{background:#e9ecef;color:#4f46e5}.toolbar button.active{background:#e0e7ff;color:#4f46e5}.toolbar button svg{height:18px;width:18px}.toolbar.left{left:24px}.toolbar.right{right:24px}@media(max-width:768px){.toolbar{bottom:16px;gap:6px;padding:6px 10px}.toolbar button{height:36px;width:36px}.toolbar button svg{height:16px;width:16px}.toolbar.left{left:16px}.toolbar.right{right:16px}}.error-display-container{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;min-height:100vh;position:fixed;right:0;top:0;z-index:1000}.error-display-container .error-display-content{align-items:center;animation:fadeIn .3s ease-out;background-color:#fff;border:1px solid #f3f4f6;border-radius:12px;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;gap:1.5rem;max-width:500px;padding:2.5rem;text-align:center;width:90%}.error-display-container .error-display-content .error-icon{color:#ef4444;font-size:3.5rem;margin-bottom:.5rem}.error-display-container .error-display-content .error-illustration{display:block;filter:drop-shadow(0 0 5px rgba(0,0,0,.1));margin:1rem auto;max-width:300px;width:80%}.error-display-container .error-display-content .error-title{color:#ef4444;font-size:1.75rem;font-weight:700;margin:0}.error-display-container .error-display-content .error-message{color:#4b5563;font-size:1.1rem;line-height:1.6;margin:0}.error-display-container .error-display-content .error-retry-button{background-color:#4f46e5;border:none;border-radius:6px;box-shadow:0 2px 4px #4f46e54d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 2rem;transition:all .2s}.error-display-container .error-display-content .error-retry-button:hover{background-color:#4338ca;box-shadow:0 4px 6px #4f46e566;transform:translateY(-1px)}.error-display-container .error-display-content .error-retry-button:active{transform:translateY(0)}#feedback-container{color:#4a4a4a;font-family:BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1em;font-weight:400;height:100%;left:0;line-height:1.5;position:absolute;top:0;width:100%}#feedback-container #feedback-symbol{animation:pulse .3s;animation-delay:.5s;cursor:pointer;position:absolute;scale:1;transition:scale .5s ease-in-out}#feedback-container #feedback-symbol:hover{animation:none;scale:1.1;transition:scale .2s ease-in-out}#feedback-container #feedback-symbol:active{animation:none;scale:1.15;transition:scale .2s ease-in-out}#feedback-container .particle{background-color:#2ea0af;border-radius:50%;height:5px;position:absolute;transform-origin:center;width:5px;z-index:4}#feedback-container #formula-display{background:#35415f;bottom:0;color:#fff;left:0;position:fixed;top:0;width:9rem}#feedback-container #formula-display p{align-items:center;display:flex;font-size:1rem;padding:5px;position:fixed}#feedback-container #speech-box{background-color:#fff;border:2px solid #35415f;border-radius:4px;margin:-31.5px 5px 5px 40px;max-width:300px;min-width:150px;padding:10px 10px 1.5em;position:relative}#feedback-container #speech-box.below{margin-left:-60px;margin-top:40px;max-width:200px}#feedback-container #speech-box.below #speech-box-triangle{border-color:#0000 #0000 #35415f;left:auto;top:-20px}#feedback-container #speech-box #help-text{margin:0}#feedback-container #speech-box #speech-box-triangle{border:10px solid #0000;border-right-color:#35415f;content:"";left:-20px;position:absolute;top:20px}#feedback-container #speech-box ol{padding-left:1.5em}#feedback-container #speech-box ol li{margin-bottom:.5em}#feedback-container .hint-button{background:#fff2a9;border:2px solid #35415f;border-radius:3px;bottom:-1.5em;cursor:pointer;height:3em;padding:11px 12px;position:absolute;right:10%;width:3em}#feedback-container .hint-button img{filter:opacity(.6);max-height:100%}#feedback-container .hint-button img:hover{filter:opacity(.8);transition:.3s}#feedback-container .hint-button img:active{filter:opacity(1);transition:.3s}#feedback-container .hint-button#previous{margin-right:3.5em}#feedback-container .hint-button#previous img{transform:rotate(180deg)}#feedback-container .recognition-line{align-items:center;background:#ffffffe6;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;margin-top:-.7em;padding:12px 16px;position:absolute;transform:translate(-50%,-100%)}.completion-overlay{align-items:center;background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:1000}.completion-overlay .particles-container{height:100%;position:absolute;width:100%;z-index:1}.completion-overlay .completion-content{animation:fadeIn .3s ease-out;max-width:500px;perspective:1000px;position:relative;width:90%;z-index:2}.completion-overlay .completion-card{animation:float 6s ease-in-out infinite;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff;border:1px solid #4f46e51a;border-radius:16px;box-shadow:0 10px 30px #0000001a;overflow:hidden;padding:2.5rem;position:relative;text-align:center;transform-style:preserve-3d}.completion-overlay .completion-card h2{color:#4f46e5;font-size:2.2rem;font-weight:700;margin:0 0 1.5rem}.completion-overlay .completion-card:before{background:linear-gradient(90deg,#4f46e5,#10b981,#f59e0b);content:"";height:4px;left:0;position:absolute;right:0;top:0}.completion-overlay .xp-display{align-items:center;display:flex;flex-direction:column;margin:1.5rem 0}.completion-overlay .xp-display .xp-label{color:#64748b;font-size:1.1rem;margin-bottom:.5rem}.completion-overlay .xp-display .xp-value{background:#4f46e51a;border-radius:50px;color:#4f46e5;display:inline-block;font-size:2.5rem;font-weight:700;padding:.5rem 2rem}.completion-overlay .combo-display{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:50px;box-shadow:0 4px 6px #fbbf241a;color:#92400e;display:inline-flex;font-weight:600;margin-top:1rem;padding:.5rem 1.5rem}.completion-overlay .combo-display .combo-icon{color:#d97706;margin-right:.5rem}.completion-overlay .combo-display .combo-text{font-size:1.1rem}.completion-overlay .achievements-container{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1.5rem}.completion-overlay .achievement-badge{align-items:center;animation:fadeIn .5s ease-out;border-radius:50px;box-shadow:0 2px 4px #0000001a;color:#fff;display:inline-flex;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.completion-overlay .achievement-badge svg{margin-right:.5rem}.completion-overlay .progress-messages{display:flex;flex-direction:column;gap:.5rem;margin:1.5rem 0;text-align:center}.completion-overlay .progress-messages .progress-message{align-items:center;display:inline-flex;font-size:1rem;justify-content:center;padding:.3rem 0}.completion-overlay .progress-messages .progress-message .message-icon{font-size:.9rem;margin-right:.5rem}.completion-overlay .progress-messages .progress-message.wrong{color:#ef4444}.completion-overlay .progress-messages .progress-message.error{color:#b91c1c;font-weight:600}.completion-overlay .continue-button{background:#4f46e5;border:none;border-radius:8px;box-shadow:0 4px 6px #4f46e533;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:2rem;padding:12px 24px;transition:all .2s ease}.completion-overlay .continue-button:hover{background:#4338ca;box-shadow:0 6px 8px #4f46e54d;transform:translateY(-2px)}.completion-overlay .continue-button:active{transform:translateY(0)}@keyframes float{0%,to{transform:translateY(0) rotateY(0deg)}50%{transform:translateY(-15px) rotateY(5deg)}}.skip-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.skip-modal{background:#fff;border-radius:20px;box-shadow:0 10px 30px #00000026;max-width:500px;padding:1.5rem;position:relative;text-align:center;width:90%}.reason-options{display:flex;gap:1rem;overflow-x:auto;padding:1rem 0;scrollbar-width:none}.reason-options::-webkit-scrollbar{display:none}.reason-option{align-items:center;background:#0000;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;flex-shrink:1;min-width:140px;padding:1.5rem 1rem;transition:all .2s ease}.reason-option:hover{border-color:#4f46e5}.reason-option.selected{background:#e0e7ff;border-color:#4f46e5}.reason-option.disabled{cursor:not-allowed;opacity:.5}.reason-icon{margin-bottom:1rem;width:100px}.reason-text{font-size:1rem;font-weight:500;white-space:nowrap}.close-button{align-items:center;color:#64748b;display:flex;font-size:1.25rem;height:32px;justify-content:center;padding:.25rem;right:1rem;top:1rem;width:32px}.close-button:hover{background:#f1f5f9}@media(max-width:480px){.reason-option{min-width:120px;padding:1.25rem .75rem}.reason-icon{height:56px;width:56px}}.fraction-exercise{bottom:0;display:flex;flex-direction:column;font-family:Segoe UI,system-ui,sans-serif;left:0;overflow-y:auto;position:fixed;right:0;top:0;width:100%}.exercise-center-container{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;margin:0 auto;max-width:800px;padding:20px;width:100%}.navigation-controls{align-items:center;bottom:30px;display:flex;gap:16px;left:50%;padding:0 20px;pointer-events:none;position:fixed;transform:translateX(-50%);width:auto;z-index:100}.navigation-controls .nav-button{align-items:center;background:#f1f5f9b3;border:none;border-radius:50%;box-shadow:0 1px 3px #0000001a;color:#64748b;cursor:pointer;display:flex;height:40px;justify-content:center;opacity:.8;pointer-events:auto;transition:all .2s ease;width:40px}.navigation-controls .nav-button:hover:not(:disabled){background:#e0e7ffb3;box-shadow:0 2px 4px #0000001a;opacity:1;transform:translateY(-1px)}.navigation-controls .nav-button:disabled{cursor:not-allowed;opacity:.3}.navigation-controls .nav-button svg{font-size:1rem}.navigation-controls .skip-button{align-items:center;background:#f1f5f9;border:none;border-radius:50%;box-shadow:0 2px 6px #0000001a;color:#4f46e5;cursor:pointer;display:flex;height:48px;justify-content:center;pointer-events:auto;transition:all .2s ease;width:48px}.navigation-controls .skip-button:hover:not(:disabled){background:#e0e7ff;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.navigation-controls .skip-button:disabled{cursor:not-allowed;opacity:.4}.navigation-controls .skip-button svg{font-size:1.2rem}.navigation-controls .check-button{align-items:center;background:#4f46e5;border:none;border-radius:24px;box-shadow:0 2px 6px #4f46e54d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;height:48px;padding:0 24px;pointer-events:auto;position:relative;transition:all .2s ease}.navigation-controls .check-button .streak-fire{animation:pulse .5s infinite alternate;color:#f59e0b;margin-right:8px}.navigation-controls .check-button:hover{background:#4338ca;box-shadow:0 4px 12px #4f46e566;transform:translateY(-2px)}.navigation-controls .check-button svg{font-size:1rem}.navigation-controls .check-button .hint-speech-bubble{background:#fff;border-radius:12px;bottom:100%;box-shadow:0 4px 12px #00000026;color:#334155;font-size:1rem;font-weight:400;left:50%;line-height:1.4;margin-bottom:12px;max-width:80vw;padding:16px 36px 16px 20px;position:absolute;text-align:center;transform:translateX(-50%);width:max-content;z-index:101}.navigation-controls .check-button .hint-speech-bubble .hint-headline{font-weight:600;margin-bottom:8px}.navigation-controls .check-button .hint-speech-bubble .close-hint{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;font-size:.7rem;height:20px;justify-content:center;padding:0;position:absolute;right:8px;top:8px;transition:all .2s ease;width:20px}.navigation-controls .check-button .hint-speech-bubble .close-hint:hover{background:#e2e8f0;color:#475569}.navigation-controls .check-button .hint-speech-bubble .close-hint svg{display:block}.navigation-controls .check-button .hint-speech-bubble:after{border:8px solid #0000;border-top-color:#fff;content:"";left:50%;margin-left:-8px;position:absolute;top:100%}@media(max-width:768px){.exercise-center-container{padding:20px 12px}.navigation-controls{bottom:20px;gap:12px;justify-content:center;width:calc(100% - 24px)}.navigation-controls .nav-button{height:44px;width:44px}.navigation-controls .check-button{height:44px;padding:0 20px}}.dev-task-visualizer{background:#000000d9;border-radius:6px;bottom:50px;box-shadow:0 2px 8px #0000004d;color:#fff;font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;left:10px;max-height:60vh;overflow-y:auto;padding:8px;position:fixed;width:220px;z-index:2000}.dev-task-item{align-items:center;border-left:3px solid #0000;border-radius:3px;cursor:default;display:flex;margin-bottom:4px;overflow:hidden;padding:6px 8px;position:relative;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.dev-task-item:hover{background:#ffffff1a}.dev-task-item .task-index{margin-right:4px}.dev-task-item .active-indicator{animation:pulse 1.5s infinite;color:#3b82f6;font-size:16px;margin-left:auto}.dev-task-item.active{background:#3b82f626;border-left-color:#3b82f6;font-weight:500}.dev-task-item.correct{border-left-color:#10b981}.dev-task-item.wrong{border-left-color:#ef4444}.dev-task-item.pending{border-left-color:#6b7280}.dev-task-tooltip{background:#000000f2!important;border:1px solid #333!important;border-radius:6px!important;box-shadow:0 4px 20px #0000004d!important;max-height:500px!important;max-width:400px!important;overflow-y:auto!important;padding:12px!important;z-index:3000!important}.dev-task-tooltip .tooltip-content{color:#fff;font-family:monospace;font-size:12px;line-height:1.4;margin:0;padding:0;white-space:pre-wrap}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.retry-prompt{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:.5rem;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.75rem 1rem}.retry-prompt button{background:none;border:none;color:#ef4444;cursor:pointer;font-weight:600}.snap-landing-page{padding-top:60px}.snap-landing-page header,.snap-landing-page section{height:100vh}.snap-landing-page .hero-section{background-color:#5542b2;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:0 3rem;position:relative}@media(min-width:768px){.snap-landing-page .hero-section{align-items:center;flex-direction:row;padding:0 6rem}}.snap-landing-page .hero-section .white-background{background-color:#fff;bottom:0;height:15%;left:0;position:absolute;width:100%}.snap-landing-page .hero-section .scroll-indicator{animation:bounce 2s infinite;bottom:1.5rem;color:#5542b2;font-size:1.5rem;left:50%;position:absolute;transform:translateX(-50%);z-index:20}.snap-landing-page .hero-section .hero-content{display:flex;flex-direction:column;gap:1.5rem;justify-content:center;text-align:center;width:100%;z-index:10}@media(min-width:768px){.snap-landing-page .hero-section .hero-content{padding-right:3rem;text-align:left;width:50%}}.snap-landing-page .hero-section .hero-content .logo-title{align-items:center;display:flex;flex-direction:column;gap:1rem}@media(min-width:768px){.snap-landing-page .hero-section .hero-content .logo-title{align-items:center;flex-direction:row}}.snap-landing-page .hero-section .hero-content .logo-title img{width:7rem}.snap-landing-page .hero-section .hero-content .logo-title h1{color:#fff;font-size:2.25rem;font-weight:600;letter-spacing:-.025em;line-height:1.2;margin:0}@media(min-width:768px){.snap-landing-page .hero-section .hero-content .logo-title h1{font-size:3rem}}.snap-landing-page .hero-section .hero-content .hero-text{color:#fff;font-size:1.25rem;line-height:1.5;margin:0}.snap-landing-page .hero-section .hero-content .hero-text .highlight{display:block;font-weight:500}@media(min-width:768px){.snap-landing-page .hero-section .hero-content .hero-text{font-size:1.5rem}}.snap-landing-page .hero-section .hero-content .cta-button{background-color:#fff;border:none;border-radius:.75rem;color:#5542b2;cursor:pointer;font-size:1rem;font-weight:700;margin:0 auto;padding:.75rem 1.5rem;transition:background-color .2s ease;width:fit-content}@media(min-width:768px){.snap-landing-page .hero-section .hero-content .cta-button{margin:0}}.snap-landing-page .hero-section .hero-content .cta-button:hover{background-color:#f3f3f3}.snap-landing-page .hero-section .hero-image{display:none}@media(min-width:768px){.snap-landing-page .hero-section .hero-image{align-items:center;display:flex;justify-content:center;width:50%;z-index:10}.snap-landing-page .hero-section .hero-image img{filter:drop-shadow(0 20px 13px rgba(0,0,0,.25));height:auto;max-width:500px;object-fit:contain;width:100%}}.snap-landing-page .features-section{background-color:#fff;display:flex;flex-direction:column;justify-content:center;padding:1rem}.snap-landing-page .features-section h2{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.snap-landing-page .features-section .features-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr;margin:0 auto;max-width:72rem;width:100%}.snap-landing-page .features-section .feature-card{align-items:flex-start;background-color:#fafafa;border-radius:.75rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;padding:1rem;text-align:left}.snap-landing-page .features-section .feature-card .feature-icon{color:#5542b2;flex-shrink:0;font-size:1.5rem;margin-top:.15rem}.snap-landing-page .features-section .feature-card .feature-content h3{color:#2a2252;font-size:1rem;font-weight:600;margin-bottom:.25rem}.snap-landing-page .features-section .feature-card .feature-content p{color:#6b6b8a;font-size:.85rem;line-height:1.4;margin:0}@media(min-width:768px){.snap-landing-page .features-section{padding:1.5rem 4rem}.snap-landing-page .features-section h2{font-size:1.875rem;margin-bottom:2.5rem}.snap-landing-page .features-section .features-grid{gap:2rem;grid-template-columns:repeat(3,1fr)}.snap-landing-page .features-section .feature-card{align-items:center;flex-direction:column;gap:.75rem;padding:1.5rem;text-align:center}.snap-landing-page .features-section .feature-card .feature-icon{font-size:1.875rem;margin-bottom:1rem;margin-top:0}.snap-landing-page .features-section .feature-card .feature-content h3{font-size:1.125rem;margin-bottom:.5rem}.snap-landing-page .features-section .feature-card .feature-content p{font-size:.875rem}}.snap-landing-page .target-audience-section{background-color:#f0f0ff;display:flex;flex-direction:column;justify-content:center;padding:1rem}.snap-landing-page .target-audience-section h2{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.snap-landing-page .target-audience-section .audience-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr;margin:0 auto;max-width:80rem;width:100%}.snap-landing-page .target-audience-section .audience-card{align-items:center;background-color:#fff;border-radius:.75rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;padding:1rem;text-align:left}.snap-landing-page .target-audience-section .audience-card img{flex-shrink:0;height:4rem;width:4rem}.snap-landing-page .target-audience-section .audience-card .audience-content h3{color:#2a2252;font-size:1rem;font-weight:600;margin-bottom:.25rem}.snap-landing-page .target-audience-section .audience-card .audience-content p{color:#6b6b8a;font-size:.85rem;line-height:1.4;margin:0}@media(min-width:768px){.snap-landing-page .target-audience-section{padding:1.5rem 5rem}.snap-landing-page .target-audience-section h2{font-size:1.875rem;margin-bottom:2.5rem}.snap-landing-page .target-audience-section .audience-grid{gap:2.5rem;grid-template-columns:repeat(2,1fr)}.snap-landing-page .target-audience-section .audience-card{align-items:center;flex-direction:column;gap:1rem;padding:1.5rem;text-align:center}.snap-landing-page .target-audience-section .audience-card img{height:8rem;margin-bottom:1rem;width:8rem}.snap-landing-page .target-audience-section .audience-card .audience-content h3{font-size:1.125rem;margin-bottom:.5rem}.snap-landing-page .target-audience-section .audience-card .audience-content p{font-size:.875rem}}.snap-landing-page .demo-section{background:linear-gradient(180deg,#fff,#f4f4ff);display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:.5rem 1rem;position:relative;text-align:center}.snap-landing-page .demo-section .purple-blob{background-color:#e9d5ff;border-radius:50%;filter:blur(3rem);height:18.75rem;left:50%;opacity:.4;position:absolute;top:0;transform:translateX(-50%);width:18.75rem;z-index:0}.snap-landing-page .demo-section .demo-content{z-index:10}.snap-landing-page .demo-section .demo-content h2{color:#5542b2;font-size:1.5rem;font-weight:800;margin-bottom:.75rem}.snap-landing-page .demo-section .demo-content p{color:#4b5563;font-size:.9rem;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;max-width:56rem;padding:0 .5rem}.snap-landing-page .demo-section .demo-content .video-container{aspect-ratio:16/9;border:1px solid #5542b21a;border-radius:.5rem;box-shadow:0 10px 25px -5px #0000001a;margin:0 auto;max-width:72rem;overflow:hidden;width:100%}.snap-landing-page .demo-section .demo-content .video-container iframe{border:none;height:100%;width:100%}@media(min-width:768px){.snap-landing-page .demo-section{padding:1.5rem 4rem}.snap-landing-page .demo-section .demo-content h2{font-size:2.25rem;margin-bottom:1rem}.snap-landing-page .demo-section .demo-content p{font-size:1rem;margin-bottom:2.5rem}.snap-landing-page .demo-section .demo-content .video-container{border:2px solid #5542b21a;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040}}.snap-landing-page .contact-section{align-items:center;background-color:#5542b2;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:1.5rem;position:relative;text-align:center}.snap-landing-page .contact-section h2{font-size:1.875rem;font-weight:700;margin-bottom:1rem}.snap-landing-page .contact-section p{margin-bottom:1.5rem}.snap-landing-page .contact-section .contact-button{background-color:#fff;border:none;border-radius:.75rem;color:#5542b2;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease}.snap-landing-page .contact-section .contact-button:hover{background-color:#f3f3f3}.snap-landing-page .global-footer{bottom:0;left:0;position:absolute;right:0;z-index:11}.contact-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.contact-modal{animation:slideUp .4s cubic-bezier(.22,1,.36,1);background:#fff;border-radius:16px;box-shadow:0 10px 30px #00000026;display:flex;flex-direction:row;font-family:Inter,sans-serif;gap:2.5rem;max-height:90vh;max-width:900px;overflow-y:auto;padding:2.5rem;position:relative;width:90%}@media(max-width:768px){.contact-modal{gap:1.5rem;padding:1.5rem}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.contact-modal-content{display:flex;flex-direction:row;gap:2.5rem;width:100%}@media(max-width:768px){.contact-modal-content{flex-direction:column;gap:1.5rem}}.left-side{flex:1.5 1;padding-right:1rem}.left-side .form-title{color:#222;font-size:1.8rem;font-weight:700;line-height:1.3;margin-bottom:1.5rem}.left-side form{display:flex;flex-direction:column;gap:1.25rem}.left-side form .input-label{color:#444;display:flex;flex-direction:column;font-size:.95rem;font-weight:500;gap:.4rem}.left-side form .form-input,.left-side form .form-textarea{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:10px;font-size:1rem;padding:.85rem 1.25rem;transition:all .3s ease}.left-side form .form-input:focus,.left-side form .form-textarea:focus{background:#fff;border-color:#7c4dff;box-shadow:0 0 0 3px #7c4dff1a;outline:none}.left-side form .form-textarea{line-height:1.5;min-height:140px;resize:vertical}.left-side form .submit-button{background-color:#7c4dff;border:none;border-radius:10px;box-shadow:0 2px 10px #7c4dff4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:1rem;transition:all .3s}.left-side form .submit-button:hover{background-color:#6a40e0;box-shadow:0 4px 15px #7c4dff66;transform:translateY(-2px)}.left-side form .submit-button:active{transform:translateY(0)}.right-side{align-items:center;border-left:1px solid #eee;display:flex;flex:1 1;flex-direction:column;padding-left:1rem}@media(max-width:768px){.right-side{border-left:none;border-top:1px solid #eee;padding-left:0;padding-top:1.5rem}}.right-side .profile-image-container{display:flex;justify-content:center;margin-bottom:1.5rem}.right-side .profile-image{border:4px solid #fff;border-radius:50%;box-shadow:0 8px 20px #0000001f;height:180px;object-fit:cover;width:180px}.right-side .contact-title{color:#222;font-size:1.4rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.right-side .contact-info{display:flex;flex-direction:column;gap:1rem;width:100%}.right-side .contact-info p{align-items:flex-start;color:#444;display:flex;font-size:.95rem;gap:.75rem;line-height:1.5;margin:0}.right-side .contact-info .contact-icon{color:#7c4dff;flex-shrink:0;font-size:1.1rem;margin-top:.15rem}.right-side .contact-info .linkedin-link{border-top:1px solid #eee;margin-top:1rem;padding-top:1rem}.right-side .contact-info a{color:#7c4dff;text-decoration:none;transition:all .2s}.right-side .contact-info a:hover{color:#6a40e0;text-decoration:underline}.global-footer{align-items:center;background-color:#f8f8f8;border-top:1px solid #e0e0e0;color:#555;display:flex;font-family:Inter,sans-serif;font-size:.9rem;justify-content:space-between;padding:1.5rem 2rem}.global-footer .impressum-button{background:none;border:none;border-radius:4px;color:#7c4dff;cursor:pointer;font-size:.9rem;padding:.5rem;transition:all .2s ease}.global-footer .impressum-button:hover{background-color:#7c4dff1a;color:#6a40e0}.global-footer .impressum-button:active{transform:translateY(1px)}.modal-container{background-color:#00000080;height:100%;left:0;top:0;width:100%}.impressum-modal-overlay,.modal-container{align-items:center;display:flex;justify-content:center;position:fixed;z-index:10000}.impressum-modal-overlay{animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;inset:0}.impressum-modal{animation:slideUp .4s cubic-bezier(.22,1,.36,1);background:#fff;border-radius:16px;box-shadow:0 10px 30px #00000026;font-family:Inter,sans-serif;max-height:90vh;max-width:800px;overflow-y:auto;padding:2.5rem;position:relative;width:90%}@media(max-width:768px){.impressum-modal{padding:1.5rem}}.close-button{background:#0000;border:none;border-radius:50%;color:#666;cursor:pointer;font-size:1.5rem;padding:.5rem;position:absolute;right:1.5rem;top:1.5rem;transition:all .2s}.close-button:hover{background:#0000000d;color:#000}.modal-content{display:flex;flex-direction:column;gap:1.5rem}.impressum-title{color:#222;font-size:1.8rem;font-weight:700;margin-bottom:1rem;text-align:center}.impressum-section{margin-bottom:1.5rem}.impressum-section .section-title{border-bottom:1px solid #eee;color:#7c4dff;font-size:1.2rem;font-weight:600;margin-bottom:.75rem;padding-bottom:.25rem}.impressum-section p{color:#444;font-size:.95rem;line-height:1.6;margin:.5rem 0}.impressum-section a{color:#7c4dff;text-decoration:none;transition:all .2s}.impressum-section a:hover{color:#6a40e0;text-decoration:underline}.info-root{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:2rem;padding:5rem 1rem 2rem;text-align:center;width:100%}.info-root h1{font-size:2.5rem;margin-bottom:.5rem}.info-root .intro-text{color:#555;font-size:1.25rem;max-width:700px}.info-root .card-container{display:flex;flex-direction:column;gap:2rem;max-width:900px;width:100%}@media(min-width:768px){.info-root .card-container{flex-direction:row;justify-content:center}}.info-root .info-card{background:#f9f9f9;border-radius:1rem;box-shadow:0 4px 12px #0000000d;cursor:pointer;flex:1 1;padding:2rem;position:relative;text-align:left;transition:transform .2s ease,box-shadow .2s ease}.info-root .info-card:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-4px)}.info-root .info-card .card-logo{height:40px;margin-bottom:1rem;object-fit:contain;width:40px}.info-root .info-card h2{font-size:1.5rem;margin-bottom:.25rem}.info-root .info-card .tagline{color:#0070f3;font-size:.95rem;font-weight:700;margin-bottom:.75rem}.info-root .info-card p{color:#333;font-size:1rem;margin-bottom:1rem}.info-root .info-card button{background-color:#0070f3;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background .2s ease}.info-root .info-card button:hover{background-color:#005ac1}.info-root .info-card.snap{background:#eef3ff}@media(max-width:640px){.info-root{gap:1.5rem;padding:3rem 1rem}.info-root h1{font-size:1.75rem}.info-root .intro-text{color:#666;font-size:1rem;max-width:90%}.info-root .card-container{flex-direction:column;gap:1.5rem}.info-root .info-card{border-radius:.75rem;padding:1.5rem}.info-root .info-card .card-logo{height:32px;width:32px}.info-root .info-card h2{font-size:1.25rem}.info-root .info-card .tagline{font-size:.85rem;margin-bottom:.5rem}.info-root .info-card p{color:#444;font-size:.95rem;line-height:1.4}.info-root .info-card button{font-size:.95rem;padding:.5rem 1.25rem}}.mobile-only{display:none}.desktop-only{display:block}@media(max-width:640px){.mobile-only{display:block}.desktop-only{display:none}}.livinglines-page{box-sizing:border-box;height:100vh}.livinglines-page header,.livinglines-page section{height:100vh}.livinglines-page .hero-section{background-color:#5542b2;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:0 3rem;position:relative}@media(min-width:768px){.livinglines-page .hero-section{align-items:center;flex-direction:row}}.livinglines-page .hero-section .white-background{background-color:#fff;bottom:0;height:15%;left:0;position:absolute;width:100%}.livinglines-page .hero-section .hero-content{display:flex;flex-direction:column;gap:1.5rem;justify-content:center;text-align:center;width:100%;z-index:10}@media(min-width:768px){.livinglines-page .hero-section .hero-content{padding-right:3rem;text-align:left;width:50%}}.livinglines-page .hero-section .hero-content h1{color:#fff;font-size:2.25rem;font-weight:600;letter-spacing:-.025em;line-height:1.2;margin:0}@media(min-width:768px){.livinglines-page .hero-section .hero-content h1{font-size:3rem}}.livinglines-page .hero-section .hero-content .hero-text{color:#fff;font-size:1.25rem;line-height:1.5;margin:0}.livinglines-page .hero-section .hero-content .hero-text .highlight{display:block;font-weight:500}.livinglines-page .hero-section .hero-content .cta-button{background-color:#fff;border:none;border-radius:.75rem;color:#5542b2;cursor:pointer;font-size:1rem;font-weight:700;margin:0 auto;padding:.75rem 1.5rem;transition:background-color .2s ease;width:fit-content}@media(min-width:768px){.livinglines-page .hero-section .hero-content .cta-button{margin:0}}.livinglines-page .hero-section .hero-content .cta-button:hover{background-color:#f3f3f3}.livinglines-page .hero-section .hero-image{display:none}@media(min-width:768px){.livinglines-page .hero-section .hero-image{align-items:center;display:flex;justify-content:center;width:50%;z-index:10}.livinglines-page .hero-section .hero-image img{filter:drop-shadow(0 20px 13px rgba(0,0,0,.25));height:auto;max-width:500px;object-fit:contain;width:100%}}.livinglines-page .hero-section .scroll-indicator{animation:bounce 2s infinite;bottom:1.5rem;color:#5542b2;font-size:1.5rem;left:50%;position:absolute;z-index:20}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0) translateX(-50%)}40%{transform:translateY(-20px) translateX(-50%)}60%{transform:translateY(-10px) translateX(-50%)}}.livinglines-page .features-section{background-color:#fff;display:flex;flex-direction:column;justify-content:center;padding:1.5rem 1rem}.livinglines-page .features-section h2{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.livinglines-page .features-section .features-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr;margin:0 auto;max-width:72rem;padding:0 .5rem;width:100%}.livinglines-page .features-section .feature-card{align-items:flex-start;background-color:#fafafa;border-radius:.75rem;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;padding:1rem;text-align:left}.livinglines-page .features-section .feature-card .feature-icon{color:#5542b2;flex-shrink:0;font-size:1.5rem;margin-top:.15rem}.livinglines-page .features-section .feature-card .feature-content h3{color:#2a2252;font-size:1rem;font-weight:600;margin-bottom:.25rem}.livinglines-page .features-section .feature-card .feature-content p{color:#6b6b8a;font-size:.85rem;line-height:1.4;margin:0}@media(min-width:640px){.livinglines-page .features-section{padding:1.5rem 2rem}.livinglines-page .features-section h2{font-size:1.875rem;margin-bottom:2rem}.livinglines-page .features-section .features-grid{gap:1.5rem;grid-template-columns:repeat(3,1fr)}.livinglines-page .features-section .feature-card{align-items:center;flex-direction:column;gap:.75rem;padding:1.5rem 1rem;text-align:center}.livinglines-page .features-section .feature-card .feature-icon{font-size:2rem;margin-bottom:.5rem;margin-top:0}.livinglines-page .features-section .feature-card .feature-content h3{font-size:1.125rem;margin-bottom:.5rem}.livinglines-page .features-section .feature-card .feature-content p{font-size:.875rem}}.livinglines-page .demo-section{background:linear-gradient(180deg,#fff,#f4f4ff);display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:.5rem 1rem;position:relative;text-align:center}.livinglines-page .demo-section .purple-blob{background-color:#e9d5ff;border-radius:50%;filter:blur(3rem);height:18.75rem;left:50%;opacity:.4;position:absolute;top:0;transform:translateX(-50%);width:18.75rem;z-index:0}.livinglines-page .demo-section .demo-content{z-index:10}.livinglines-page .demo-section .demo-content h2{color:#5542b2;font-size:1.5rem;font-weight:800;margin-bottom:.75rem}.livinglines-page .demo-section .demo-content p{color:#4b5563;font-size:.9rem;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;max-width:56rem;padding:0 .5rem}.livinglines-page .demo-section .demo-content .video-container{aspect-ratio:16/9;border:1px solid #5542b21a;border-radius:.5rem;box-shadow:0 10px 25px -5px #0000001a;margin:0 auto;max-width:72rem;overflow:hidden;width:100%}.livinglines-page .demo-section .demo-content .video-container iframe{border:none;height:100%;width:100%}@media(min-width:768px){.livinglines-page .demo-section{padding:1.5rem 4rem}.livinglines-page .demo-section .demo-content h2{font-size:2.25rem;margin-bottom:1rem}.livinglines-page .demo-section .demo-content p{font-size:1rem;margin-bottom:2.5rem}.livinglines-page .demo-section .demo-content .video-container{border:2px solid #5542b21a;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040}}.livinglines-page .pricing-section{align-items:center;background:linear-gradient(135deg,#f9f9ff,#f0f0ff);display:flex;flex-direction:column;padding:3rem 1.25rem}.livinglines-page .pricing-section .section-header{margin-bottom:1.5rem;max-width:800px;text-align:center}.livinglines-page .pricing-section .section-header .section-title{color:#2a2252;font-size:1.75rem;font-weight:700;line-height:1.3;margin-bottom:.25rem}.livinglines-page .pricing-section .section-header .section-subtitle{color:#6b6b8a;font-size:1rem;font-weight:400}.livinglines-page .pricing-section .pricing-card{background:#fff;border:1px solid #5542b214;border-radius:14px;box-shadow:0 4px 12px #5542b214;margin-bottom:1.5rem;max-width:800px;padding:1.25rem;width:100%}.livinglines-page .pricing-section .pricing-card .price-badge{align-items:baseline;background:#f5f3ff;border-radius:10px;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;width:fit-content}.livinglines-page .pricing-section .pricing-card .price-badge span:first-child{color:#5542b2;font-size:1.5rem;font-weight:700}.livinglines-page .pricing-section .pricing-card .price-badge span:last-child{color:#5542b2;font-size:1rem}.livinglines-page .pricing-section .pricing-card .pricing-details{text-align:left}.livinglines-page .pricing-section .pricing-card .pricing-details .main-text{color:#2a2252;font-size:1.1rem;font-weight:500;line-height:1.5;margin-bottom:.75rem}.livinglines-page .pricing-section .pricing-card .pricing-details .secondary-text{align-items:center;color:#6b6b8a;display:flex;font-size:.95rem;gap:.5rem;line-height:1.5}.livinglines-page .pricing-section .pricing-card .pricing-details .secondary-text .inline-icon{color:#5542b2;flex-shrink:0}.livinglines-page .pricing-section .benefits-section{max-width:1200px;width:100%}.livinglines-page .pricing-section .benefits-section .benefits-title{color:#2a2252;font-size:1.3rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.livinglines-page .pricing-section .benefits-section .benefits-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr;width:100%}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card{align-items:flex-start;background:#fff;border:1px solid #5542b214;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:1rem;padding:1rem;text-align:left}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card .benefit-icon{color:#5542b2;flex-shrink:0;font-size:1.25rem;margin-top:.15rem}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card .benefit-content h3{color:#2a2252;font-size:1rem;font-weight:600;margin:0 0 .25rem}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card .benefit-content p{color:#6b6b8a;font-size:.85rem;line-height:1.4;margin:0}@media(min-width:768px){.livinglines-page .pricing-section .benefits-section .benefits-grid{gap:1.5rem;grid-template-columns:repeat(3,1fr)}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card{align-items:center;flex-direction:column;gap:.75rem;padding:1.5rem 1rem;text-align:center}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card .benefit-icon{font-size:1.5rem;margin-bottom:.5rem;margin-top:0}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card .benefit-content h3{font-size:1.1rem;margin-bottom:.5rem}.livinglines-page .pricing-section .benefits-section .benefits-grid .benefit-card .benefit-content p{font-size:.9rem}}@media(min-width:1200px){.livinglines-page .pricing-section .benefits-section .benefits-grid{gap:2rem}}@media(min-width:768px){.livinglines-page .pricing-section{padding:4rem 2rem}.livinglines-page .pricing-section .section-title{font-size:2rem}.livinglines-page .pricing-section .pricing-card{align-items:center;display:flex;justify-content:space-between;padding:2rem}.livinglines-page .pricing-section .pricing-card .price-badge.mobile-only{display:none}.livinglines-page .pricing-section .pricing-card .main-text.desktop-only{display:block;margin-bottom:.5rem}.livinglines-page .pricing-section .benefits-title.desktop-only,.livinglines-page .pricing-section .section-subtitle.desktop-only{display:block}.livinglines-page .pricing-section .benefits-grid{gap:1.25rem;grid-template-columns:repeat(3,1fr)}.livinglines-page .pricing-section .benefits-grid .benefit-card{align-items:center;flex-direction:column;gap:.75rem;padding:1.5rem 1rem;text-align:center}.livinglines-page .pricing-section .benefits-grid .benefit-card .benefit-icon{font-size:1.5rem;margin-top:0}.livinglines-page .pricing-section .benefits-grid .benefit-card .benefit-content h3{font-size:1.1rem}}@media(max-width:767px){.livinglines-page .pricing-section .benefits-title.desktop-only,.livinglines-page .pricing-section .main-text.desktop-only,.livinglines-page .pricing-section .section-subtitle.desktop-only{display:none}}.livinglines-page .contact-section{align-items:center;background-color:#5542b2;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:1.5rem;position:relative;text-align:center;z-index:10}.livinglines-page .contact-section h2{font-size:1.875rem;font-weight:700;margin-bottom:1rem}.livinglines-page .contact-section p{margin-bottom:1.5rem}.livinglines-page .contact-section .contact-button{background-color:#fff;border:none;border-radius:.75rem;color:#5542b2;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease}.livinglines-page .contact-section .contact-button:hover{background-color:#f3f3f3}.livinglines-page .global-footer{bottom:0;left:0;position:absolute;right:0;z-index:11}.navigation{align-items:center;background-color:#fff;box-shadow:0 2px 4px #0000001a;display:flex;height:60px;justify-content:center;left:0;padding:0 1rem;position:fixed;right:0;top:0;z-index:1}.nav-button{background:none;border:none;border-radius:8px;color:#333;cursor:pointer;font-size:1rem;margin:0 .5rem;padding:.5rem 1rem;transition:background-color .2s ease}.nav-button:hover{background-color:#f0f0f0}.nav-button.active{background-color:#e0e0e0;font-weight:700}.content-container{box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;padding-top:60px}.content-container>:not(:last-child){flex-grow:1}