body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f9fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0;transition:background-color .3s ease}body[data-theme=dark],html[data-theme=dark]{background-color:#0a0a0b}#root{background:inherit;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{padding:20px}.control-panel{border:1px solid #ccc;border-radius:8px;margin-bottom:20px;padding:20px}button{background-color:#4285f4;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;margin-right:10px;padding:10px 15px}button:hover{background-color:#3367d6}button:disabled{background-color:#ccc;cursor:not-allowed}input{border:1px solid #ccc;border-radius:4px;font-size:16px;margin-bottom:10px;margin-right:10px;padding:10px}.status{color:#666;margin-top:10px}.voice-area{background-color:#f5f5f5;border-radius:8px;min-height:300px;padding:20px}.app{background-color:#f5f9fa;color:#3d4954;display:flex;flex-direction:column;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;transition:background-color .3s ease,color .3s ease}.app[data-theme=dark],[data-theme=dark] .app{background-color:#0a0a0b;color:#fff}.app-header{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#391339,#3d4954);border-bottom:1px solid #ffffff1a;box-shadow:0 1px 3px #0000001a;color:#fff;display:flex;justify-content:space-between;padding:1rem 1.5rem;position:relative;z-index:100}.app-header h1{font-size:1.5rem;font-weight:600;letter-spacing:-.02em;margin:0}.app-header nav{align-items:center;display:flex;flex-grow:1;gap:.5rem;justify-content:center}.app-header nav a{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff26;border:1px solid #ffffff1a;border-radius:2rem;color:#fff;font-size:.875rem;font-weight:500;letter-spacing:.01em;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.app-header nav a:hover{background:#ffffff40;box-shadow:0 2px 8px #0003;transform:translateY(-1px)}.app-header nav a:active{transform:translateY(1px)}.logout-button,.switch-ui-button{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:#ea6d37e6;border:1px solid #ffffff1a;border-radius:2rem;box-shadow:0 1px 3px #0000001a;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.logout-button:hover,.switch-ui-button:hover{background-color:#ea6d37;box-shadow:0 3px 10px #0003;transform:translateY(-1px)}.logout-button:active,.switch-ui-button:active{box-shadow:0 1px 2px #0000001a;transform:translateY(1px)}.loading-container{background-color:#f5f9fa;height:100vh}.loading-spinner{animation:spin .8s cubic-bezier(.2,.8,.2,1) infinite;border:3px solid #3913391a;border-left-color:#297a92;box-shadow:0 0 20px #297a921a;height:36px;width:36px}.status-indicator{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff26;border-radius:1rem;box-shadow:0 1px 2px #0000000d;font-size:.75rem;gap:.375rem;height:1.75rem;padding:.375rem .75rem;transition:all .2s ease;white-space:nowrap}.status-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.status-connected{background-color:#4d99a5;box-shadow:0 0 6px #4d99a5cc}.status-error{background-color:#ea6d37;box-shadow:0 0 6px #ea6d37cc}.app-content{flex:1 1;margin:0 auto;max-width:1200px;padding:1.5rem;position:relative;width:100%;z-index:10}.card{background-color:#fcfdfe;border:1px solid #d5dedd80;border-radius:1rem;box-shadow:0 1px 3px #0000000d;margin-bottom:1.5rem;padding:1.5rem;transition:all .2s ease}.card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.app-footer{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#f5f9facc;border-top:1px solid #d5dedd80;color:#76909f;font-size:.875rem;margin-top:2rem;padding:1rem;text-align:center}.group-management{margin:0 auto;max-width:1200px;padding:2rem}.group-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.group-header h2{color:#1a202c;font-size:1.875rem;margin:0}.group-status{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.slot-counter{color:#2d3748;font-size:1.25rem;font-weight:600}.plan-info{color:#718096;font-size:.875rem}.group-actions{display:flex;gap:1rem;margin-bottom:2rem}.action-button{border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.action-button.primary{background-color:#3182ce;color:#fff}.action-button.primary:hover:not(:disabled){background-color:#2c5aa0}.action-button.secondary{background-color:#e2e8f0;color:#2d3748}.action-button.secondary:hover:not(:disabled){background-color:#cbd5e0}.action-button.small{font-size:.75rem;padding:.5rem 1rem}.action-button.danger{background-color:#e53e3e;color:#fff}.action-button.danger:hover:not(:disabled){background-color:#c53030}.action-button:disabled{cursor:not-allowed;opacity:.5}.alert{border-radius:8px;margin-bottom:2rem;padding:1rem}.alert.warning{background-color:#fed7d7;border:1px solid #feb2b2;color:#c53030}.group-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr}@media (min-width:768px){.group-content{grid-template-columns:1fr 1fr}}.invitations-section,.members-section{background:#f7fafc;border-radius:12px;padding:1.5rem}.invitations-section h3,.members-section h3{color:#2d3748;font-size:1.25rem;margin:0 0 1rem}.empty-state{color:#718096;font-style:italic;padding:2rem}.invitations-list,.members-list{display:flex;flex-direction:column;gap:1rem}.invitation-card,.member-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.invitation-info,.member-info{flex:1 1}.invitation-email,.member-name{color:#2d3748;font-weight:600;margin-bottom:.25rem}.member-details{display:flex;flex-direction:column;gap:.25rem}.member-role{color:#718096;font-size:.875rem}.member-role.admin{color:#3182ce;font-weight:500}.invitation-date,.member-activity{color:#a0aec0;font-size:.75rem}.invitation-status{margin-bottom:.25rem}.status{border-radius:4px;font-size:.875rem;padding:.25rem .5rem}.status.used{background-color:#c6f6d5;color:#22543d}.status.expired{background-color:#fed7d7;color:#c53030}.status.pending{background-color:#bee3f8;color:#2c5aa0}.invitation-actions,.member-actions{display:flex;gap:.5rem}.group-settings{background:#f7fafc;border-radius:12px;margin-top:2rem;padding:1.5rem}.group-settings h3{color:#2d3748;font-size:1.25rem;margin:0 0 1rem}.setting-row{align-items:center;display:flex;gap:1rem}.setting-row label{color:#2d3748;font-weight:500}.group-type-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.5rem}.modal-overlay{z-index:1000}.modal{background:#fff;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h3{color:#2d3748;margin:0}.close-button{color:#718096;font-size:1.5rem;height:2rem;padding:0;width:2rem}.close-button:hover{color:#2d3748}.modal-body{padding:1.5rem}.modal-body p{color:#718096;margin:0 0 1rem}.form-input,.form-textarea{border:1px solid #e2e8f0;border-radius:6px;box-sizing:border-box;font-size:.875rem;padding:.75rem;transition:border-color .2s;width:100%}.form-input:focus,.form-textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.preview-info{background:#f7fafc;border-radius:6px;color:#2d3748;font-size:.875rem;margin-bottom:1rem;padding:.75rem}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.upgrade-prompt{background:#f7fafc;border-radius:12px;padding:3rem;text-align:center}.upgrade-prompt h3{color:#2d3748;margin:0 0 1rem}.upgrade-prompt p{color:#718096;margin:0 0 2rem}.upgrade-button{background-color:#3182ce;border-radius:8px;font-weight:500;padding:.75rem 2rem;transition:background-color .2s}.upgrade-button:hover{background-color:#2c5aa0}.error,.loading{color:#718096;padding:2rem;text-align:center}.invitation-signup{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.error-container,.loading-container{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-width:400px;padding:3rem;text-align:center;width:100%}.error-container h2{color:#e53e3e;margin:0 0 1rem}.error-message{color:#c53030;font-weight:500;margin:0 0 1rem}.signup-container{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-width:500px;overflow:hidden;width:100%}.invitation-info{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;padding:2rem;text-align:center}.invitation-info h1{font-size:1.5rem;margin:0 0 .5rem}.invitation-info p{margin:0 0 1.5rem;opacity:.9}.invitation-details{background:#ffffff1a;border-radius:8px;padding:1rem;text-align:left}.detail-item{font-size:.875rem;margin-bottom:.5rem}.detail-item:last-child{margin-bottom:0}.signup-form{padding:2rem}.signup-form h2{color:#2d3748;margin:0 0 1.5rem;text-align:center}.form-group label{color:#2d3748}.form-input{border:1px solid #e2e8f0;border-radius:6px;box-sizing:border-box;font-size:.875rem;padding:.75rem;transition:all .2s;width:100%}.form-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.form-input.error{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.form-input:disabled{background-color:#f7fafc;cursor:not-allowed}.error-text{color:#e53e3e;display:block;font-size:.75rem;margin-top:.25rem}.form-actions{margin-top:2rem}.action-button.large{font-size:1rem;padding:1rem;width:100%}.signup-footer{color:#718096;font-size:.875rem;margin-top:1.5rem;text-align:center}.signup-footer p{margin:.5rem 0}@media (max-width:640px){.invitation-signup{padding:1rem}.signup-container{max-width:100%}.invitation-info,.signup-form{padding:1.5rem}}.progress-bar{background-color:#e2e8f0;border-radius:10px;height:10px;margin:5px 0}.progress-value{border-radius:10px;height:100%}.state-value{color:#64748b;font-size:.875rem}.dashboard .charts-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.dashboard .session-item{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1rem}.dashboard .session-state{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.dashboard .state-item{align-items:center;display:flex;gap:.5rem}.dashboard .state-item span{font-size:.875rem;width:100px}.tutor-interface{background-color:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;height:100vh;margin:0 auto;overflow:hidden;position:relative;width:100%}.tutor-header{background:linear-gradient(135deg,#4158d0,#c850c0);border-top-left-radius:8px;border-top-right-radius:8px;box-shadow:0 2px 10px #0000001a;color:#fff;flex-wrap:wrap;gap:20px;margin-bottom:0;padding:20px;position:relative;z-index:5}.tutor-header h1{font-size:1.8rem;font-weight:600;letter-spacing:-.5px;margin:0}.tutor-interface .chat-panel{background-color:#f9fafb;display:flex;flex:1 1;flex-direction:column;height:100%;max-width:100%;min-width:350px;overflow:auto;transition:all .3s cubic-bezier(.4,0,.2,1)}.tutor-interface .chat-panel.with-artifacts{border-right:1px solid #0000000d;max-width:60%}.tutor-interface .chat-container{background-color:#fff;display:flex;flex-direction:column;height:100%;overflow:auto;padding:20px}.tutor-interface .artifact-panel{background-color:#fff;box-shadow:-5px 0 25px #00000014;display:flex;flex-direction:column;height:100vh;overflow:hidden;position:fixed;right:0;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);width:0;z-index:100}.tutor-interface .artifact-panel.visible{width:40%}.tutor-interface .artifact-header{align-items:center;background-color:#fff;border-bottom:1px solid #e5e7eb;color:#4158d0;display:flex;justify-content:space-between;padding:18px 20px}.tutor-interface .artifact-header h3{font-size:1.1rem;font-weight:600;margin:0}.tutor-interface .artifact-tabs{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex}.tutor-interface .artifact-tab{border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;transition:all .2s ease}.tutor-interface .artifact-tab:hover{background-color:#4158d00d;color:#4158d0}.tutor-interface .artifact-tab.active{background-color:#fff;border-bottom:2px solid #4158d0;color:#4158d0}.tutor-interface .artifact-content{background-color:#fff;display:flex;flex:1 1;flex-direction:column;gap:16px;overflow:auto;padding:20px}.tutor-interface .artifact-controls{background-color:#fff;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:14px 20px}.tutor-interface .canvas-notes{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-top:12px;padding:12px}.tutor-interface .student-notes{display:flex;flex-direction:column;gap:12px}.tutor-interface .student-notes h4{color:#4b5563;font-size:1.1rem;font-weight:600;margin:0}.tutor-interface .notes-hint{background-color:#f1f5f9;border-left:3px solid #4158d0;border-radius:8px;color:#64748b;font-size:.9rem;margin:0;padding:8px}.tutor-interface .notes-input{border:1px solid #e5e7eb;border-radius:8px;font-family:inherit;font-size:.95rem;line-height:1.5;min-height:150px;padding:12px;resize:vertical;transition:all .2s ease;width:100%}.tutor-interface .notes-input:focus{border-color:#4158d0;box-shadow:0 0 0 2px #4158d033;outline:none}.tutor-interface .milestones{display:flex;flex-direction:column;gap:10px}.tutor-interface .milestones h4{color:#4b5563;font-size:1.1rem;font-weight:600;margin:0}.tutor-interface .milestone-list{display:flex;flex-direction:column;gap:12px;margin-top:10px}.tutor-interface .learning-milestone{animation:slidein .4s ease-out;background-color:#ecfdf5;border-left:4px solid #10b981;border-radius:8px;box-shadow:0 1px 2px #0000000d;font-weight:500;margin:0;padding:14px;position:relative}@keyframes slidein{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.tutor-interface .learning-milestone:first-child{background-color:#eff6ff;border-left:4px solid #3b82f6}.tutor-interface .learning-milestone:first-child:before{background-color:#3b82f6;border-radius:10px;box-shadow:0 1px 2px #0000001a;color:#fff;content:"New!";font-size:.7rem;font-weight:600;padding:2px 8px;position:absolute;right:-6px;top:-6px}.tutor-interface .milestone-time{color:#64748b;font-size:.75rem;margin-top:6px}.tutor-interface .student-state{background-color:#f8fafc;border:1px solid #4158d01a;border-radius:12px;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000001a;margin-bottom:20px;padding:18px;transition:all .3s ease}.tutor-interface .student-state:hover{box-shadow:0 4px 6px #0000000d,0 1px 3px #0000001a;transform:translateY(-2px)}.tutor-interface .student-state h3{align-items:center;color:#4158d0;display:flex;font-size:1rem;font-weight:600;margin-bottom:12px;margin-top:0}.tutor-interface .student-state h3:before{background-color:#4158d0;border-radius:50%;content:"";display:inline-block;height:8px;margin-right:8px;width:8px}.tutor-interface .state-bars{display:flex;flex-direction:column;gap:14px}.tutor-interface .state-bar{align-items:center;display:flex}.tutor-interface .state-bar span{color:#4b5563;font-size:.9rem;min-width:100px}.tutor-interface .progress-bar{background-color:#e5e7eb;border-radius:20px;flex:1 1;height:8px;overflow:hidden}.tutor-interface .progress-value{border-radius:20px;height:100%;transition:width .5s ease-in-out}.tutor-interface .state-value{color:#64748b;font-size:.8rem;font-weight:500;text-align:right;width:40px}.tutor-interface .learning-style{align-items:center;background-color:#fff;border:1px solid #f1f5f9;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;padding:12px}.tutor-interface .learning-style span{color:#4b5563;font-size:.9rem;font-weight:500;min-width:100px}.tutor-interface .learning-style-badges{display:flex;flex-wrap:wrap;gap:8px}.tutor-interface .canvas-container{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;overflow:hidden}.tutor-interface .canvas-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:12px 15px}.tutor-interface .canvas-header h3{font-size:1.1rem;margin:0}.tutor-interface .canvas-wrapper{background-color:#fcfcfd;border:1px dashed #4158d026;border-radius:12px;display:flex;justify-content:center;margin-top:10px;min-height:400px;padding:15px;position:relative;transition:all .3s ease}.tutor-interface .canvas-wrapper:hover{background-color:#f9fafb;border-color:#4158d04d;box-shadow:0 4px 12px #0000000d}.tutor-interface .artifact-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:center;width:100%}.tutor-interface .visualization-placeholder{background-color:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;margin:0 auto;padding:40px 20px;text-align:center;width:90%}.tutor-interface .visualization-placeholder p{font-size:1rem;margin-bottom:10px}.tutor-interface .visualization-placeholder ul{display:inline-block;text-align:left}.tutor-interface .visualization-placeholder li{margin-bottom:8px;padding-left:20px;position:relative}.tutor-interface .visualization-placeholder li:before{color:#4158d0;content:"→";font-weight:700;left:0;position:absolute}.tutor-interface .messages-container{background-color:#fff;border:1px solid #0000000d;border-radius:12px;box-shadow:0 1px 3px #0000000d,0 1px 2px #0000001a;display:flex;flex-direction:column;gap:1.25rem;height:400px;margin-bottom:1.25rem;overflow-y:auto;padding:1.25rem;scroll-behavior:smooth}.tutor-interface .message{animation:messageAppear .3s ease-out forwards;border-radius:12px;box-shadow:0 1px 2px #0000000d;max-width:85%;padding:1rem;position:relative;transition:transform .2s ease,box-shadow .2s ease}@keyframes messageAppear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tutor-interface .message:hover{box-shadow:0 3px 8px #00000014;transform:translateY(-2px)}.tutor-interface .message.student{align-self:flex-end;background-color:#f9f0ff;border:1px solid #c850c01a;border-bottom-right-radius:4px;color:#333}.tutor-interface .message.student:after{background-color:#f9f0ff;border-bottom:1px solid #c850c01a;border-right:1px solid #c850c01a;bottom:-8px;content:"";height:10px;position:absolute;right:12px;transform:rotate(45deg);width:10px}.tutor-interface .message.tutor{align-self:flex-start;background-color:#f0f4ff;border:1px solid #4158d01a;border-bottom-left-radius:4px;color:#333}.tutor-interface .message.tutor:after{background-color:#f0f4ff;border-bottom:1px solid #4158d01a;border-left:1px solid #4158d01a;bottom:-8px;content:"";height:10px;left:12px;position:absolute;transform:rotate(45deg);width:10px}.tutor-interface .message.system{align-self:center;background-color:#fff3cd;border:1px solid #ffc10733;color:#333;font-size:.875rem;max-width:90%}.tutor-interface .message-header{align-items:center;color:#4b5563;display:flex;font-size:.875rem;font-weight:600;margin-bottom:.75rem}.tutor-interface .message.tutor .message-header{color:#4158d0}.tutor-interface .message.student .message-header{color:#c850c0}.tutor-interface .message-header:before{border-radius:50%;content:"";display:inline-block;height:6px;margin-right:6px;width:6px}.tutor-interface .message.tutor .message-header:before{background-color:#4158d0}.tutor-interface .message.student .message-header:before{background-color:#c850c0}.tutor-interface .message-content{font-size:.95rem;line-height:1.5;white-space:pre-wrap}.tutor-interface .formula{display:block;margin:5px 0;max-width:100%;overflow-x:auto}.formula-container{background-color:#f8fafc;border-radius:8px;margin:10px 0;overflow-x:auto;padding:12px}.formula-wrapper{display:flex;justify-content:center;padding:8px 0}.step-visualization{background-color:#fff;border-radius:8px;box-shadow:0 2px 6px #0000001a;margin:15px 0;overflow:hidden}.step-header{align-items:center;background-color:#f0f4ff;border-bottom:1px solid #e0e7ff;display:flex;justify-content:space-between;padding:12px 15px}.step-content{padding:15px}.step-canvas{border:1px solid #f0f4ff;border-radius:8px;display:flex;justify-content:center;margin:15px 0;padding:10px}.step-explanation{background-color:#f0f9ff;border-left:3px solid #4f46e5;border-radius:0 8px 8px 0;margin:10px 0;padding:10px 15px}.step-navigation{align-items:center;border-top:1px solid #e0e7ff;display:flex;justify-content:space-between;margin-top:15px;padding-top:10px}.learning-style-indicator{align-items:center;background-color:#f0f4ff;border-radius:16px;display:flex;font-size:.75rem;margin-right:8px;padding:4px 6px}.learning-style-icon{align-items:center;display:flex;height:16px;justify-content:center;margin-right:4px;width:16px}.learning-style-icons{display:flex;margin-top:8px}.style-icon{align-items:center;background-color:#f1f5f9;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;margin-right:8px;transition:all .2s ease;width:36px}.style-icon.active{background-color:#e0e7ff;box-shadow:0 0 0 2px #4f46e5;color:#4f46e5}.breakthrough-container{align-items:center;background-color:#00000080;display:flex;inset:0;justify-content:center;pointer-events:none;position:fixed;z-index:50}.breakthrough-message{background-color:#4f46e5;border-radius:12px;box-shadow:0 0 0 5px #4f46e54d;color:#fff;max-width:400px;padding:20px 30px;text-align:center}.breakthrough-icon{color:#fcd34d;font-size:36px;margin-bottom:10px}.tutor-interface .input-form{display:flex;gap:.75rem;margin-top:1rem;position:relative}.tutor-interface .input-form:before{background:linear-gradient(180deg,#fff0,#fff);content:"";height:16px;left:0;pointer-events:none;position:absolute;right:0;top:-16px}.tutor-interface .input-form input{border:2px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px #0000000d;flex:1 1;font-family:inherit;font-size:1rem;padding:.85rem 1rem;transition:all .2s ease}.tutor-interface .input-form input:focus{border-color:#4158d0;box-shadow:0 0 0 3px #4158d033;outline:none}.tutor-interface .input-form input::placeholder{color:#a1a1aa}.tutor-interface .input-form button{align-items:center;background-color:#4158d0;border:none;border-radius:12px;box-shadow:0 1px 3px #4158d04d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;letter-spacing:.01em;padding:.85rem 1.5rem;transition:all .2s ease}.tutor-interface .input-form button:hover:not(:disabled){background-color:#3949c1;box-shadow:0 2px 4px #4158d066;transform:translateY(-1px)}.tutor-interface .input-form button:active:not(:disabled){box-shadow:0 1px 2px #4158d04d;transform:translateY(1px)}.tutor-interface .input-form button:disabled{background-color:#cbd5e1;box-shadow:none;cursor:not-allowed}.tutor-interface .typing-indicator{display:flex;gap:.25rem}.tutor-interface .typing-indicator span{animation:typing 1s ease-in-out infinite;background-color:#64748b;border-radius:50%;display:inline-block;height:8px;width:8px}.tutor-interface .typing-indicator span:first-child{animation-delay:0s}.tutor-interface .typing-indicator span:nth-child(2){animation-delay:.2s}.tutor-interface .typing-indicator span:nth-child(3){animation-delay:.4s}.tutor-interface .step-controls{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:10px}@keyframes typing{0%{transform:translateY(0)}50%{transform:translateY(-5px)}to{transform:translateY(0)}}@keyframes breakthrough-pulse{0%{box-shadow:0 0 0 0 #ffd70099}50%{box-shadow:0 0 0 15px #ffd70000}to{box-shadow:0 0 0 0 #ffd70000}}@keyframes breakthrough-rotate{0%{transform:rotate(0deg)}25%{transform:rotate(3deg)}50%{transform:rotate(0deg)}75%{transform:rotate(-3deg)}to{transform:rotate(0deg)}}@keyframes breakthrough-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.tutor-interface .breakthrough-animation{animation:breakthrough-pulse 1.5s infinite,breakthrough-rotate 6s linear infinite;overflow:hidden;position:relative}.tutor-interface .breakthrough-animation:before{animation:breakthrough-spin 4s linear infinite;background:conic-gradient(from 0deg,#fff0,#ffd70033,#ffd70080,#ffd70033,#fff0);bottom:-50%;content:"";left:-50%;position:absolute;right:-50%;top:-50%;z-index:-1}.ai-trainer{padding:20px}.ai-trainer h1{color:#343a40;font-weight:600;margin-bottom:20px}.ai-trainer .trainer-content{margin-bottom:30px}.ai-trainer .state-controls{display:flex;flex-direction:column;gap:1rem}.ai-trainer .state-control{grid-gap:.5rem;align-items:center;display:grid;gap:.5rem;grid-template-columns:100px 1fr 50px}.ai-trainer .state-control input[type=range]{width:100%}.ai-trainer .goal-controls{display:flex;flex-direction:column;gap:1rem}.ai-trainer .form-group{display:flex;flex-direction:column;gap:.5rem}.ai-trainer .form-group label{font-size:.875rem;font-weight:600}.ai-trainer .form-group input,.ai-trainer .form-group select{border:1px solid #e2e8f0;border-radius:4px;font-size:1rem;padding:.5rem}.ai-trainer .generate-button{align-self:flex-start;background-color:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem}.ai-trainer .generate-button:disabled{background-color:#cbd5e1;cursor:not-allowed}.ai-trainer .error-message{background-color:#fee2e2;border-radius:8px;color:#b91c1c;padding:.75rem}.ai-trainer .plan-details{margin-top:1rem}.ai-trainer .plan-header{margin-bottom:1rem}.ai-trainer .plan-steps{counter-reset:step-counter;padding-left:0}.ai-trainer .plan-steps li{align-items:center;background-color:#f8fafc;border-radius:8px;display:flex;gap:.5rem;margin-bottom:.75rem;padding:.75rem 1rem}.ai-trainer .step-number{align-items:center;background-color:#4f46e5;border-radius:50%;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:25px;justify-content:center;width:25px}.ai-trainer .step-action{font-weight:500}.neural-visualization{background-color:#f0f4f8;border-radius:8px;position:relative}.neural-stats{background-color:#fff;border-radius:4px;box-shadow:0 2px 4px #0000001a;padding:10px;position:absolute;right:10px;top:10px;width:220px}.badge.animate-pulse{animation:pulse 1s ease-in-out}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}@media (max-width:768px){.dashboard .charts-row,.tutor-interface .chat-container{grid-template-columns:1fr}}.parent-dashboard{margin:0 auto;max-width:1200px;padding:20px;width:100%}.dashboard-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.session-section,.token-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.session-list{display:flex;flex-direction:column;gap:15px;margin-top:20px}.session-card{border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;padding:15px;transition:all .2s ease}.session-card:hover{border-color:#3b82f6;box-shadow:0 2px 6px #3b82f61a}.session-card.active{border-color:#3b82f6;box-shadow:0 2px 10px #3b82f633}.session-header{margin-bottom:10px}.session-header h3{color:#2d3748;font-size:16px;margin:0}.session-messages{background-color:#f1f5f9;border-radius:12px;color:#718096;font-size:12px;padding:3px 8px}.session-metrics{display:flex;flex-direction:column;gap:10px}.metric{gap:5px}.metric span{color:#4a5568;font-size:14px}.session-details{border-top:1px solid #e2e8f0;margin-top:15px;padding-top:15px}.session-details h4{color:#2d3748;font-size:15px;margin:10px 0 5px}.breakthroughs-list,.misconceptions-list,.session-details p{color:#4a5568;font-size:14px;margin:5px 0}.breakthroughs-list,.misconceptions-list{padding-left:20px}.privacy-notice{background-color:#f1f5f9;border-radius:5px;color:#64748b;font-size:12px;margin-top:15px;padding:10px}.token-history{display:flex;flex-direction:column;gap:20px;margin-top:20px}.token-day{border-bottom:1px solid #e2e8f0;padding-bottom:15px}.day-header{display:flex;justify-content:space-between;margin-bottom:10px}.day-date{color:#2d3748;font-weight:600}.day-total{color:#10b981;font-weight:600}.day-transactions{display:flex;flex-direction:column;gap:8px}.token-transaction{align-items:center;background-color:#f8fafc;border-radius:5px;display:flex;justify-content:space-between;padding:6px 10px}.transaction-type{align-items:center;display:flex;gap:8px}.token-event-icon{font-size:18px}.event-name{color:#4a5568;font-size:14px}.token-amount{color:#10b981;font-size:14px;font-weight:600}.token-explainer{background-color:#f1f5f9;border-radius:8px;margin-top:30px;padding:15px}.token-explainer h3{color:#2d3748;font-size:16px;margin-bottom:10px;margin-top:0}.token-explainer p{color:#4a5568;font-size:14px;margin:10px 0}.token-explainer ul{margin:10px 0;padding-left:20px}.token-explainer li{color:#4a5568;font-size:14px;margin-bottom:5px}.no-data{color:#64748b;font-style:italic;padding:20px;text-align:center}@media (max-width:768px){.dashboard-grid{grid-template-columns:1fr}}.login-container{align-items:center;background:linear-gradient(135deg,#4158d0,#c850c0);display:flex;justify-content:center;min-height:100vh;padding:1rem}.login-card{background-color:#fff;border-radius:10px;box-shadow:0 10px 20px #0003;max-width:400px;padding:2rem;width:100%}.login-card h2{color:#4158d0;font-weight:600;margin-bottom:.5rem;text-align:center}.login-subtitle{color:#6b7280;margin-bottom:1.5rem;text-align:center}.login-error{background-color:#fee2e2;border:1px solid #ef4444;border-radius:6px;color:#b91c1c;padding:.75rem}.login-error,.login-info{font-size:.9rem;margin-bottom:1rem}.login-info{background-color:#e6f7ff;border:1px solid #91d5ff;border-radius:6px;color:#1890ff;padding:.8rem}.form-group{display:flex;flex-direction:column;margin-bottom:1rem}.form-group input{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;padding:.75rem;width:100%}.form-group input:focus{border-color:#4158d0;box-shadow:0 0 0 2px #4158d033;outline:none}.login-button{background:linear-gradient(45deg,#4158d0,#c850c0);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem;transition:all .2s;width:100%}.login-button:hover{box-shadow:0 4px 8px #0000001a;opacity:.9;transform:translateY(-1px)}.login-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.login-options{align-items:center;border-bottom:1px solid #eee;display:flex;flex-direction:column;margin-top:1.5rem;padding-bottom:1rem}.login-options p{color:#666;font-size:.9rem;margin-bottom:1rem}.mode-toggle-btn{background:none;border:none;font-weight:500;padding:0 5px;text-decoration:underline}.guest-continue-btn,.mode-toggle-btn{color:#4158d0;cursor:pointer;font-size:.9rem}.guest-continue-btn{background-color:initial;border:1px solid #4158d0;border-radius:6px;margin-top:.5rem;max-width:200px;padding:.6rem 1rem;transition:all .2s;width:100%}.guest-continue-btn:hover{background-color:#4158d00d;transform:translateY(-1px)}.login-help{color:#6b7280;font-size:.9rem;margin-top:1.5rem}.login-help p{margin-bottom:.5rem}.login-help ul{margin:0;padding-left:1.5rem}@keyframes questPulse{0%,to{box-shadow:0 2px 8px #10b9814d;transform:scale(1)}50%{box-shadow:0 4px 16px #10b98180;transform:scale(1.02)}}.token-display{align-items:center;background-color:#f0f8ff;border-radius:12px;box-shadow:0 2px 5px #0000001a;display:flex;flex-direction:column;margin:10px 0;min-width:220px;padding:12px}.token-display.guest-mode{background-color:#f5f5f5;opacity:.9}.token-display.loading{color:#888;font-style:italic}.token-balance{align-items:center;display:flex;gap:6px;margin-bottom:10px}.token-amount,.token-icon{font-size:24px}.token-amount{color:#3498db;font-weight:700}.token-label{color:#666;font-size:16px}.token-teaser{align-items:center;animation:shimmer 2s infinite;background:linear-gradient(90deg,#fff0,#297a921a 50%,#fff0);background-size:200% 100%;border:1px solid #297a9233;border-radius:20px;color:#297a92;display:flex;font-size:15px;font-weight:500;gap:8px;padding:8px 16px}.token-teaser.clickable{cursor:pointer;padding-right:40px;position:relative;transition:all .2s ease}.token-teaser.clickable:hover{background:linear-gradient(90deg,#297a920d,#297a9226 50%,#297a920d);background-size:200% 100%;box-shadow:0 2px 8px #0000000d;transform:translateY(-1px)}.arrow-icon{font-size:16px;font-weight:700;position:absolute;right:16px;transition:transform .2s ease}.token-teaser.clickable:hover .arrow-icon{transform:translateX(3px)}.streak-display{align-items:center;background:linear-gradient(135deg,#fff3e0,#ffecb3);border:1px solid #ff98004d;border-radius:24px;box-shadow:0 2px 8px #ff980033;display:flex;gap:8px;margin-bottom:12px;overflow:hidden;padding:8px 16px;position:relative}.streak-display:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#ff980000,#ff98001a 50%,#ff980000);background-size:200% 100%;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.streak-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));font-size:22px}.streak-days{color:#e65100;font-size:22px;font-weight:700;text-shadow:0 1px 1px #fffc}.streak-label{color:#8d4d14;font-size:15px;font-weight:500}.token-actions{display:flex;flex-direction:column;gap:8px;margin-top:8px;width:100%}.referral-button{align-items:center;background-color:#3498db;border:none;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;justify-content:center;padding:8px 16px;transition:all .2s ease;width:100%}.referral-button:hover{background-color:#2980b9;box-shadow:0 3px 8px #0000001a;transform:translateY(-1px)}.referral-icon{font-size:16px}.upgrade-button{align-items:center;background:linear-gradient(135deg,#ea6d37,#e7ac54);border:none;border-radius:20px;box-shadow:0 2px 5px #ea6d374d;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;justify-content:center;margin-top:5px;padding:8px 16px;transition:all .2s ease;width:100%}.upgrade-button:hover{background:linear-gradient(135deg,#e05d20,#e79a31);box-shadow:0 3px 8px #ea6d3766;transform:translateY(-1px)}.upgrade-icon{font-size:16px}.referral-info{margin-top:10px;text-align:center;width:100%}.referral-info p{color:#666;font-size:14px;margin:5px 0}.referral-code{align-items:center;display:flex;gap:10px;justify-content:center;margin:8px 0}.referral-code code{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-family:monospace;font-size:16px;letter-spacing:1px;padding:6px 12px}.copy-button{background-color:#27ae60;border-radius:4px;color:#fff;font-size:12px;padding:6px 10px;transition:background-color .2s}.copy-button:hover{background-color:#219653}.referral-reward{color:#888!important;font-size:12px!important;font-style:italic}.premium-token-teaser{align-items:center;background:linear-gradient(90deg,#3913390d,#3b82b81a);border:1px dashed #3b82b84d;border-radius:12px;color:#391339!important;display:flex;font-size:13px!important;gap:6px;margin-top:12px!important;padding:8px 12px}.premium-icon{font-size:16px}.token-tier-badge{border-radius:20px;font-size:10px;font-weight:700;margin-left:6px;padding:2px 6px;text-transform:uppercase}.token-tier-badge.student{background-color:#e3f2fd;border:1px solid #bbdefb;color:#1565c0}.token-tier-badge.premium{background-color:#ede7f6;border:1px solid #d1c4e9;color:#5e35b1}.token-tier-badge.expert{background-color:#fff8e1;border:1px solid #ffecb3;color:#ff8f00}.limited-token-notice{align-items:center;background:linear-gradient(135deg,#3913390d,#3b82b814);border:1px dashed #3b82b84d;border-radius:16px;color:#297a92;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin:8px auto;padding:8px 12px;transition:all .2s ease;width:fit-content}.limited-token-notice:hover{background:linear-gradient(135deg,#39133914,#3b82b81f);box-shadow:0 2px 8px #0000000d;transform:translateY(-1px)}@media (max-width:768px){.token-display{margin:10px auto;max-width:300px;width:100%}}@keyframes achievementPop{0%{opacity:0;transform:scale(.8)}60%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.achievement-pop{animation:achievementPop .5s ease-out forwards}.achievement-popup{align-items:center;background-color:#fff;border-left:5px solid #3498db;border-radius:12px;bottom:30px;box-shadow:0 4px 15px #00000026;display:flex;gap:15px;max-width:350px;min-width:300px;padding:20px;position:fixed;right:20px;z-index:1000}.achievement-icon{align-items:center;display:flex;font-size:36px;justify-content:center;min-width:50px}.achievement-content{flex:1 1}.achievement-content h3{color:#2c3e50;font-size:18px;margin:0 0 8px}.achievement-content p{color:#666;font-size:14px;margin:0 0 10px}.token-reward{align-items:center;display:flex;gap:5px;margin-top:5px}.close-button{background:none;color:#999;font-size:18px;line-height:1;position:absolute;right:10px;top:10px}.close-button:hover{color:#333}@media (max-width:768px){.achievement-popup{left:20px;max-width:none;right:20px}}.token-marketplace{background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:20px}.marketplace-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.marketplace-header h2{color:#2c3e50;font-size:24px;margin:0}.marketplace-balance{align-items:center;background-color:#f0f8ff;border-radius:30px;display:flex;padding:8px 15px}.balance-amount{color:#3498db;font-size:20px;font-weight:700;margin:0 6px}.balance-label{color:#666;font-size:14px}.marketplace-tabs{border-bottom:1px solid #e1e4e8;display:flex;margin-bottom:20px}.tab-button{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:10px 20px;position:relative;transition:color .3s}.tab-button.active{color:#3498db;font-weight:600}.tab-button.active:after{background-color:#3498db;border-radius:3px 3px 0 0;bottom:-1px;content:"";height:3px;left:0;position:absolute;right:0}.strategies-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.strategy-card{background-color:#fff;border:1px solid #e1e4e8;border-radius:8px;cursor:pointer;padding:16px;transition:all .2s ease}.strategy-card:hover{box-shadow:0 5px 15px #00000014;transform:translateY(-2px)}.strategy-card.selected{border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.strategy-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.strategy-header h3{color:#2c3e50;font-size:18px;margin:0}.strategy-price{align-items:center;background-color:#e0f7fa;border-radius:15px;color:#0097a7;display:flex;font-weight:700;gap:5px;padding:5px 10px}.strategy-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:14px;line-height:1.4;margin-bottom:15px;overflow:hidden}.strategy-meta{display:flex;justify-content:space-between;margin-bottom:15px}.strategy-domain{background-color:#f1f5f9;border-radius:12px;color:#475569;font-size:12px;padding:4px 10px}.strategy-creator{color:#94a3b8;font-size:12px;font-style:italic}.strategy-stats{display:flex;gap:15px}.stat-item{align-items:center;display:flex;gap:5px}.stat-icon,.stat-value{font-size:14px}.stat-value{color:#555}.bounties-list{display:flex;flex-direction:column;gap:15px}.bounty-card{background-color:#fff;border:1px solid #e1e4e8;border-radius:8px;padding:16px}.bounty-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.bounty-header h3{color:#2c3e50;font-size:18px;margin:0}.bounty-reward{align-items:center;background-color:#fef9c3;border-radius:15px;color:#ca8a04;display:flex;font-weight:700;gap:5px;padding:5px 10px}.bounty-description{color:#666;font-size:14px;line-height:1.4;margin-bottom:15px}.bounty-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:12px;gap:15px;margin-bottom:15px}.bounty-button{background-color:#fbbf24;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px;transition:background-color .2s}.bounty-button:hover{background-color:#f59e0b}.contribution-form-container{background-color:#fff;border-radius:8px;padding:20px}.contribution-intro{color:#666;font-size:15px;line-height:1.5;margin-bottom:20px}.submission-success{background-color:#dcfce7;border-radius:6px;color:#166534;font-weight:500;margin-bottom:20px;padding:12px}.contribution-form{display:flex;flex-direction:column;gap:15px}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{color:#444;font-size:14px;font-weight:500}.form-field input,.form-field select,.form-field textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px}.form-field textarea{min-height:150px;resize:vertical}.submit-contribution{background-color:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;margin-top:10px;padding:12px;transition:background-color .2s}.submit-contribution:hover{background-color:#2980b9}.submit-contribution:disabled{background-color:#a0aec0;cursor:not-allowed}.strategy-detail-panel{background-color:#fff;box-shadow:-5px 0 15px #0000001a;height:100vh;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;width:40%;z-index:1000}.strategy-detail-header{align-items:center;border-bottom:1px solid #e1e4e8;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.strategy-detail-header h3{color:#2c3e50;font-size:24px;margin:0}.close-detail{background:none;border:none;color:#999;cursor:pointer;font-size:24px}.strategy-detail-content{display:flex;flex-direction:column;gap:30px}.strategy-full-description{color:#444;font-size:16px;line-height:1.6}.strategy-meta-detail{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:20px}.meta-item{display:flex;flex-direction:column;gap:5px}.meta-label{color:#777;font-size:12px}.meta-value{color:#333;font-size:14px;font-weight:500}.strategy-purchase-section{align-items:center;background-color:#f8fafc;border-radius:10px;display:flex;flex-direction:column;gap:15px;padding:20px}.purchase-price{align-items:center;display:flex;gap:10px}.token-icon.large{font-size:30px}.price-amount{color:#3498db;font-size:36px;font-weight:700}.price-label{color:#777;font-size:16px}.purchase-button{background-color:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s;width:100%}.purchase-button:hover{background-color:#2980b9}.purchase-button:disabled{background-color:#cbd5e1;cursor:not-allowed}.already-purchased{align-items:center;background-color:#dcfce7;border-radius:6px;color:#166534;display:flex;font-weight:500;gap:10px;justify-content:center;padding:12px 24px;width:100%}.check-icon{font-weight:700}.purchase-info{display:flex;flex-direction:column;gap:10px;margin-top:10px;width:100%}.info-item{align-items:center;display:flex;gap:10px}.info-icon{font-size:16px}.info-text{color:#555;font-size:14px}.marketplace-loading{color:#6b7280;font-style:italic;padding:50px;text-align:center}@media (max-width:768px){.strategy-detail-panel{height:100vh;width:100%}.strategies-grid{grid-template-columns:1fr}.marketplace-header{align-items:flex-start;flex-direction:column;gap:15px}.marketplace-balance{align-self:flex-start}}@keyframes flowGlow{0%,to{filter:blur(12px);opacity:.4}50%{filter:blur(16px);opacity:.7}}@keyframes flowPulse{0%,to{box-shadow:0 8px 32px #f59e0b4d,inset 0 0 0 1px #f59e0b1a;transform:scale(1)}50%{box-shadow:0 12px 40px #f59e0b66,inset 0 0 0 1px #f59e0b26;transform:scale(1.01)}}@keyframes tokenSpin{0%,to{transform:rotateY(0deg)}50%{transform:rotateY(180deg)}}@keyframes multiplierPop{0%{opacity:0;transform:scale(.8)}60%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes hapticPulse{0%{transform:scale(1)}50%{transform:scale(.96)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.toast-notification{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:12px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;color:#3d4954;cursor:pointer;display:flex;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:12px;max-width:400px;min-width:320px;opacity:0;padding:20px 24px;position:fixed;right:20px;top:20px;transform:translateX(100%);transition:all .3s cubic-bezier(.4,0,.2,1);z-index:10002}.toast-notification.toast-enter{opacity:1;transform:translateX(0)}.toast-notification.toast-exit{opacity:0;transform:translateX(100%)}.toast-friend-joined{animation:friendJoinedPulse 2s ease-in-out infinite;background:linear-gradient(135deg,#10b981f2,#06b6d4f2)!important;border:2px solid #ffffff4d!important;border-left:none!important;box-shadow:0 20px 60px #10b98166,0 8px 24px #06b6d44d!important;color:#fff!important;overflow:visible!important;position:relative}.toast-friend-joined:before{animation:gradientBorder 3s ease infinite;background:linear-gradient(45deg,#10b981,#06b6d4,#8b5cf6,#10b981);background-size:400% 400%;border-radius:18px;bottom:-2px;content:"";left:-2px;opacity:.7;position:absolute;right:-2px;top:-2px;z-index:-1}.toast-friend-joined .toast-message{color:#fff!important;font-weight:600!important;text-shadow:0 1px 2px #0000001a}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0) rotate(0deg) scale(1)}to{opacity:0;transform:translateY(150px) rotate(2turn) scale(.3)}}@keyframes friendJoinedPulse{0%,to{box-shadow:0 20px 60px #10b98166,0 8px 24px #06b6d44d;transform:translateX(0) scale(1)}50%{box-shadow:0 24px 70px #10b98180,0 12px 32px #06b6d466;transform:translateX(0) scale(1.02)}}@keyframes gradientBorder{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.toast-success{border-left:4px solid #4d99a5}.toast-success,.toast-warning{background:linear-gradient(135deg,#fffffff2,#f5f9fafa)}.toast-warning{border-left:4px solid #ea6d37}.toast-error{border-left:4px solid #391339}.toast-error,.toast-video{background:linear-gradient(135deg,#fffffff2,#f5f9fafa)}.toast-video{border-left:4px solid #3b82b8}.toast-info{background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border-left:4px solid #76909f}.toast-icon{align-items:center;animation:iconPulse 2s infinite;background:linear-gradient(135deg,#297a921a,#3b82b81a);border:1px solid #297a9233;border-radius:12px;display:flex;flex-shrink:0;font-size:1.5rem;height:36px;justify-content:center;width:36px}.toast-content{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow:hidden}.toast-message{word-wrap:break-word;font-size:.95rem;font-weight:500;line-height:1.4;margin:0}.toast-progress-bar{background:#ffffff4d;border-radius:2px;height:3px;overflow:hidden;position:relative}.toast-progress-bar:before{animation:progressBarFill linear forwards;background:linear-gradient(90deg,#fffc,#fff6);content:"";height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);width:100%}.toast-close{align-items:center;background:#3d49541a;border:1px solid #3d49541a;border-radius:8px;color:#76909f;cursor:pointer;display:flex;flex-shrink:0;font-size:.8rem;height:28px;justify-content:center;transition:all .2s ease;width:28px}.toast-close:hover{background:#3d495426;border:1px solid #3d495433;box-shadow:0 4px 8px #3d49541a;color:#3d4954;transform:translateY(-1px)}@keyframes iconPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes progressBarFill{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.toast-notification:hover{box-shadow:0 12px 40px #0006;transform:translateX(-5px) scale(1.02)}.toast-notification:hover .toast-progress-bar:before{animation-play-state:paused}@media (max-width:768px){.toast-notification{left:10px;margin:0 10px;max-width:none;min-width:auto;right:10px;top:10px}.toast-notification.toast-enter,.toast-notification.toast-exit{transform:translateY(-100%)}.toast-notification:hover{transform:translateY(0) scale(1.01)}}.toast-notification:first-child{top:20px}.toast-notification:nth-child(2){top:100px}.toast-notification:nth-child(3){top:180px}.toast-notification:nth-child(4){top:260px}@media (prefers-reduced-motion:reduce){.toast-notification{transition:opacity .2s ease}.toast-notification.toast-enter,.toast-notification.toast-exit{transform:none}.toast-icon{animation:none}.toast-progress-bar:before{animation:none;transform:translateX(0)}}.toast-notification:focus{outline:2px solid #fffc;outline-offset:2px}@media (prefers-contrast:high){.toast-notification{-webkit-backdrop-filter:none;backdrop-filter:none;background:#000!important;border:2px solid #fff}.toast-close,.toast-icon{background:#fff;color:#000}}.one-click-neo-trainer{margin:0 auto;max-width:500px;padding:20px}.neo-trainer-card{background:#fff;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000001a;padding:40px 30px;text-align:center;transition:all .3s ease}.neo-trainer-card.training{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.neo-trainer-card.ready{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.neo-avatar{margin-bottom:30px;position:relative}.avatar-circle{align-items:center;background:#f8f9fa;border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 10px;position:relative;transition:all .3s ease;width:80px}.neo-avatar.ready .avatar-circle,.neo-avatar.training .avatar-circle{background:#fff3}.avatar-icon{font-size:36px;transition:all .3s ease}.avatar-icon.spinning{animation:spin 2s linear infinite}.ready-pulse{animation:pulse 2s infinite;border:3px solid #fff9;border-radius:50%;height:100%;position:absolute;width:100%}.avatar-status{color:#666;font-size:14px;font-weight:600}.neo-trainer-card.ready .avatar-status,.neo-trainer-card.training .avatar-status{color:#ffffffe6}.trainer-content h2{font-size:24px;font-weight:700;margin-bottom:15px}.trainer-content p{color:#666;font-size:16px;line-height:1.5;margin-bottom:25px}.neo-trainer-card.ready p,.neo-trainer-card.training p{color:#ffffffe6}.benefits-list{display:flex;flex-direction:column;gap:15px;margin:25px 0}.benefit{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;gap:12px;justify-content:center;padding:12px 20px;transition:all .3s ease}.benefit:hover{background:#e9ecef;transform:translateY(-2px)}.benefit-icon{font-size:20px}.benefit span:last-child{color:#333;font-weight:600}.train-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:16px;box-shadow:0 4px 20px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;gap:10px;justify-content:center;margin:30px 0 20px;padding:18px 36px;transition:all .3s ease;width:100%}.train-button:hover{box-shadow:0 6px 25px #667eea80;transform:translateY(-2px)}.train-button:active{transform:translateY(0)}.button-icon{font-size:20px}.button-time{font-size:14px;font-weight:400;opacity:.8}.social-proof{background:#667eea1a;border:1px solid #667eea33;border-radius:12px;margin-top:20px;padding:15px}.proof-text{color:#667eea;font-size:14px;font-weight:600}.progress-container{margin:25px 0}.progress-bar{background:#fff3;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#38ef7d,#11998e);border-radius:4px;height:100%;transition:width .3s ease}.progress-text{color:#ffffffe6;font-size:14px;font-weight:600}.training-steps{display:flex;flex-direction:column;gap:12px;margin:30px 0}.step{align-items:center;background:#ffffff1a;border-radius:12px;gap:12px;padding:12px 16px;transition:all .3s ease}.step.active{background:#fff3;transform:scale(1.02)}.step.complete{background:#38ef7d33}.step-icon{font-size:18px}.readiness-overview{background:#ffffff26;border-radius:16px;margin:25px 0;padding:20px}.readiness-overview h4{font-size:16px;font-weight:600;margin-bottom:15px}.readiness-levels{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.level{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;font-size:14px;gap:10px;padding:8px 12px}.level.ready{background:#38ef7d33}.level-icon{font-size:16px}.recommended-level{background:#ffffff1a;border-radius:8px;font-size:14px;font-weight:600;padding:10px;text-align:center}.action-buttons{display:flex;gap:15px;margin:25px 0}.primary-action,.secondary-action{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .3s ease}.primary-action{background:#ffffffe6;color:#11998e}.primary-action:hover{background:#fff;transform:translateY(-2px)}.secondary-action{background:#fff3;border:1px solid #ffffff4d;color:#fff}.secondary-action:hover{background:#ffffff4d;transform:translateY(-2px)}.retrain-section{border-top:1px solid #fff3;margin-top:30px;padding-top:20px}.retrain-button{background:none;border:1px solid #ffffff4d;border-radius:8px;color:#fffc;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .3s ease}.retrain-button:hover{background:#ffffff1a;color:#fff}.celebration-popup{align-items:center;animation:fadeIn .3s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.celebration-content{animation:slideUp .3s ease;background:#fff;border-radius:20px;max-width:300px;padding:40px;text-align:center}.celebration-emoji{font-size:48px;margin-bottom:20px}.celebration-content h3{color:#333;margin-bottom:10px}.celebration-content p{color:#666;margin:0}@media (max-width:600px){.one-click-neo-trainer{padding:15px}.neo-trainer-card{padding:30px 20px}.action-buttons{flex-direction:column}.benefits-list{gap:10px}.benefit{padding:10px 15px}}body{background-color:#f5f9fa;color:#3d4954;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;margin:0;padding:0}.container{margin:0 auto;max-width:800px;padding:2rem}h1{color:#3d4954;font-weight:600;text-align:center}.control-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #ecf3f2;border-radius:.5rem;box-shadow:0 1px 2px #0000000d;margin-bottom:1.5rem;padding:1.5rem}.error{color:#ea6d37;font-weight:500;margin-top:.75rem}.instructions{background:#fcfdfe;border:1px solid #ecf3f2;border-radius:.5rem;box-shadow:0 1px 2px #0000000d;margin-top:2rem;padding:1.5rem}.instructions h3{color:#297a92;font-weight:600;margin-top:0}.instructions ol{padding-left:1.5rem}.voice-area{background:#fcfdfe;border:1px solid #ecf3f2;border-radius:1rem;box-shadow:0 1px 2px #0000000d;justify-content:center;margin-top:1.5rem;min-height:400px;position:relative}.voice-agent-ui,.voice-area{align-items:center;display:flex;flex-direction:column}.voice-agent-ui{flex:1 1;justify-content:flex-start;padding:1.5rem;width:100%}.voice-assistant-container{align-items:center;display:flex;flex-direction:column;margin:1rem 0}.voice-instruction{color:#3d4954;font-size:1.125rem;font-weight:500;margin-bottom:.75rem;text-align:center}.voice-status{color:#76909f;font-size:1rem;height:20px;margin-top:.625rem}.agent-status{align-items:center;display:flex;margin-bottom:1.25rem;width:100%}.status-indicator{align-items:center;display:flex;gap:.5rem}.status-indicator:before{background-color:#4d99a5;border-radius:50%;box-shadow:0 1px 2px #0000000d;content:"";height:.5rem;width:.5rem}.status-indicator.speaking:before{animation:pulse 1.5s infinite;background-color:#4d99a5;box-shadow:0 0 0 #4d99a566}.connection-status{color:#76909f;font-size:.875rem}.connection-status-indicator{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fcfdfee6;gap:.375rem;margin-right:.625rem;max-width:100%;overflow:visible;padding:.375rem .75rem;position:relative;transition:.2s ease-in-out;white-space:nowrap;z-index:100}.connection-status-indicator,.messages-container{border:1px solid #d5dedd80;border-radius:1rem;box-shadow:0 1px 2px #0000000d;display:flex}.messages-container{background-color:#f5f9fa;color:#3d4954;flex-direction:column;font-size:1rem;height:300px;margin-bottom:1.25rem;overflow-y:auto;padding:1rem;width:100%}.empty-message{color:#76909f;font-style:italic;margin:auto;text-align:center}.message{word-wrap:break-word;border-radius:1.25rem;box-shadow:0 1px 1px #00000005;line-height:1.4;margin-bottom:.75rem;max-width:80%;padding:.75rem 1rem}.user-message{align-self:flex-end;background-color:#abcaca;border-bottom-right-radius:.25rem;color:#3d4954}.agent-message{align-self:flex-start;background-color:#fcfdfe;border:1px solid #ecf3f2;border-bottom-left-radius:.25rem;color:#3d4954}.chat-message{font-weight:400}.transcription-message{font-size:.875rem;font-style:italic;opacity:.9}.message-sender{color:#297a92;font-size:.875rem;font-weight:600}.message-sender,.message-text{margin-bottom:.375rem}.message-time{color:#76909f;font-size:.75rem;opacity:.8;text-align:right}.chat-input-form{display:flex;margin-bottom:1.25rem;width:100%}.chat-input-form input{background-color:#fcfdfe;border:1px solid #ecf3f2;border-radius:1.5rem 0 0 1.5rem;box-shadow:inset 0 2px 4px #00000005;color:#3d4954;flex:1 1;font-size:1rem;padding:.75rem;transition:.2s ease-in-out}.chat-input-form input:focus{border-color:#297a92;box-shadow:0 0 0 1px #297a9233;outline:none}.chat-input-form button{background-color:#297a92;border:none;border-radius:0 1.5rem 1.5rem 0;box-shadow:0 1px 2px #0000000d;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1rem;transition:.2s ease-in-out}.chat-input-form button:hover{background-color:#1b3f48;transform:translateY(-1px)}.chat-input-form button:active{transform:translateY(1px)}.chat-input-form button:disabled{background-color:#d5dedd;cursor:not-allowed;transform:none}.controls-container{display:flex;gap:.625rem;justify-content:center;margin-top:auto;padding-bottom:.625rem;width:100%}.voice-controls{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fcfdfee6;border:1px solid #d5dedd80;border-radius:1rem;box-shadow:0 1px 2px #0000000d;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.625rem;padding:.75rem 1rem;width:100%}:root{--lk-control-bar-height:60px;--lk-theme-accent-color:#297a92;--lk-media-bg:#0000;--lk-control-bg:#fcfdfecc;--lk-button-bg:#fcfdfe;--lk-button-stroke:#ecf3f2;--lk-button-stroke-width:1px;--lk-button-bg-hover:#f5f9fa;--lk-button-size:42px;--lk-button-border-radius:12px}.lk-participant-metadata{display:none}.lk-control-bar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fcfdfecc;border:1px solid #d5dedd80;border-radius:1rem;box-shadow:0 1px 2px #0000000d;justify-content:center;margin:.5rem;padding:.25rem}.lk-button{border-radius:12px!important;box-shadow:0 1px 2px #0000000d!important;transition:.2s ease-in-out!important}.lk-button:hover{box-shadow:0 4px 6px #0000001a!important;transform:translateY(-1px)}.lk-button:active{transform:translateY(1px)}audio{border-radius:.5rem;box-shadow:0 1px 2px #0000000d;margin:.5rem 0}:root{--mira-primary:#297a92;--mira-primary-light:#4bb3d9;--mira-primary-dark:#1f5f73;--mira-secondary:#6366f1;--mira-success:#10b981;--mira-warning:#f59e0b;--mira-bg:#fff;--mira-bg-secondary:#f9fafb;--mira-bg-tertiary:#f3f4f6;--mira-text-primary:#111827;--mira-text-secondary:#6b7280;--mira-text-tertiary:#9ca3af;--mira-border:#e5e7eb;--mira-border-light:#f3f4f6;--bubble-mira-bg:var(--mira-primary);--bubble-mira-text:#fff;--bubble-student-bg:#f3f4f6;--bubble-student-text:var(--mira-text-primary);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700}.mira-chat-2025{background:#fff;background:var(--mira-bg);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-family:var(--font-sans);height:100%;max-height:800px;overflow:hidden}.mira-chat-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#297a92,#4bb3d9);background:linear-gradient(135deg,var(--mira-primary) 0,var(--mira-primary-light) 100%);border-bottom:1px solid #ffffff1a;padding:16px 24px;padding:var(--space-md) var(--space-lg)}.mira-header-content{align-items:center;display:flex;gap:16px;gap:var(--space-md)}.mira-avatar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:9999px;border-radius:var(--radius-full);display:flex;font-size:20px;height:40px;justify-content:center;position:relative;width:40px}.mira-avatar-emoji{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.status-indicator{animation:pulse-status 2s ease-in-out infinite;border:2px solid #297a92;border:2px solid var(--mira-primary);bottom:0;height:12px;right:0;width:12px}.status-indicator.online{background:#10b981;background:var(--mira-success)}@keyframes pulse-status{0%,to{opacity:1}50%{opacity:.7}}.mira-info{flex:1 1}.mira-name{color:#fff;font-size:16px;font-weight:600;font-weight:var(--font-weight-semibold);line-height:1.4;margin:0}.mira-status{color:#ffffffe6;font-size:13px;font-weight:400;font-weight:var(--font-weight-normal)}.mira-status.connecting{opacity:.7}.mira-messages-container{background:#f9fafb;background:var(--mira-bg-secondary);flex:1 1;overflow-x:hidden;overflow-y:auto;scrollbar-color:#0003 #0000;scrollbar-width:thin}.mira-messages-container::-webkit-scrollbar{width:6px}.mira-messages-container::-webkit-scrollbar-track{background:#0000}.mira-messages-container::-webkit-scrollbar-thumb{background:#0003;border-radius:9999px;border-radius:var(--radius-full)}.mira-messages-container::-webkit-scrollbar-thumb:hover{background:#0000004d}.mira-messages{display:flex;flex-direction:column;gap:16px;gap:var(--space-md);min-height:100%;padding:24px;padding:var(--space-lg)}.message-wrapper{animation:slideIn .2s ease-out;display:flex;gap:8px;gap:var(--space-sm)}.message-wrapper.mira{justify-content:flex-start}.message-wrapper.student{justify-content:flex-end}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-bubble{word-wrap:break-word;border-radius:12px;border-radius:var(--radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);max-width:70%;padding:16px;padding:var(--space-md);transition:transform .1s ease,box-shadow .2s ease}.message-bubble:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-1px)}.message-bubble.mira{background:#297a92;background:var(--bubble-mira-bg);border-bottom-left-radius:4px;border-bottom-left-radius:var(--space-xs);color:#fff;color:var(--bubble-mira-text)}.message-bubble.student{background:#f3f4f6;background:var(--bubble-student-bg);border-bottom-right-radius:4px;border-bottom-right-radius:var(--space-xs);color:#111827;color:var(--bubble-student-text)}.message-text{font-size:15px;line-height:1.5;margin-bottom:4px;margin-bottom:var(--space-xs);white-space:pre-wrap}.message-meta{align-items:center;display:flex;gap:4px;gap:var(--space-xs);margin-top:4px;margin-top:var(--space-xs)}.message-time{font-size:11px;font-weight:500;font-weight:var(--font-weight-medium);opacity:.7}.message-bubble.mira .message-time{color:#fffc}.message-bubble.student .message-time{color:#9ca3af;color:var(--mira-text-tertiary)}.typing-indicator{align-items:center;background:#fff;border-radius:12px;border-radius:var(--radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);gap:var(--space-sm);max-width:120px;padding:16px;padding:var(--space-md)}.typing-dots{display:flex;gap:4px}.typing-dots span{animation:typing-pulse 1.4s ease-in-out infinite;background:#297a92;background:var(--mira-primary);border-radius:9999px;border-radius:var(--radius-full);height:8px;width:8px}.typing-dots span:first-child{animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-pulse{0%,60%,to{opacity:.3;transform:scale(1)}30%{opacity:1;transform:scale(1.2)}}.typing-text{color:#9ca3af;color:var(--mira-text-tertiary);font-size:12px;white-space:nowrap}.mira-quick-actions{background:#fff;background:var(--mira-bg);border-top:1px solid #f3f4f6;border-top:1px solid var(--mira-border-light);padding:16px 24px;padding:var(--space-md) var(--space-lg)}.mira-quick-actions,.quick-btn{display:flex;gap:8px;gap:var(--space-sm)}.quick-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border:1px solid var(--mira-border);border-radius:9999px;border-radius:var(--radius-full);color:#6b7280;color:var(--mira-text-secondary);cursor:pointer;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-family:var(--font-sans);font-size:14px;font-weight:500;font-weight:var(--font-weight-medium);justify-content:center;padding:8px 16px;padding:var(--space-sm) var(--space-md);transition:all .15s ease}.quick-btn:hover:not(:disabled){background:#f3f4f6;background:var(--mira-bg-tertiary);border-color:#297a92;border-color:var(--mira-primary);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);color:#297a92;color:var(--mira-primary);transform:translateY(-1px)}.quick-btn:active:not(:disabled){transform:translateY(0)}.quick-btn:disabled{cursor:not-allowed;opacity:.5}.quick-btn.hint:hover:not(:disabled){border-color:#f59e0b;border-color:var(--mira-warning);color:#f59e0b;color:var(--mira-warning)}.quick-btn.success:hover:not(:disabled){border-color:#10b981;border-color:var(--mira-success);color:#10b981;color:var(--mira-success)}.btn-icon{font-size:16px}.btn-icon,.btn-text{line-height:1}.mira-input-container{background:#fff;background:var(--mira-bg);border-top:1px solid #e5e7eb;border-top:1px solid var(--mira-border);padding:16px 24px;padding:var(--space-md) var(--space-lg)}.mira-input-wrapper{align-items:flex-end;background:#f9fafb;background:var(--mira-bg-secondary);border:2px solid #f3f4f6;border:2px solid var(--mira-border-light);border-radius:16px;border-radius:var(--radius-lg);display:flex;gap:8px;gap:var(--space-sm);padding:8px;padding:var(--space-sm);transition:all .2s ease}.mira-input-wrapper:focus-within{background:#fff;border-color:#297a92;border-color:var(--mira-primary);box-shadow:0 0 0 3px #297a921a}.mira-input{background:#0000;border:none;color:#111827;color:var(--mira-text-primary);flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-family:var(--font-sans);font-size:15px;line-height:1.5;max-height:120px;min-height:20px;outline:none;padding:8px;padding:var(--space-sm);resize:none}.mira-input::placeholder{color:#9ca3af;color:var(--mira-text-tertiary)}.mira-input:disabled{cursor:not-allowed;opacity:.6}.mira-send-btn{align-items:center;background:#297a92;background:var(--mira-primary);border:none;border-radius:12px;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;min-width:36px;transition:all .15s ease;width:36px}.mira-send-btn:hover:not(:disabled){background:#1f5f73;background:var(--mira-primary-dark);transform:scale(1.05)}.mira-send-btn:active:not(:disabled){transform:scale(.95)}.mira-send-btn:disabled{cursor:not-allowed;opacity:.4;transform:none}.mira-send-btn svg{height:20px;width:20px}.spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:9999px;border-radius:var(--radius-full);border-top-color:#fff;height:18px;width:18px}.mira-input-hint{margin-top:8px;margin-top:var(--space-sm);text-align:center}.hint-text{color:#9ca3af;color:var(--mira-text-tertiary);font-size:12px;font-weight:400;font-weight:var(--font-weight-normal)}.connection-warning{align-items:center;background:#fff;border:1px solid #e5e7eb;border:1px solid var(--mira-border);border-radius:9999px;border-radius:var(--radius-full);bottom:32px;bottom:var(--space-xl);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);display:flex;gap:8px;gap:var(--space-sm);left:50%;padding:16px 24px;padding:var(--space-md) var(--space-lg);position:fixed;transform:translateX(-50%);z-index:1000}.warning-icon{font-size:18px;line-height:1}.warning-text{color:#6b7280;color:var(--mira-text-secondary);font-size:14px;font-weight:500;font-weight:var(--font-weight-medium)}@media (max-width:640px){.mira-chat-2025{border-radius:0;max-height:100vh}.message-bubble{max-width:85%}.quick-btn{font-size:13px;padding:4px 8px;padding:var(--space-xs) var(--space-sm)}.btn-text{display:none}.btn-icon{font-size:18px}.mira-input-hint{display:none}}.mira-send-btn:focus-visible,.quick-btn:focus-visible{outline:2px solid #297a92;outline:2px solid var(--mira-primary);outline-offset:2px}.mira-input:focus-visible{outline:none}@media (prefers-color-scheme:dark){:root{--mira-bg:#1f2937;--mira-bg-secondary:#111827;--mira-bg-tertiary:#374151;--mira-text-primary:#f9fafb;--mira-text-secondary:#d1d5db;--mira-text-tertiary:#9ca3af;--mira-border:#374151;--mira-border-light:#4b5563;--bubble-student-bg:#374151;--bubble-student-text:#f9fafb}.mira-messages-container{scrollbar-color:#ffffff4d #0000}.mira-messages-container::-webkit-scrollbar-thumb{background:#ffffff4d}.quick-btn{background:#f3f4f6;background:var(--mira-bg-tertiary)}}.payment-page{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:24px}.payment-page,.pricing-page{-webkit-font-smoothing:antialiased;background:#fafafa;background:var(--color-bg,#fafafa);color:#18181b;color:var(--color-text,#18181b);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;min-height:100vh}.pricing-page{padding:80px 24px}.pricing-container{margin:0 auto;max-width:1100px}.pricing-header{margin-bottom:60px;text-align:center}.pricing-title{color:#18181b;color:var(--color-text,#18181b);font-size:clamp(32px,5vw,48px);font-weight:700;letter-spacing:-.02em;margin:0 0 16px}.pricing-subtitle{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:18px;margin:0 auto 32px;max-width:500px}.billing-toggle{align-items:center;background:#f4f4f5;background:var(--color-bg-subtle,#f4f4f5);border-radius:12px;display:inline-flex;gap:12px;margin-bottom:16px;padding:4px}.billing-option{background:#0000;border:none;border-radius:8px;color:#71717a;color:var(--color-text-secondary,#71717a);cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s ease}.billing-option.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#18181b;color:var(--color-text,#18181b)}.billing-savings{background:#dcfce7;border-radius:100px;color:#166534;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px}.pricing-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.price-card{background:var(--color-bg-elevated,#fff);border:1px solid #e4e4e7;border:1px solid var(--color-border,#e4e4e7)}.price-card:hover{border-color:#a1a1aa;border-color:var(--color-text-tertiary,#a1a1aa);box-shadow:0 12px 32px #0000001a;transform:translateY(-4px)}.price-card.featured{border:2px solid #297a92;border:2px solid var(--color-primary,#297a92);box-shadow:0 8px 24px #297a9233}.price-card.featured:hover{transform:scale(1.02) translateY(-4px)}.card-badge{background:#297a92;background:var(--color-primary,#297a92);border-radius:100px;color:#fff;font-size:12px;font-weight:600;left:50%;padding:6px 16px;position:absolute;top:-12px;transform:translateX(-50%);white-space:nowrap}.card-name{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:14px;font-weight:600;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}.card-price{color:#18181b;color:var(--color-text,#18181b);font-size:48px;font-weight:700;line-height:1;margin:0 0 4px}.card-price span{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:18px;font-weight:500}.card-desc{color:#a1a1aa;color:var(--color-text-tertiary,#a1a1aa);font-size:14px;margin:0 0 24px}.card-features{list-style:none;margin:0 0 24px;padding:0;text-align:left}.card-features li{align-items:flex-start;border-bottom:1px solid #f4f4f5;border-bottom:1px solid var(--color-border-subtle,#f4f4f5);color:#71717a;color:var(--color-text-secondary,#71717a);display:flex;font-size:14px;gap:10px;padding:10px 0}.card-features li:last-child{border-bottom:none}.card-features li:before{color:#10b981;content:"✓";flex-shrink:0;font-weight:600}.card-cta{border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;transition:all .15s ease;width:100%}.card-cta.primary{background:#297a92;background:var(--color-primary,#297a92);border:none;color:#fff}.card-cta.primary:hover{background:#1e5f73;background:var(--color-primary-hover,#1e5f73);transform:translateY(-1px)}.card-cta.secondary{background:#0000;border:1px solid #e4e4e7;border:1px solid var(--color-border,#e4e4e7);color:#18181b;color:var(--color-text,#18181b)}.card-cta.secondary:hover{background:#f4f4f5;background:var(--color-bg-subtle,#f4f4f5);border-color:#a1a1aa;border-color:var(--color-text-tertiary,#a1a1aa)}.b2b-link{border-top:1px solid #f4f4f5;border-top:1px solid var(--color-border-subtle,#f4f4f5);margin-top:48px}.b2b-link p{color:#71717a;color:var(--color-text-secondary,#71717a)}.b2b-link a{color:var(--color-primary,#297a92)}.celebration-overlay{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:24px;position:fixed;right:0;top:0;z-index:10000}.celebration-modal{animation:modalSlideUp .3s ease;background:#fff;background:var(--color-bg-elevated,#fff);border-radius:24px;box-shadow:0 24px 48px #0003;max-width:400px;padding:40px 32px;text-align:center;width:100%}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.celebration-icon{font-size:48px;margin-bottom:16px}.celebration-title{color:#18181b;color:var(--color-text,#18181b);font-size:24px;font-weight:700;margin:0 0 8px}.celebration-subtitle{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:17px;line-height:1.5;margin:0 0 24px}.celebration-stats{background:#f4f4f5;background:var(--color-bg-subtle,#f4f4f5);border-radius:16px;margin-bottom:24px;padding:20px}.celebration-stat{display:flex;font-size:15px;justify-content:space-between;padding:8px 0}.celebration-stat-label{color:#71717a;color:var(--color-text-secondary,#71717a)}.celebration-stat-value{color:#18181b;color:var(--color-text,#18181b);font-weight:600}.celebration-features{margin-bottom:24px;text-align:left}.celebration-features p{color:#a1a1aa;color:var(--color-text-tertiary,#a1a1aa);font-size:14px;margin:0 0 12px}.celebration-features ul{list-style:none;margin:0;padding:0}.celebration-features li{align-items:center;color:#18181b;color:var(--color-text,#18181b);display:flex;font-size:15px;gap:8px;padding:8px 0}.celebration-features li:before{color:#10b981;content:"✓";font-weight:600}.celebration-cta{background:#297a92;background:var(--color-primary,#297a92);border:none;border-radius:14px;color:#fff;cursor:pointer;font-size:17px;font-weight:600;margin-bottom:12px;padding:16px 24px;transition:all .15s ease;width:100%}.celebration-cta:hover:not(:disabled){background:#1e5f73;background:var(--color-primary-hover,#1e5f73);transform:translateY(-1px)}.celebration-cta:disabled{cursor:not-allowed;opacity:.6}.celebration-cta-hint{color:#a1a1aa;color:var(--color-text-tertiary,#a1a1aa);font-size:13px;margin:0 0 16px}.celebration-dismiss{background:none;border:none;color:#71717a;color:var(--color-text-secondary,#71717a);cursor:pointer;font-size:15px;padding:8px 16px}.celebration-dismiss:hover{color:#18181b;color:var(--color-text,#18181b)}.celebration-error{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#991b1b;font-size:14px;margin-bottom:16px;padding:12px 16px}.success-card{background:#fff;background:var(--color-bg-elevated,#fff);border-radius:24px;box-shadow:0 12px 32px #00000014;max-width:480px;overflow:hidden;padding:48px 40px;position:relative;text-align:center;width:100%}.success-icon{animation:successPop .5s ease;background:#dcfce7;font-size:40px;height:80px;margin:0 auto 24px;width:80px}@keyframes successPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.success-title{color:#18181b;color:var(--color-text,#18181b);font-size:28px;font-weight:700;margin:0 0 8px}.success-subtitle{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:17px;line-height:1.5;margin:0 0 32px}.success-details{background:#f4f4f5;background:var(--color-bg-subtle,#f4f4f5);border-radius:16px;margin-bottom:32px;padding:20px;text-align:left}.success-detail-row{border-bottom:1px solid #e4e4e7;border-bottom:1px solid var(--color-border-subtle,#e4e4e7);display:flex;justify-content:space-between;padding:10px 0}.success-detail-row:last-child{border-bottom:none}.success-detail-label{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:14px}.success-detail-value{color:#18181b;color:var(--color-text,#18181b);font-size:14px;font-weight:600}.success-cta{background:#297a92;background:var(--color-primary,#297a92);border:none;border-radius:14px;color:#fff;cursor:pointer;font-size:17px;font-weight:600;padding:16px 24px;transition:all .15s ease;width:100%}.success-cta:hover{background:#1e5f73;background:var(--color-primary-hover,#1e5f73);box-shadow:0 8px 20px #297a9240;transform:translateY(-2px)}.confetti-container{bottom:0;left:0;overflow:hidden;pointer-events:none;position:absolute;right:0;top:0}.confetti{animation:confettiFall 3s ease-out forwards;background:#297a92;background:var(--color-primary,#297a92);height:10px;position:absolute;width:10px}@keyframes confettiFall{0%{opacity:1;transform:translateY(-100%) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(2turn)}}.cancel-card{background:#fff;background:var(--color-bg-elevated,#fff);border-radius:24px;box-shadow:0 12px 32px #00000014;max-width:480px;padding:48px 40px;text-align:center;width:100%}.cancel-icon{align-items:center;background:#f4f4f5;background:var(--color-bg-subtle,#f4f4f5);border-radius:50%;display:flex;font-size:40px;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.cancel-title{color:#18181b;color:var(--color-text,#18181b);font-size:24px;font-weight:700;margin:0 0 8px}.cancel-subtitle{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:17px;line-height:1.5;margin:0 0 32px}.cancel-cta{background:#297a92;background:var(--color-primary,#297a92);border:none;border-radius:14px;color:#fff;cursor:pointer;font-size:17px;font-weight:600;margin-bottom:12px;padding:16px 24px;transition:all .15s ease;width:100%}.cancel-cta:hover{background:#1e5f73;background:var(--color-primary-hover,#1e5f73)}.cancel-secondary{background:none;border:none;color:#71717a;color:var(--color-text-secondary,#71717a);cursor:pointer;font-size:15px;padding:8px 16px}.cancel-secondary:hover{color:#18181b;color:var(--color-text,#18181b)}.payment-loading{align-items:center;display:flex;flex-direction:column;gap:16px}.payment-spinner{animation:spin .8s linear infinite;border:3px solid #e4e4e7;border-top-color:#297a92;border:3px solid var(--color-border,#e4e4e7);border-radius:50%;border-top-color:var(--color-primary,#297a92);height:40px;width:40px}.payment-loading-text{color:#71717a;color:var(--color-text-secondary,#71717a);font-size:16px}@media (max-width:900px){.pricing-grid{grid-template-columns:1fr;margin:0 auto;max-width:400px}.price-card.featured{order:-1;transform:none}.price-card.featured:hover{transform:translateY(-4px)}}@media (max-width:480px){.pricing-page{padding:60px 16px}.price-card{padding:24px}.card-price{font-size:40px}.cancel-card,.celebration-modal,.success-card{border-radius:20px;padding:32px 24px}}[data-theme=dark] .cancel-card,[data-theme=dark] .celebration-modal,[data-theme=dark] .price-card,[data-theme=dark] .success-card{background:var(--color-bg-elevated)}[data-theme=dark] .billing-option.active{background:var(--color-bg-subtle)}[data-theme=dark] .billing-savings{background:#10b98133;color:#34d399}[data-theme=dark] .success-icon{background:#10b98133}@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.22"}.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;text-align:center}.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}:root,[data-theme=light]{--bg-primary:#f5f9fa;--bg-secondary:#fff;--bg-tertiary:#ecf3f2;--bg-elevated:#fff;--bg-glass:#ffffffd9;--text-primary:#3d4954;--text-secondary:#76909f;--text-tertiary:#8d7f88;--color-primary-hover:#1e5f73;--color-primary-light:#42909e;--color-primary-blue:#3b82b8;--color-deep-purple:#391339;--color-dark-slate:#3d4954;--color-vibrant-orange:#ea6d37;--color-teal-blue:#297a92;--color-pure-white:#fff;--color-nearly-white:#f5f9fa;--status-active:#30d158;--status-warning:#ff9f0a;--status-error:#ff453a;--border-subtle:#0000000f;--border-default:#0000001a;--border-strong:#0003;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 24px #0000001f;--shadow-glow:0 0 20px #297a9233;--shadow-inner:inset 0 2px 4px #0000000d;--voice-box-gradient:linear-gradient(135deg,#297a92,#3b82b8);--voice-box-active-gradient:linear-gradient(135deg,#3b82b8,#297a92)}[data-theme=dark]{--bg-primary:#0a0a0b;--bg-secondary:#1c1c1e;--bg-tertiary:#2c2c2e;--bg-elevated:#3a3a3c;--bg-glass:#1c1c1ed9;--text-primary:#fff;--text-secondary:#a1a1a6;--text-tertiary:#636366;--color-primary:#42909e;--color-primary-hover:#5ba3b0;--color-primary-light:#6db4cd;--color-primary-subtle:#42909e26;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#fff3;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow:0 0 24px #42909e66;--shadow-inner:inset 0 2px 4px #0000004d;--voice-box-gradient:linear-gradient(135deg,#42909e,#5ba3b0);--voice-box-active-gradient:linear-gradient(135deg,#5ba3b0,#42909e)}:root{--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px;--border-radius-xl:20px;--border-radius-full:9999px;--transition-default:0.2s ease-in-out;--transition-slow:0.3s ease-in-out;--transition-fast:0.15s ease}.tutor-interface-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f9fa;background-color:var(--bg-primary);color:#3d4954;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;font-family:var(--font-family);min-height:100vh;transition:background-color .3s ease,color .3s ease}.tutor-interface-container,.voice-first-interface{align-items:center;display:flex;flex-direction:column;justify-content:center}.voice-first-interface{background:#f5f9fa;background:var(--bg-primary);box-sizing:border-box;height:100%;line-height:24px;min-height:80vh;overflow:hidden;padding:0;position:relative;transition:background-color .3s ease;width:100%}.simplified-header{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;background:var(--bg-glass);border-bottom:1px solid #0000000f;border-bottom:1px solid var(--border-subtle);border-radius:0;color:#3d4954;color:var(--text-primary);padding:1rem;padding:var(--spacing-md);position:relative;text-align:center;transition:background-color .3s ease,border-color .3s ease;width:100%;z-index:2}[data-theme=light] .simplified-header{background:linear-gradient(135deg,#3d4954,#391339);background:linear-gradient(135deg,var(--color-dark-slate),var(--color-deep-purple));border-bottom:none;box-shadow:0 4px 12px #0000001a;box-shadow:var(--shadow-md);color:#fff}.simplified-header h1{align-items:center;color:inherit;display:flex;font-size:1.25rem;font-size:var(--font-size-xl);font-weight:600;gap:.25rem;gap:var(--spacing-xs);justify-content:center;margin:0}.simplified-header h1 span{color:#ea6d37;color:var(--color-vibrant-orange)}[data-theme=dark] .simplified-header h1 span{color:#297a92;color:var(--color-primary)}.voice-content{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:500px;overflow:visible;position:relative;text-align:center;width:100%;z-index:1}.voice-assistant-box{border:1px solid #ffffff1a;box-shadow:0 5px 15px #0003;height:250px;margin-left:auto;margin-right:auto;margin-top:50px;max-width:90%;transform-origin:center;transition:transform .5s ease,border-radius .5s ease,box-shadow .5s ease;width:600px}.voice-assistant-box.active{background:linear-gradient(135deg,#3b82b8,#297a92);border:3px solid #ffffff4d;box-shadow:0 0 0 15px #3b82b81a,0 0 40px #297a9233;height:280px;margin:0 auto;position:relative;transform-origin:center;width:280px;z-index:10}.voice-assistant-name-display{align-items:center;background-color:#ffffff1a;border:1px solid #fff3;border-radius:30px;box-shadow:0 2px 8px #0003;color:#fff;display:flex;justify-content:center;left:50%;padding:10px 30px;pointer-events:none;position:absolute;top:25%;transform:translate(-50%,-50%);transform-origin:top;transition:transform .5s ease,opacity .5s ease;will-change:transform;z-index:1}.voice-assistant-box.active .voice-assistant-name-display{opacity:0;transform:translate(-50%,-80%)}.voice-assistant-name-text{color:#fff;font-size:2.5rem;font-weight:700;letter-spacing:.02em;margin-left:8px;text-shadow:0 2px 4px #0003;-webkit-user-select:none;user-select:none}.call-controls{gap:30px;margin-top:20px;position:relative;transition:opacity .5s ease}.control-button{border:2px solid #fff;box-shadow:0 5px 15px #0003;height:70px;width:70px}.control-button:hover{transform:scale(1.1)}.mute-button{background-color:var(--color-slate-gray);color:#fff}.disconnect-button{background-color:#e74c3c;color:#fff}.status-indicator{border-radius:9999px;border-radius:var(--border-radius-full);box-shadow:0 1px 3px #00000014;box-shadow:var(--shadow-sm);color:#fff;color:var(--color-pure-white);font-size:.875rem;font-size:var(--font-size-sm);left:50%;padding:.25rem 1rem;padding:var(--spacing-xs) var(--spacing-md);position:absolute;top:1rem;top:var(--spacing-md);transform:translateX(-50%);z-index:5}.status-indicator.speaking{background-color:#297a92;background-color:var(--color-teal-blue)}.status-indicator.processing{background-color:#ea6d37;background-color:var(--color-vibrant-orange)}.voice-button-container{align-items:center;box-sizing:border-box;display:flex;height:180px;justify-content:center;margin:0;position:relative;width:180px}.voice-button-container.speaking{animation:pulse 1.5s infinite}.reward-shimmer{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#fff0,#ffffff80 50%,#fff0);background-size:200% 100%}.voice-circle-button{align-items:center;background:linear-gradient(135deg,#3b82b8,#391339);background:linear-gradient(135deg,var(--color-primary-blue),var(--color-deep-purple));border:none;border-radius:50%;box-shadow:0 4px 12px #0000001a;box-shadow:var(--shadow-md);box-sizing:border-box;color:#fff;color:var(--color-pure-white);cursor:pointer;display:flex;height:160px;justify-content:center;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:160px}.voice-circle-button:hover{box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-lg);transform:scale(1.05)}.voice-circle-button:active{transform:scale(.95)}.voice-circle-button.disabled{cursor:not-allowed;opacity:.6}.voice-circle-icon{color:#fff;color:var(--color-pure-white);font-size:3rem}.voice-assistant-name{bottom:-40px;color:#297a92;color:var(--color-teal-blue);font-size:1.25rem;font-size:var(--font-size-xl);font-weight:500;position:absolute;text-align:center;width:100%}.minimal-input-form{display:flex;justify-content:center;margin-top:80px;max-width:600px;opacity:.9;position:relative;transition:all .3s ease;width:90%;z-index:20}.minimal-input-form input{background-color:#fff;background-color:var(--color-pure-white);border:2px solid var(--color-pale-blue);border-radius:9999px;border-radius:var(--border-radius-full);box-shadow:0 4px 10px #0000001a;color:#3d4954;color:var(--color-dark-slate);font-size:1rem;font-size:var(--font-size-base);height:50px;outline:none;padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg);padding-right:45px;text-align:center;transition:all .3s ease;width:100%}.minimal-input-form input:focus{border-color:#297a92;border-color:var(--color-teal-blue);box-shadow:0 0 0 3px #abcaca4d,inset 0 1px 2px #0000000d}.minimal-input-form button{align-items:center;border:none;border-radius:50%;box-shadow:0 2px 5px #0003;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;height:35px;justify-content:center;padding:0;position:absolute;right:8px;top:calc(50% - 3px);transform:translateY(-50%);transition:all .2s ease;width:35px}.minimal-input-form button span[role=img]{align-items:center;display:flex;height:100%;justify-content:center;margin-top:-2px;padding-left:1px;transform:translateY(-1px);width:100%}.minimal-input-form button:hover:not(:disabled){top:calc(50% - 2px);transform:translateY(-50%) scale(1.05)}.minimal-input-form button:active:not(:disabled){top:calc(50% - 2px);transform:translateY(-50%) scale(.95)}.minimal-input-form button:disabled{background-color:var(--color-slate-gray);box-shadow:none;cursor:not-allowed}.minimal-input-form button:not(:disabled){background-color:#ea6d37;background-color:var(--color-vibrant-orange);box-shadow:0 1px 3px #00000014;box-shadow:var(--shadow-sm)}.message-history{display:flex;flex-direction:column;gap:1rem;gap:var(--spacing-md);margin-left:auto;margin-right:auto;margin-top:2rem;margin-top:var(--spacing-xl);max-width:700px;opacity:.9;overflow-y:auto;transition:max-height .5s ease,padding .3s ease,opacity .3s ease;width:100%}.message-history-header{color:var(--color-slate-gray);font-size:.875rem;font-size:var(--font-size-sm);margin-bottom:.5rem;margin-bottom:var(--spacing-sm);text-align:center}.message{border-radius:16px;border-radius:var(--border-radius-lg);box-shadow:0 1px 3px #00000014;box-shadow:var(--shadow-sm);max-width:95%;padding:1rem;padding:var(--spacing-md);position:relative}.message.tutor{align-self:flex-start;background-color:var(--color-off-white);border:1px solid var(--color-pale-blue)}.message.student{align-self:flex-end;background-color:#fff;background-color:var(--color-pure-white);border:1px solid var(--color-very-light-gray)}.message.system{background-color:#4158d00d;border:1px solid #4158d033}.message-avatar{align-items:center;border:2px solid #fff;border:2px solid var(--color-pure-white);border-radius:50%;color:#fff;color:var(--color-pure-white);display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:absolute;top:-8px;width:24px;z-index:2}.message.tutor .message-avatar{background-color:#391339;background-color:var(--color-deep-purple);left:-8px}.message.student .message-avatar{background-color:#297a92;background-color:var(--color-teal-blue);right:-8px}.message-content{color:#3d4954;color:var(--color-dark-slate);font-size:1rem;font-size:var(--font-size-base);line-height:1.5;white-space:pre-wrap}.typing-indicator{display:flex;gap:8px}.typing-dot{background-color:#297a92;background-color:var(--color-teal-blue);border-radius:50%;height:8px;width:8px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.typing-dot:first-child{animation:bounce 1.5s infinite}.typing-dot:nth-child(2){animation:bounce 1.5s .2s infinite}.typing-dot:nth-child(3){animation:bounce 1.5s .4s infinite}.minimal-footer{color:var(--color-slate-gray);font-size:.75rem;font-size:var(--font-size-xs);margin-top:120px;padding:1rem;padding:var(--spacing-md);position:relative;text-align:center}.footer-controls{align-items:center;display:flex;gap:.5rem;gap:var(--spacing-sm);justify-content:center}.footer-divider{background-color:var(--color-very-light-gray);height:16px;width:1px}.accessibility-button{align-items:center;background:none;border:none;border-radius:8px;border-radius:var(--border-radius-sm);cursor:pointer;display:flex;font-size:.75rem;font-size:var(--font-size-xs);gap:4px;padding:4px 8px;transition:all .2s ease}.accessibility-button.high-contrast{color:#ea6d37;color:var(--color-vibrant-orange)}.accessibility-button:not(.high-contrast){color:var(--color-slate-gray)}.footer-branding{margin-top:.5rem;margin-top:var(--spacing-sm)}.footer-branding span{font-weight:500}body.visualization-active .voice-first-interface{max-width:55%;transition:max-width .4s cubic-bezier(.32,.72,0,1)}body.visualization-active .tutor-interface{transition:width .4s cubic-bezier(.32,.72,0,1);width:55%}@media (max-width:768px){.simplified-header h1{font-size:1.125rem;font-size:var(--font-size-lg)}.central-voice-area{padding:1rem;padding:var(--spacing-md)}body.visualization-active .voice-first-interface{max-width:100%}body.visualization-active .tutor-interface{width:100%}}@media (min-width:769px) and (max-width:1024px){body.visualization-active .voice-first-interface{max-width:45%}body.visualization-active .tutor-interface{width:45%}}@media (min-width:1400px){body.visualization-active .voice-first-interface{max-width:60%}body.visualization-active .tutor-interface{width:60%}}:root{--tappy-primary:#297a92;--tappy-secondary:#42909e;--tappy-accent:#6db4cd;--tappy-gradient:linear-gradient(135deg,#297a92,#42909e 50%,#6db4cd);--bg-primary:#0a0a0b;--bg-secondary:#1c1c1e;--bg-tertiary:#2c2c2e;--bg-elevated:#3a3a3c;--bg-glass:#1c1c1ed9;--bg-glass-light:#2c2c2ecc;--text-primary:#fff;--text-secondary:#a1a1a6;--text-tertiary:#636366;--text-quaternary:#48484a;--status-active:#30d158;--status-warning:#ff9f0a;--status-error:#ff453a;--status-info:#0a84ff;--social-online:#30d158;--social-studying:#bf5af2;--social-away:#ff9f0a;--social-offline:#636366;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#fff3;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-xl:0 12px 48px #0009;--shadow-glow:0 0 20px #297a9266;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--radius-full:9999px;--font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,sans-serif;--font-mono:"SF Mono","Fira Code","Consolas",monospace;--transition-fast:150ms ease;--transition-normal:200ms ease;--transition-slow:300ms ease;--spring:cubic-bezier(0.4,0,0.2,1);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px)}.tutor-mobile{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;background:#0a0a0b;background:var(--bg-primary);color:#fff;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);font-size:16px;line-height:1.5;min-height:100vh;min-height:100dvh;overscroll-behavior:none;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);touch-action:manipulation;width:100%}.tutor-mobile__container{display:flex;flex-direction:column;min-height:100%;padding:16px;padding:var(--spacing-md);padding-bottom:116px;padding-bottom:calc(var(--spacing-md) + 100px)}.tutor-mobile__content{flex:1 1;gap:24px;gap:var(--spacing-lg)}.tutor-mobile__center,.tutor-mobile__content{align-items:center;display:flex;flex-direction:column;justify-content:center}.tutor-mobile__center{gap:16px;gap:var(--spacing-md);max-width:400px;text-align:center;width:100%}.tutor-mobile__avatar{align-items:center;animation:pulse-glow 3s ease-in-out infinite;background:linear-gradient(135deg,#297a92,#42909e 50%,#6db4cd);background:var(--tappy-gradient);border:4px solid #ffffff26;border-radius:50%;box-shadow:0 0 20px #297a9266,0 8px 32px #00000080;box-shadow:var(--shadow-glow),var(--shadow-lg);display:flex;height:120px;justify-content:center;width:120px}.tutor-mobile__avatar svg{color:#fff;height:48px;width:48px}.tutor-mobile__title{color:#fff;color:var(--text-primary);font-size:28px;font-weight:700;letter-spacing:-.02em;margin:0}.tutor-mobile__subtitle{color:#a1a1a6;color:var(--text-secondary);font-size:17px;font-weight:400;margin:0}.tutor-mobile__cta{align-items:center;background:linear-gradient(135deg,#297a92,#42909e 50%,#6db4cd);background:var(--tappy-gradient);border:none;border-radius:28px;border-radius:var(--radius-2xl);box-shadow:0 4px 16px #297a9266,inset 0 0 0 1px #ffffff1a;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:600;gap:8px;gap:var(--spacing-sm);height:56px;justify-content:center;letter-spacing:-.01em;max-width:320px;transition:transform .15s ease,box-shadow .15s ease;transition:transform var(--transition-fast),box-shadow var(--transition-fast);width:100%}.tutor-mobile__cta:active{box-shadow:0 2px 8px #297a924d;transform:scale(.97)}.tutor-mobile__cta:disabled{cursor:not-allowed;opacity:.5}.tutor-mobile__cta--secondary{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1c1c1ed9;background:var(--bg-glass);border:1px solid #ffffff1a;border:1px solid var(--border-default);box-shadow:0 4px 16px #0006;box-shadow:var(--shadow-md)}.tutor-mobile__actions{grid-gap:16px;grid-gap:var(--spacing-md);display:grid;gap:16px;gap:var(--spacing-md);grid-template-columns:1fr 1fr;max-width:320px;width:100%}.tutor-mobile__action-btn{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1c1c1ed9;background:var(--bg-glass);border:1px solid #ffffff0f;border:1px solid var(--border-subtle);border-radius:20px;border-radius:var(--radius-xl);color:#fff;color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;font-size:15px;font-weight:500;gap:8px;gap:var(--spacing-sm);justify-content:center;padding:24px 16px;padding:var(--spacing-lg) var(--spacing-md);transition:all .2s ease;transition:all var(--transition-normal)}.tutor-mobile__action-btn:active{background:#2c2c2ecc;background:var(--bg-glass-light);transform:scale(.97)}.tutor-mobile__action-btn svg{color:#6db4cd;color:var(--tappy-accent);height:28px;width:28px}.tutor-mobile__social{margin-top:32px;margin-top:var(--spacing-xl);max-width:400px;width:100%}.tutor-mobile__social-header{align-items:center;display:flex;gap:8px;gap:var(--spacing-sm);margin-bottom:16px;margin-bottom:var(--spacing-md);padding:0 8px;padding:0 var(--spacing-sm)}.tutor-mobile__social-title{color:#636366;color:var(--text-tertiary);font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.tutor-mobile__social-count{color:#30d158;color:var(--social-online);font-size:13px;font-weight:500}.tutor-mobile__friends-list{display:flex;flex-direction:column;gap:8px;gap:var(--spacing-sm)}.tutor-mobile__friend-card{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1c1c1ed9;background:var(--bg-glass);border:1px solid #ffffff0f;border:1px solid var(--border-subtle);border-radius:16px;border-radius:var(--radius-lg);cursor:pointer;display:flex;gap:16px;gap:var(--spacing-md);padding:16px;padding:var(--spacing-md);transition:all .2s ease;transition:all var(--transition-normal)}.tutor-mobile__friend-card:active{background:#2c2c2ecc;background:var(--bg-glass-light);transform:scale(.98)}.tutor-mobile__friend-avatar{align-items:center;background:#2c2c2e;background:var(--bg-tertiary);border-radius:50%;color:#a1a1a6;color:var(--text-secondary);display:flex;font-size:18px;font-weight:600;height:44px;justify-content:center;position:relative;width:44px}.tutor-mobile__friend-status{background:#30d158;background:var(--social-online);border:3px solid #1c1c1e;border:3px solid var(--bg-secondary);border-radius:50%;bottom:0;box-shadow:0 0 8px #30d158;box-shadow:0 0 8px var(--social-online);height:14px;position:absolute;right:0;width:14px}.tutor-mobile__friend-status--studying{background:#bf5af2;background:var(--social-studying);box-shadow:0 0 8px #bf5af2;box-shadow:0 0 8px var(--social-studying)}.tutor-mobile__friend-info{flex:1 1}.tutor-mobile__friend-name{color:#fff;color:var(--text-primary);font-size:15px;font-weight:600;margin:0 0 2px}.tutor-mobile__friend-subject{color:#a1a1a6;color:var(--text-secondary);font-size:13px;margin:0}.tutor-mobile__friend-join{background:#297a92;background:var(--tappy-primary);border:none;border-radius:9999px;border-radius:var(--radius-full);color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;padding:var(--spacing-sm) var(--spacing-md)}.tutor-mobile__session{display:flex;flex:1 1;flex-direction:column;width:100%}.tutor-mobile__video-area{background:#1c1c1e;background:var(--bg-secondary);border-radius:20px;border-radius:var(--radius-xl);flex:1 1;min-height:300px;overflow:hidden;position:relative}.tutor-mobile__video-main{height:100%;object-fit:cover;width:100%}.tutor-mobile__video-pip{background:#2c2c2e;background:var(--bg-tertiary);border:3px solid #fff3;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 8px 32px #00000080;box-shadow:var(--shadow-lg);cursor:move;height:140px;overflow:hidden;position:absolute;right:16px;right:var(--spacing-md);top:16px;top:var(--spacing-md);transition:border-color .15s ease;transition:border-color var(--transition-fast);width:100px}.tutor-mobile__video-pip--speaking{border-color:#30d158;border-color:var(--status-active);box-shadow:0 0 0 4px #30d1584d,0 8px 32px #00000080;box-shadow:0 0 0 4px #30d1584d,var(--shadow-lg)}.tutor-mobile__status-bar{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1c1c1ed9;background:var(--bg-glass);border-radius:16px;border-radius:var(--radius-lg);display:flex;gap:8px;gap:var(--spacing-sm);justify-content:center;margin-top:16px;margin-top:var(--spacing-md);padding:16px;padding:var(--spacing-md)}.tutor-mobile__status-indicator{animation:pulse 2s ease-in-out infinite;background:#30d158;background:var(--status-active);border-radius:50%;height:10px;width:10px}.tutor-mobile__status-text{color:#a1a1a6;color:var(--text-secondary);font-size:14px;font-weight:500}.tutor-mobile__code-toast{background:#1c1c1e;background:var(--bg-secondary);border:1px solid #ffffff1a;border:1px solid var(--border-default);border-radius:20px;border-radius:var(--radius-xl);bottom:120px;box-shadow:0 12px 48px #0009;box-shadow:var(--shadow-xl);left:16px;left:var(--spacing-md);padding:24px;padding:var(--spacing-lg);position:fixed;right:16px;right:var(--spacing-md);z-index:1001}.tutor-mobile__code-label{color:#a1a1a6;color:var(--text-secondary);font-size:14px;font-weight:500;margin-bottom:8px;margin-bottom:var(--spacing-sm);text-align:center}.tutor-mobile__code-digits{font-feature-settings:"tnum";color:#fff;color:var(--text-primary);font-family:SF Mono,Fira Code,Consolas,monospace;font-family:var(--font-mono);font-size:48px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:12px;text-align:center}.tutor-mobile__code-actions{grid-gap:16px;grid-gap:var(--spacing-md);display:grid;gap:16px;gap:var(--spacing-md);grid-template-columns:1fr 1fr;margin-top:24px;margin-top:var(--spacing-lg)}.tutor-mobile__code-btn{border:none;border-radius:16px;border-radius:var(--radius-lg);cursor:pointer;font-size:15px;font-weight:600;padding:16px;padding:var(--spacing-md);transition:all .15s ease;transition:all var(--transition-fast)}.tutor-mobile__code-btn--copy{background:#30d158;background:var(--status-active);color:#fff}.tutor-mobile__code-btn--share{background:#0a84ff;background:var(--status-info);color:#fff}.tutor-mobile__code-close{background:#2c2c2e;background:var(--bg-tertiary);border:none;border-radius:50%;color:#a1a1a6;color:var(--text-secondary);cursor:pointer;font-size:18px;height:32px;position:absolute;right:16px;right:var(--spacing-md);top:16px;top:var(--spacing-md);width:32px}.tutor-mobile__code-close,.tutor-mobile__connecting{align-items:center;display:flex;justify-content:center}.tutor-mobile__connecting{flex-direction:column;gap:24px;gap:var(--spacing-lg)}.tutor-mobile__spinner{animation:spin 1s linear infinite;border:3px solid #2c2c2e;border-top-color:#297a92;border:3px solid var(--bg-tertiary);border-radius:50%;border-top-color:var(--tappy-primary);height:48px;width:48px}.tutor-mobile__connecting-text{color:#a1a1a6;color:var(--text-secondary);font-size:17px;font-weight:500}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #297a9266,0 8px 32px #00000080}50%{box-shadow:0 0 40px #297a9299,0 8px 32px #00000080}}@keyframes slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (min-width:768px){.tutor-mobile__avatar{height:140px;width:140px}.tutor-mobile__avatar svg{height:56px;width:56px}.tutor-mobile__title{font-size:32px}.tutor-mobile__cta{font-size:18px;height:60px;max-width:360px}.tutor-mobile__actions{max-width:360px}.tutor-mobile__social{max-width:500px}}@media (min-width:1024px){.tutor-mobile--light{--bg-primary:#f5f9fa;--bg-secondary:#fff;--bg-tertiary:#f0f4f5;--bg-glass:#ffffffd9;--text-primary:#0f172a;--text-secondary:#64748b;--border-subtle:#0000000f;--border-default:#0000001a}}@media (max-width:374px){.tutor-mobile__avatar{height:100px;width:100px}.tutor-mobile__title{font-size:24px}.tutor-mobile__cta{font-size:16px;height:52px}.tutor-mobile__code-digits{font-size:36px;letter-spacing:8px}}@media (orientation:landscape) and (max-height:500px){.tutor-mobile__container{flex-direction:row;gap:32px;gap:var(--spacing-xl)}.tutor-mobile__center{flex-direction:row;max-width:none}.tutor-mobile__avatar{height:80px;width:80px}}@media (prefers-reduced-motion:reduce){.tutor-mobile__avatar,.tutor-mobile__status-indicator{animation:none}.tutor-mobile__action-btn,.tutor-mobile__cta,.tutor-mobile__friend-card{transition:none}}@media (prefers-contrast:high){:root{--border-subtle:#ffffff4d;--border-default:#ffffff80;--text-secondary:#d1d1d6}}body.visualization-active .tutor-mobile{transition:width .4s cubic-bezier(.32,.72,0,1);width:55%}@media (max-width:768px){body.visualization-active .tutor-mobile{width:100%}}@media (min-width:769px) and (max-width:1024px){body.visualization-active .tutor-mobile{width:45%}}@media (min-width:1400px){body.visualization-active .tutor-mobile{width:60%}}.tutor-interface{--color-primary:#297a92;--color-primary-dark:#1a3e48;--color-primary-light:#388899;--color-primary-bright:#42909e;--color-aqua:#4d99a5;--color-sky:#6db4cd;--color-coral:#ea6d37;--color-gold:#ecc962;--color-success:#10b981;--color-error:#ef4444;--color-text:#3d4954;--color-text-secondary:#76909f;--color-text-muted:#8d7f88;--color-bg:#fcfdfe;--color-bg-elevated:#fff;--color-bg-subtle:#f5f9fa;--color-bg-gradient:linear-gradient(180deg,#f5f9fa,#ecf3f2);--color-border:#0000000f;--color-border-subtle:#00000008;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000f;--shadow-lg:0 4px 16px #00000014;--shadow-primary:0 4px 12px #297a9226;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-full:9999px;-webkit-font-smoothing:antialiased;background:var(--color-bg-gradient);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;min-height:100vh}.tutor-header{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;left:0;padding:var(--space-md) var(--space-lg);position:fixed;right:0;top:0;z-index:100}.tutor-header-logo{height:28px;width:auto}.tutor-header-center{align-items:center;display:flex;gap:var(--space-md)}.tutor-header-right{align-items:center;display:flex;gap:var(--space-sm)}.header-icon-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:center;padding:8px 14px;transition:all .15s ease}.header-icon-btn:hover{background:var(--color-bg-subtle);color:var(--color-text)}.header-icon-btn svg{height:18px;width:18px}.friends-online-widget{align-items:center;background:var(--color-bg-subtle);border:none;border-radius:var(--radius-full);cursor:pointer;display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);transition:all .15s ease}.friends-online-widget:hover{background:var(--color-bg-elevated);box-shadow:var(--shadow-sm)}.friends-online-pulse{animation:pulse 2s ease-in-out infinite;background:var(--color-success);border-radius:50%;height:8px;width:8px}@keyframes statusPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.15;transform:scale(1.8)}}.friends-online-text{color:var(--color-text);font-size:14px;font-weight:500}.friends-online-count{color:var(--color-text-secondary);font-size:13px}.friends-online-arrow{color:var(--color-text-muted);margin-left:var(--space-xs)}.tutor-main{flex:1 1;justify-content:center;margin:0 auto;max-width:1200px;padding:calc(80px + var(--space-xl)) var(--space-lg) var(--space-2xl)}.tutor-main,.voice-card-container{align-items:center;display:flex;flex-direction:column;width:100%}.voice-card-container{gap:var(--space-xl);max-width:500px}.voice-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-sky));border:4px solid #ffffff80;border-radius:50%;box-shadow:var(--shadow-primary);display:flex;height:120px;justify-content:center;width:120px}.voice-avatar svg{color:#fff;height:48px;width:48px}.voice-intro{text-align:center}.voice-intro-title{color:var(--color-text);font-size:28px;font-weight:600;letter-spacing:-.02em;margin:0 0 var(--space-sm)}.voice-intro-subtitle{color:var(--color-text-secondary);font-size:16px;margin:0}.mode-buttons{width:100%}.mode-button,.mode-buttons{display:flex;gap:var(--space-md)}.mode-button{align-items:center;background:var(--color-bg-elevated);border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;flex:1 1;flex-direction:column;padding:var(--space-xl) var(--space-lg);transition:all .2s ease}.mode-button:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.mode-button.selected{box-shadow:0 0 0 1.5px var(--color-primary),var(--shadow-sm)}.mode-button-icon{align-items:center;color:var(--color-primary);display:flex;justify-content:center}.mode-button-icon,.mode-button-icon svg{height:48px;width:48px}.mode-button-title{color:var(--color-text);font-size:18px;font-weight:600;margin:0}.mode-button-desc{color:var(--color-text-secondary);font-size:13px;margin:0;text-align:center}.mode-button-badge{align-items:center;color:var(--color-primary);display:flex;font-size:11px;font-weight:500;gap:4px}.mode-button-badge svg{height:14px;width:14px}.join-friend-button{align-items:center;background:var(--color-bg-subtle);border:none;border-radius:var(--radius-md);color:var(--color-primary);cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:var(--space-sm);justify-content:center;margin-top:var(--space-md);padding:var(--space-md) var(--space-lg);transition:all .15s ease}.join-friend-button:hover{background:var(--color-bg-elevated);box-shadow:var(--shadow-sm)}.join-friend-button svg{height:20px;width:20px}.tutor-active-session{display:flex;flex:1 1;flex-direction:column;margin:0 auto;max-width:1400px;padding:calc(80px + var(--space-lg)) var(--space-lg) 100px;width:100%}.tutor-session-content{display:flex;flex:1 1;gap:var(--space-lg);min-height:0}.tutor-voice-area{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center}.tutor-panel-area{background:var(--color-bg-elevated);border:none;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-shrink:0;overflow:hidden;width:400px}.tutor-controls{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-top:1px solid var(--color-border);bottom:0;display:flex;justify-content:space-between;left:0;padding:var(--space-md) var(--space-lg);position:fixed;right:0;z-index:100}.tutor-controls-left,.tutor-controls-right{align-items:center;display:flex;gap:var(--space-md)}.participant-pill{align-items:center;background:var(--color-bg-subtle);border-radius:var(--radius-full);color:var(--color-text);display:flex;font-size:14px;font-weight:500;gap:var(--space-sm);padding:var(--space-sm) var(--space-md)}.participant-dot{border-radius:50%;height:8px;width:8px}.participant-dot.active{background:var(--color-success);box-shadow:0 0 8px #10b98180}.participant-dot.muted{background:var(--color-error)}.control-btn{border-radius:50%;height:48px;transition:all .15s ease;width:48px}.control-btn svg{color:#fff;height:24px;width:24px}.control-btn.primary{background:var(--color-primary)}.control-btn.primary:hover{background:var(--color-primary-dark);transform:scale(1.05)}.control-btn.danger{background:var(--color-error)}.control-btn.danger:hover{background:#dc2626;transform:scale(1.05)}.control-btn.active{background:var(--color-error)}.status-indicator{background:var(--color-bg-subtle);border:none;border-radius:var(--radius-full);color:var(--color-text-secondary);font-weight:500;padding:var(--space-sm) var(--space-md)}.mobile-only-menu-item{display:none}@media (max-width:768px){.tutor-interface{-webkit-overflow-scrolling:touch;min-height:100dvh;overflow-x:hidden;overflow-y:auto}.tutor-header{padding:var(--space-sm) var(--space-md);padding-top:max(var(--space-sm),env(safe-area-inset-top,0px))}.tutor-header-logo{height:24px}.friends-online-widget{padding:var(--space-xs) var(--space-sm)}.friends-online-text,.header-icon-btn.theme-toggle{display:none}.mobile-only-menu-item{display:flex!important}.tutor-header-right{gap:4px}.tutor-main{-webkit-overflow-scrolling:touch;min-height:auto;overflow-y:auto;padding:calc(70px + var(--space-lg)) var(--space-md) var(--space-xl);padding-bottom:max(var(--space-xl),env(safe-area-inset-bottom,0px))}.tutor-interface.mobile-call-active .tutor-main{min-height:calc(100dvh - 116px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));padding-top:calc(36px + env(safe-area-inset-top, 0px) + var(--space-md))}.voice-avatar{height:100px;width:100px}.voice-intro-title{font-size:24px}.mode-buttons{flex-direction:column}.mode-button{flex-direction:row;gap:var(--space-md);padding:var(--space-lg)}.mode-button-icon,.mode-button-icon svg{height:40px;width:40px}.tutor-panel-area{display:none}.tutor-controls{padding:var(--space-sm) var(--space-md);padding-bottom:max(var(--space-sm),env(safe-area-inset-bottom,0px))}.participant-pill span:not(.participant-dot){display:none}.control-btn{height:44px;width:44px}.tutor-interface.mobile-call-active .tutor-footer{display:none!important}}.streak-progress-bar{align-items:center;background:linear-gradient(135deg,#fbbf2414,#f59e0b0a);border:none;border-radius:12px;display:flex;gap:12px;padding:10px 16px;width:100%}.quick-actions-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;width:100%}@media (max-width:480px){.quick-actions-container{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:4px 0;scrollbar-width:none}.quick-actions-container::-webkit-scrollbar{display:none}}.quick-action-chip{align-items:center;background:var(--color-bg-elevated);border:none;border-radius:100px;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-shrink:0;gap:6px;padding:10px 16px;transition:all .15s ease;white-space:nowrap}.quick-action-chip:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.quick-action-chip:active{transform:scale(.98)}.friends-section-card{background:var(--color-bg-elevated);border:none;border-radius:16px;box-shadow:var(--shadow-sm);overflow:hidden;width:100%}.friends-section-header{align-items:center;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;padding:14px 16px}.friends-empty-state{align-items:center;display:flex;flex-direction:column;gap:12px;padding:16px 8px}.friend-row{align-items:center;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;padding:12px 16px;transition:background .15s ease}.friend-row:hover{background:var(--color-bg-subtle)}.friend-row:last-child{border-bottom:none}.friend-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-sky));border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:600;height:36px;justify-content:center;width:36px}.friend-info{flex:1 1;margin-left:12px}.friend-name{color:var(--color-text);font-size:14px;font-weight:500}.friend-subject{align-items:center;color:var(--color-text-secondary);display:flex;font-size:12px;gap:4px}.friend-online-dot{animation:pulse 2s ease-in-out infinite;background:var(--color-success);border-radius:50%;height:8px;width:8px}.friend-join-btn{background:linear-gradient(135deg,var(--color-primary),#3d9bb0);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .15s ease}.friend-join-btn:hover{box-shadow:0 4px 12px #297a924d;transform:scale(1.05)}[data-theme=dark] .quick-action-chip{background:var(--color-bg-elevated);color:var(--color-text)}[data-theme=dark] .friends-section-card{background:var(--color-bg-elevated)}[data-theme=dark] .friend-row,[data-theme=dark] .friends-section-header{border-color:var(--color-border-subtle)}[data-theme=dark] .friend-row:hover{background:var(--color-bg-subtle)}[data-theme=dark] .streak-progress-bar{background:linear-gradient(135deg,#fbbf2426,#f59e0b1a);border:none}[data-theme=dark] .tutor-interface{--color-text:#fff;--color-text-secondary:#a1a1a6;--color-text-muted:#636366;--color-bg:#0a0a0b;--color-bg-elevated:#1c1c1e;--color-bg-subtle:#2c2c2e;--color-bg-gradient:linear-gradient(180deg,#0a0a0b,#1c1c1e);--color-border:#ffffff0f;--color-border-subtle:#ffffff08;--shadow-sm:0 1px 3px #0006;--shadow-md:0 2px 8px #00000080;--shadow-lg:0 4px 16px #0009}[data-theme=dark] .tutor-header{background:#09090bd9}[data-theme=dark] .tutor-controls{background:#09090be6}[data-theme=dark] .mode-button{background:#1c1c1e}[data-theme=dark] .mode-button:hover{background:#2c2c2e}[data-theme=dark] .mode-button.selected{box-shadow:0 0 0 1.5px var(--color-primary),var(--shadow-sm)}[data-theme=dark] .friends-online-widget{background:#2c2c2e}[data-theme=dark] .friends-online-widget:hover{background:#3c3c3e}[data-theme=dark] .join-friend-button{background:#2c2c2e;color:var(--color-primary-bright)}[data-theme=dark] .join-friend-button:hover{background:#3c3c3e}[data-theme=dark] .participant-pill,[data-theme=dark] .status-indicator{background:#2c2c2e}[data-theme=dark] .tutor-panel-area{background:#1c1c1e}[data-theme=dark] .header-icon-btn{color:#a1a1a6}[data-theme=dark] .header-icon-btn:hover{background:#2c2c2e;color:#fff}@media (prefers-reduced-motion:reduce){.friends-online-pulse{animation:none}.mode-button:hover{transform:none}}.control-btn:focus-visible,.friends-online-widget:focus-visible,.join-friend-button:focus-visible,.mode-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.clutch-chip{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:20px;box-shadow:0 2px 8px #f59e0b4d;color:#000;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:all .2s ease}.clutch-chip:hover{box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.clutch-chip:active{transform:scale(.98)}.clutch-chip svg{stroke:#000}.clutch-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.clutch-modal{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 20px 60px #00000080;max-width:420px;width:100%}.clutch-modal-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;gap:12px;padding:20px}.clutch-modal-icon{align-items:center;background:#f59e0b26;border-radius:10px;display:flex;height:40px;justify-content:center;width:40px}.clutch-modal-header h2{color:#fff;flex:1 1;font-size:18px;font-weight:600;margin:0}.clutch-modal-close{align-items:center;background:#0000;border:none;border-radius:8px;color:#ffffff80;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.clutch-modal-close:hover{background:#ffffff1a;color:#fff}.clutch-modal-form{padding:20px}.clutch-form-group{margin-bottom:20px}.clutch-form-group label{color:#ffffffb3;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.clutch-form-group input[type=date],.clutch-form-group input[type=text]{background:#ffffff0d;border:1px solid #ffffff26;border-radius:10px;color:#fff;font-size:16px;outline:none;padding:12px 14px;transition:border-color .2s ease;width:100%}.clutch-form-group input:focus{border-color:#f59e0b}.clutch-form-group input::placeholder{color:#ffffff4d}.clutch-quick-dates{display:flex;gap:8px;margin-top:10px}.clutch-quick-date{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#fff9;cursor:pointer;flex:1 1;font-size:13px;padding:8px 12px;transition:all .2s ease}.clutch-quick-date:hover{background:#ffffff1a;color:#fff}.clutch-quick-date.active{background:#f59e0b33;border-color:#f59e0b;color:#f59e0b}.clutch-modal-actions{margin-top:24px}.clutch-modal-submit{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;color:#000;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .2s ease;width:100%}.clutch-modal-submit:hover:not(:disabled){box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.clutch-modal-submit:disabled{cursor:not-allowed;opacity:.5}.clutch-radar-container{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:16px;display:flex;flex-direction:column;max-height:80vh;max-width:500px;overflow:hidden;width:100%}.clutch-radar-header{align-items:center;background:#f59e0b0d;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:16px 20px}.clutch-header-left{align-items:center;display:flex;gap:12px}.clutch-icon{align-items:center;background:#f59e0b26;border-radius:10px;display:flex;height:40px;justify-content:center;width:40px}.clutch-header-text h2{color:#fff;font-size:15px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.clutch-test-date{color:#ffffff80;font-size:13px}.clutch-close-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#ffffff80;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.clutch-close-btn:hover{background:#ffffff1a;color:#fff}.clutch-radar-content{flex:1 1;overflow-y:auto;padding:16px 20px}.clutch-loading{align-items:center;color:#ffffff80;display:flex;flex-direction:column;justify-content:center;padding:40px 20px}.clutch-spinner{animation:spin .8s linear infinite;border:3px solid #f59e0b33;border-radius:50%;border-top-color:#f59e0b;height:32px;margin-bottom:12px;width:32px}.clutch-spinner-small{animation:spin .8s linear infinite;border:2px solid #0003;border-radius:50%;border-top-color:#000;height:18px;width:18px}.clutch-modal-submit.clutch-btn-processing{overflow:hidden!important;pointer-events:none;position:relative!important}.clutch-modal-submit.clutch-btn-processing:after{animation:clutchShimmer 1.3s ease-in-out infinite;background:linear-gradient(90deg,#0000,#ffffff26 20%,#fff9 50%,#ffffff26 80%,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transform:skewX(-20deg);width:60%}@keyframes clutchShimmer{0%{left:-100%}to{left:200%}}.clutch-modal-submit.clutch-btn-processing .clutch-processing-content{align-items:center;display:flex;gap:8px;position:relative;z-index:1}.clutch-error{color:#ef4444;padding:40px 20px;text-align:center}.clutch-error button{background:#ef444433;border:1px solid #ef4444;border-radius:8px;color:#ef4444;cursor:pointer;margin-top:16px;padding:10px 20px}.clutch-section{margin-bottom:20px}.clutch-section-header{align-items:center;color:#ffffff80;display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.clutch-section-header.focus{color:#ef4444}.clutch-section-header.review{color:#f59e0b}.clutch-section-header.confident{color:#22c55e}.clutch-topics-list{display:flex;flex-direction:column;gap:8px}.clutch-topic-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;cursor:pointer;padding:12px 14px;transition:all .2s ease}.clutch-topic-card:hover{background:#ffffff0d;border-color:#ffffff26}.clutch-topic-name{color:#fff;font-size:14px;font-weight:500;margin-bottom:8px}.clutch-mastery-bar-container{align-items:center;display:flex;gap:10px}.clutch-mastery-bar-bg{background:#ffffff1a;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.clutch-mastery-bar-fill{border-radius:3px;height:100%}.clutch-mastery-info{align-items:center;display:flex;gap:6px}.clutch-mastery-percentage{color:#fffc;font-size:13px;font-weight:600;min-width:36px}.clutch-stuck-badge,.clutch-trend-badge{border-radius:4px;font-size:10px;font-weight:500;padding:2px 6px;text-transform:uppercase}.clutch-stuck-badge,.clutch-trend-badge.declining{background:#ef444433;color:#ef4444}.clutch-trend-badge.improving{background:#22c55e33;color:#22c55e}.clutch-empty-state{padding:30px 20px;text-align:center}.clutch-empty-icon{align-items:center;background:#ffffff0d;border-radius:50%;color:#ffffff4d;display:flex;height:64px;justify-content:center;margin:0 auto 16px;width:64px}.clutch-empty-state h3{color:#fff;font-size:16px;margin:0 0 8px}.clutch-empty-state p{color:#ffffff80;font-size:14px;margin:0 0 24px}.clutch-empty-actions{display:flex;flex-direction:column;gap:10px}.clutch-action-btn{align-items:center;border-radius:10px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:14px 20px;transition:all .2s ease}.clutch-action-btn.primary{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;color:#000}.clutch-action-btn.secondary{background:#ffffff0d;border:1px solid #ffffff26;color:#fff}.clutch-action-btn:hover{transform:translateY(-1px)}.clutch-mastered-state{padding:30px 20px;text-align:center}.clutch-mastered-icon{align-items:center;background:#22c55e1a;border-radius:50%;display:flex;height:64px;justify-content:center;margin:0 auto 16px;width:64px}.clutch-mastered-state h3{color:#22c55e;font-size:18px;margin:0 0 8px}.clutch-mastered-state p{color:#fff9;font-size:14px;margin:0 0 24px}.clutch-mastered-actions{display:flex;gap:10px;justify-content:center}.clutch-radar-footer{background:#0000004d;border-top:1px solid #ffffff1a;display:flex;gap:10px;padding:16px 20px}.clutch-start-btn{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;color:#000;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .2s ease}.clutch-start-btn:hover{box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.clutch-invite-btn{align-items:center;background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;color:#fffc;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:14px 16px;transition:all .2s ease}.clutch-invite-btn:hover{background:#ffffff1a;color:#fff}.clutch-summary-container{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:16px;max-width:450px;overflow:hidden;width:100%}.clutch-summary-header{align-items:center;background:#f59e0b0d;border-bottom:1px solid #ffffff1a;display:flex;gap:14px;padding:20px}.clutch-summary-icon{align-items:center;background:#f59e0b26;border-radius:12px;display:flex;height:48px;justify-content:center;width:48px}.clutch-summary-title h2{color:#fff;font-size:18px;font-weight:600;margin:0}.clutch-summary-duration{color:#ffffff80;font-size:14px}.clutch-summary-content{padding:20px}.clutch-summary-section{margin-bottom:20px}.clutch-summary-section-title{align-items:center;color:#ffffff80;display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.5px;margin:0 0 16px;text-transform:uppercase}.clutch-summary-topics{display:flex;flex-direction:column;gap:14px}.clutch-summary-topic{background:#ffffff08;border-radius:10px;padding:12px 14px}.clutch-summary-topic-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.clutch-summary-topic-name{color:#fff;font-size:14px;font-weight:500}.clutch-summary-delta{align-items:center;display:flex;font-size:13px;gap:4px}.clutch-summary-before{color:#fff6}.clutch-summary-arrow{color:#ffffff4d}.clutch-summary-after{color:#fffc;font-weight:600}.clutch-summary-gain{background:#22c55e33;border-radius:4px;color:#22c55e;font-size:12px;font-weight:600;margin-left:4px;padding:2px 6px}.clutch-summary-bar-bg{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden}.clutch-summary-bar-fill{background:linear-gradient(90deg,#f59e0b,#22c55e);border-radius:3px;height:100%}.clutch-summary-total{align-items:center;border-top:1px solid #ffffff1a;display:flex;gap:8px;justify-content:flex-end;margin-top:16px;padding-top:16px}.clutch-summary-total-label{color:#ffffff80;font-size:13px}.clutch-summary-total-value{color:#22c55e;font-size:18px;font-weight:700}.clutch-summary-encouragement{background:#f59e0b1a;border-radius:10px;padding:16px;text-align:center}.clutch-summary-encouragement p{color:#f59e0b;font-size:14px;font-weight:500;margin:0}.clutch-summary-empty{color:#ffffff80;padding:20px;text-align:center}.clutch-summary-footer{background:#0000004d;border-top:1px solid #ffffff1a;display:flex;gap:10px;padding:16px 20px}.clutch-done-btn{background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;color:#fff;cursor:pointer;flex:1 1;font-size:15px;font-weight:500;padding:14px 20px;transition:all .2s ease}.clutch-done-btn:hover{background:#ffffff1a}.clutch-continue-btn{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;color:#000;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .2s ease}.clutch-continue-btn:hover{box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}@media (max-width:480px){.clutch-modal{bottom:0;left:0;position:fixed;right:0}.clutch-modal,.clutch-radar-container,.clutch-summary-container{border-radius:16px 16px 0 0;max-width:100%}.clutch-radar-footer,.clutch-summary-footer{flex-direction:column}.clutch-quick-dates{flex-wrap:wrap}}.clutch-modal-expanded{max-width:480px}.clutch-step-indicator{align-items:center;background:#0003;border-bottom:1px solid #ffffff1a;display:flex;gap:8px;justify-content:center;padding:16px 20px}.clutch-step{align-items:center;display:flex;gap:6px;opacity:.4;transition:opacity .2s ease}.clutch-step.active{opacity:1}.clutch-step.completed{opacity:.7}.clutch-step-number{align-items:center;background:#ffffff1a;border-radius:50%;color:#ffffffb3;display:flex;font-size:12px;font-weight:600;height:22px;justify-content:center;width:22px}.clutch-step.active .clutch-step-number{background:#f59e0b;color:#000}.clutch-step.completed .clutch-step-number{background:#22c55e4d;color:#22c55e}.clutch-step-label{color:#fff9;font-size:12px;font-weight:500}.clutch-step.active .clutch-step-label{color:#fff}.clutch-step-divider{background:#ffffff26;height:1px;width:24px}.clutch-textarea{background:#ffffff0d;border:1px solid #ffffff26;border-radius:10px;color:#fff;font-family:inherit;font-size:14px;line-height:1.5;min-height:180px;outline:none;padding:14px;resize:vertical;transition:border-color .2s ease;width:100%}.clutch-textarea:focus{border-color:#f59e0b}.clutch-textarea::placeholder{color:#ffffff4d}.clutch-label-hint{color:#fff6;font-size:13px;font-weight:400;margin-left:6px}.clutch-char-count{color:#fff6;display:flex;font-size:12px;justify-content:flex-end;margin-top:6px}.clutch-char-count .error{color:#ef4444}.clutch-error-message{background:#ef444426;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;font-size:13px;margin-bottom:16px;padding:12px 14px}.clutch-actions-split{align-items:center;display:flex;gap:12px;justify-content:space-between}.clutch-actions-right{display:flex;gap:10px}.clutch-modal-secondary{align-items:center;background:#0000;border:1px solid #fff3;border-radius:10px;color:#ffffffb3;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:12px 16px;transition:all .2s ease}.clutch-modal-secondary:hover:not(:disabled){background:#ffffff0d;border-color:#ffffff4d;color:#fff}.clutch-modal-secondary:disabled{cursor:not-allowed;opacity:.5}.clutch-modal-skip{background:#0000;border:1px solid #ffffff26;border-radius:10px;color:#ffffff80;cursor:pointer;font-size:14px;padding:12px 16px;transition:all .2s ease}.clutch-modal-skip:hover:not(:disabled){background:#ffffff0d;color:#fffc}.clutch-modal-skip:disabled{cursor:not-allowed;opacity:.5}.clutch-topics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.clutch-topics-title{align-items:center;color:#fff;display:flex;font-size:15px;font-weight:600;gap:8px}.clutch-detected-subject{color:#ffffff80;font-size:13px}.clutch-detected-subject strong{color:#f59e0b}.clutch-topics-list-confirm{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;max-height:280px;overflow-y:auto;padding-right:4px}.clutch-topics-list-confirm::-webkit-scrollbar{width:4px}.clutch-topics-list-confirm::-webkit-scrollbar-track{background:#ffffff0d;border-radius:2px}.clutch-topics-list-confirm::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.clutch-topic-checkbox{align-items:flex-start;background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:12px 14px;transition:all .2s ease}.clutch-topic-checkbox:hover{background:#ffffff0d;border-color:#ffffff26}.clutch-topic-checkbox.selected{background:#f59e0b14;border-color:#f59e0b4d}.clutch-topic-checkbox input[type=checkbox]{display:none}.clutch-checkbox-custom{align-items:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:5px;display:flex;flex-shrink:0;height:20px;justify-content:center;margin-top:1px;transition:all .2s ease;width:20px}.clutch-topic-checkbox.selected .clutch-checkbox-custom{background:#f59e0b;border-color:#f59e0b}.clutch-topic-checkbox.selected .clutch-checkbox-custom:after{border:solid #000;border-width:0 2px 2px 0;content:"";height:10px;margin-bottom:2px;transform:rotate(45deg);width:6px}.clutch-topic-content{flex:1 1;min-width:0}.clutch-topic-name-confirm{color:#fff;display:block;font-size:14px;font-weight:500;margin-bottom:2px}.clutch-topic-context{color:#fff6;display:block;font-size:12px;line-height:1.4}.clutch-topic-custom-badge{background:#3b82f633;border-radius:4px;color:#60a5fa;display:inline-block;font-size:10px;font-weight:500;margin-top:4px;padding:2px 6px}.clutch-add-topic{display:flex;gap:8px;margin-bottom:12px}.clutch-add-topic input{background:#ffffff0d;border:1px solid #ffffff26;border-radius:8px;color:#fff;flex:1 1;font-size:13px;outline:none;padding:10px 14px;transition:border-color .2s ease}.clutch-add-topic input:focus{border-color:#f59e0b}.clutch-add-topic input::placeholder{color:#ffffff4d}.clutch-add-topic button{align-items:center;background:#ffffff0d;border:1px solid #ffffff26;border-radius:8px;color:#ffffffb3;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:4px;padding:10px 14px;transition:all .2s ease}.clutch-add-topic button:hover:not(:disabled){background:#ffffff1a;color:#fff}.clutch-add-topic button:disabled{cursor:not-allowed;opacity:.4}.clutch-tip{color:#fff6;font-size:12px;margin:0 0 16px;text-align:center}.clutch-section-header.imported{color:#6366f1}.clutch-topic-imported{border-color:#6366f133}.clutch-topic-imported:hover{border-color:#6366f166}.clutch-topic-context-small{color:#fff6;font-size:12px;line-height:1.4;margin-bottom:8px}.clutch-not-assessed{color:#6366f1;font-size:11px;font-weight:500}.clutch-imported-note{background:#6366f11a;border-radius:8px;color:#fff6;font-size:13px;margin-top:16px;padding:12px;text-align:center}.clutch-import-tabs{background:#ffffff08;border-radius:10px;display:flex;gap:8px;margin-bottom:20px;padding:4px}.clutch-import-tab{align-items:center;background:#0000;border:none;border-radius:8px;color:#ffffff80;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:500;gap:8px;justify-content:center;padding:10px 16px;transition:all .2s ease}.clutch-import-tab:hover:not(.active){background:#ffffff0d;color:#ffffffb3}.clutch-import-tab.active{background:#f59e0b26;color:#f59e0b}.clutch-import-tab svg{flex-shrink:0}.clutch-input{background:#ffffff0d;border:1px solid #ffffff26;border-radius:10px;color:#fff;font-size:14px;outline:none;padding:14px;transition:border-color .2s ease;width:100%}.clutch-input:focus{border-color:#f59e0b}.clutch-input::placeholder{color:#ffffff4d}.clutch-google-doc-hint{align-items:center;background:#3b82f61a;border-radius:8px;color:#60a5fa;display:flex;font-size:12px;gap:8px;margin-top:10px;padding:10px 12px}.clutch-google-doc-hint svg{flex-shrink:0}.clutch-drop-zone{align-items:center;background:#ffffff08;border:2px dashed #ffffff26;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:140px;padding:32px 20px;transition:all .2s ease}.clutch-drop-zone:hover{background:#ffffff0d;border-color:#ffffff40}.clutch-drop-zone.active{background:#f59e0b1a;border-color:#f59e0b}.clutch-drop-zone.has-file{background:#22c55e14;border-color:#22c55e4d;border-style:solid}.clutch-drop-zone svg{color:#fff6}.clutch-drop-zone.active svg{color:#f59e0b}.clutch-drop-text{color:#ffffffb3;font-size:14px;font-weight:500}.clutch-drop-hint{color:#fff6;font-size:12px}.clutch-selected-file{align-items:center;display:flex;gap:12px;padding:4px;width:100%}.clutch-selected-file svg{color:#22c55e;flex-shrink:0}.clutch-file-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.clutch-file-name{color:#fff;font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clutch-file-size{color:#ffffff80;font-size:12px}.clutch-remove-file{align-items:center;background:#ef444426;border:none;border-radius:6px;color:#ef4444;cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all .2s ease;width:28px}.clutch-remove-file:hover{background:#ef444440}@media (max-width:480px){.clutch-modal-expanded{max-height:90vh;max-width:100%;overflow-y:auto}.clutch-step-label{display:none}.clutch-step-divider{width:16px}.clutch-actions-split{flex-direction:column-reverse}.clutch-actions-right{justify-content:stretch;width:100%}.clutch-actions-right button{flex:1 1}.clutch-modal-secondary{justify-content:center;width:100%}.clutch-topics-list-confirm{max-height:200px}.clutch-import-tabs{flex-direction:column}.clutch-import-tab{justify-content:flex-start}}.clutch-radar-simple .clutch-radar-header h2{font-size:18px;letter-spacing:normal;text-transform:none}.clutch-time-message{margin-bottom:24px;text-align:center}.clutch-time-main{color:#f59e0b;font-size:24px;font-weight:700;margin-bottom:4px}.clutch-time-sub{color:#fff9;font-size:14px}.clutch-simplified-view{padding:8px 0}.clutch-radar-simple .clutch-section-header.focus{background:none;color:#ffffffb3;font-size:14px;font-weight:500;margin-bottom:12px;padding:0;text-transform:none}.clutch-focus-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.clutch-focus-card{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;display:flex;gap:12px;padding:14px 16px}.clutch-focus-card.imported{background:#6366f11a;border:1px solid #6366f133}.clutch-focus-number{align-items:center;background:#ef444433;border-radius:50%;color:#ef4444;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:28px;justify-content:center;width:28px}.clutch-focus-card.imported .clutch-focus-number{background:#6366f133;color:#6366f1}.clutch-focus-name{color:#fff;flex:1 1;font-size:15px;font-weight:500}.clutch-focus-mastery{color:#ef4444;font-size:14px;font-weight:600}.clutch-focus-mastery.new{background:#6366f133;border-radius:4px;color:#6366f1;font-size:12px;padding:2px 8px}.clutch-skip-section{border-top:1px solid #ffffff1a;margin-top:16px;padding-top:16px}.clutch-skip-label{color:#fff6;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.clutch-skip-list{color:#ffffff80;font-size:13px;line-height:1.6}.clutch-skip-item{color:#22c55e}.clutch-confidence-message{background:#22c55e1a;border-radius:12px;color:#22c55e;font-size:15px;font-weight:500;margin-top:24px;padding:16px;text-align:center}.clutch-more-topics{color:#fff6;font-size:13px;margin-top:8px;text-align:center}.clutch-ready-state{padding:40px 20px;text-align:center}.clutch-ready-icon{margin-bottom:20px}.clutch-ready-state h3{color:#22c55e;font-size:24px;margin:0 0 12px}.clutch-ready-state p{color:#fff9;font-size:15px;margin:0 0 24px}.clutch-ready-actions{display:flex;gap:12px;justify-content:center}.clutch-imported-view{padding:8px 0}.clutch-radar-simple .clutch-start-btn{font-size:16px;font-weight:600;padding:16px;width:100%}@media (max-width:480px){.clutch-time-main{font-size:20px}.clutch-focus-card{padding:12px 14px}.clutch-focus-name{font-size:14px}}.clutch-proactive-trigger{left:50%;max-width:420px;position:fixed;top:20px;transform:translateX(-50%);width:90%;z-index:1000}.trigger-content{align-items:flex-start;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#1a1a1afa,#1e1e1efa);border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d;display:flex;gap:14px;padding:18px 20px;position:relative}.trigger-content.urgency-critical{border-color:#ef444466;box-shadow:0 8px 32px #0006,0 0 20px #ef444433}.trigger-content.urgency-urgent{border-color:#f59e0b66;box-shadow:0 8px 32px #0006,0 0 20px #f59e0b26}.trigger-content.urgency-normal{border-color:#3b82f64d}.trigger-icon{align-items:center;background:#f59e0b26;border-radius:12px;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.trigger-lightning{font-size:22px;line-height:1}.trigger-message{flex:1 1;min-width:0}.trigger-headline{color:#f59e0b;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.trigger-details{color:#ffffffe6;font-size:14px;line-height:1.5;margin-bottom:6px}.test-name{color:#fff}.due-date,.test-name{font-weight:600}.due-date.urgency-critical{color:#ef4444}.due-date.urgency-urgent{color:#f59e0b}.due-date.urgency-normal{color:#60a5fa}.course-name{color:#ffffff80;font-size:13px}.trigger-subject-hint{color:#ffffff80;font-size:12px;margin-top:4px}.trigger-actions{display:flex;gap:8px;margin-top:12px}.trigger-btn{align-items:center;border-radius:10px;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;justify-content:center;padding:10px 14px;transition:all .2s ease}.trigger-btn-primary{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;color:#000}.trigger-btn-primary:hover{box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.trigger-btn-primary .btn-icon{font-size:14px}.trigger-btn-secondary{background:#ffffff0d;border:1px solid #ffffff26;color:#ffffffb3}.trigger-btn-secondary:hover{background:#ffffff1a;color:#fff}.trigger-close{align-items:center;background:#0000;border:none;border-radius:4px;color:#fff6;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;position:absolute;right:10px;top:10px;transition:all .2s ease;width:24px}.trigger-close:hover{background:#ffffff1a;color:#fffc}.trigger-more-tests{background:#0000004d;border-radius:0 0 12px 12px;color:#fff6;font-size:12px;margin-top:8px;padding:6px 12px;text-align:center}@media (max-width:480px){.clutch-proactive-trigger{top:10px;width:calc(100% - 20px)}.trigger-content{flex-direction:column;padding:16px}.trigger-icon{align-self:flex-start}.trigger-actions{flex-direction:column;width:100%}.trigger-btn{width:100%}.trigger-close{right:8px;top:8px}}.clutch-continue-section{margin-bottom:20px;padding-bottom:20px}.clutch-continue-header{align-items:center;color:#22c55e;display:flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:12px}.clutch-continue-cards{display:flex;flex-direction:column;gap:10px}.clutch-continue-card{align-items:flex-start;background:#22c55e14;border:1px solid #22c55e33;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;padding:14px 40px 14px 16px;position:relative;text-align:left;transition:all .2s ease;width:100%}.clutch-continue-card:hover{background:#22c55e1f;border-color:#22c55e59;transform:translateX(2px)}.clutch-continue-subject{color:#fff;font-size:15px;font-weight:600;margin-bottom:4px}.clutch-continue-meta{align-items:center;color:#fff9;display:flex;font-size:12px;gap:10px}.clutch-continue-date{background:#f59e0b26;border-radius:4px;color:#f59e0b;font-weight:500;padding:2px 8px}.clutch-continue-progress{color:#ffffff80}.clutch-continue-last{color:#fff6;font-size:11px;margin-top:4px}.clutch-continue-arrow{stroke:#22c55e99;position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:all .2s ease}.clutch-continue-card:hover .clutch-continue-arrow{stroke:#22c55e;transform:translateY(-50%) translateX(3px)}.clutch-or-divider{align-items:center;display:flex;margin-bottom:4px;margin-top:16px}.clutch-or-divider:after,.clutch-or-divider:before{background:#ffffff1a;content:"";flex:1 1;height:1px}.clutch-or-divider span{color:#fff6;font-size:12px;padding:0 12px;text-transform:lowercase}@media (max-width:480px){.clutch-continue-section{margin-bottom:16px;padding-bottom:16px}.clutch-continue-card{padding:12px 36px 12px 14px}.clutch-continue-subject{font-size:14px}}.min-h-screen{min-height:100vh}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.col-span-2{grid-column:span 2/span 2}.gap-6{gap:1.5rem}.space-y-4>*+*{margin-top:1rem}.space-x-2>*+*{margin-left:.5rem}.space-x-3>*+*{margin-left:.75rem}.space-x-4>*+*{margin-left:1rem}.space-x-6>*+*{margin-left:1.5rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-12{height:3rem}.h-64{height:16rem}.h-72{height:18rem}.w-2{width:.5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-12{width:3rem}.w-16{width:4rem}.w-24{width:6rem}.w-full{width:100%}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.min-w-full{min-width:100%}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pt-6{padding-top:1.5rem}.pl-3{padding-left:.75rem}.pr-10{padding-right:2.5rem}.m-1{margin:.25rem}.m-2{margin:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-200{background-color:#e5e7eb}.bg-gray-500{background-color:#6b7280}.bg-white{background-color:#fff}.bg-indigo-100{background-color:#e0e7ff}.bg-indigo-600{background-color:#4f46e5}.bg-indigo-700{background-color:#4338ca}.bg-blue-100{background-color:#dbeafe}.bg-blue-600{background-color:#2563eb}.bg-green-100{background-color:#d1fae5}.bg-green-500{background-color:#10b981}.bg-yellow-100{background-color:#fef3c7}.bg-yellow-500{background-color:#f59e0b}.bg-red-100{background-color:#fee2e2}.bg-purple-100{background-color:#ede9fe}.bg-opacity-75{--tw-bg-opacity:0.75}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.text-white{color:#fff}.text-indigo-600{color:#4f46e5}.text-indigo-700{color:#4338ca}.text-indigo-800{color:#3730a3}.text-indigo-900{color:#312e81}.text-blue-600{color:#2563eb}.text-blue-800{color:#1e40af}.text-green-600{color:#059669}.text-green-800{color:#065f46}.text-yellow-800{color:#92400e}.text-red-600{color:#dc2626}.text-red-800{color:#991b1b}.text-red-900{color:#7f1d1d}.text-purple-600{color:#7c3aed}.text-purple-800{color:#5b21b6}.text-gray-900{color:#111827}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.tracking-wider{letter-spacing:.05em}.text-left{text-align:left}.text-right{text-align:right}.whitespace-nowrap{white-space:nowrap}.leading-5{line-height:1.25rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-gray-200{border-color:#e5e7eb}.border-gray-300{border-color:#d1d5db}.border-indigo-500{border-color:#6366f1}.border-indigo-600{border-color:#4f46e5}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-full{border-radius:9999px}.divide-y>*+*{border-top-width:1px}.divide-gray-200{border-color:#e5e7eb}.shadow{box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.focus\:outline-none:focus{outline:0}.focus\:ring-indigo-500:focus{--tw-ring-color:#6366f1}.focus\:border-indigo-500:focus{border-color:#6366f1}.hover\:bg-gray-50:hover{background-color:#f9fafb}.hover\:bg-gray-700:hover{background-color:#374151}.hover\:bg-indigo-700:hover{background-color:#4338ca}.hover\:text-gray-700:hover{color:#374151}.hover\:text-gray-900:hover{color:#111827}.hover\:text-indigo-900:hover{color:#312e81}.hover\:text-red-900:hover{color:#7f1d1d}.hover\:border-indigo-500:hover{border-color:#6366f1}.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.transition-all{transition-property:all}.animate-spin{animation:spin 1s linear infinite}.flex{display:flex}.inline-flex{display:inline-flex}.flex-1{flex:1 1}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.fixed{position:fixed}.inset-0{bottom:0;left:0;right:0;top:0}.relative{position:relative}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.cursor-pointer{cursor:pointer}:disabled{cursor:not-allowed;opacity:.7}.lms-deployment-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;width:100%}.lms-deployment-header{border-bottom:1px solid #e5e7eb;padding:1.5rem}.lms-deployment-header h2{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.lms-deployment-header p{color:#6b7280;font-size:.875rem}.lms-deployment-body{padding:1.5rem}.canvas-integration-wrapper,.course-selection,.deployment-options,.lms-selection{margin-bottom:1.5rem}.canvas-integration-wrapper{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:15px}.course-selection label,.lms-selection label{color:#111827;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.selection-group{display:flex;gap:.5rem}select{border:1px solid #d1d5db;display:block;padding:.5rem .75rem;width:100%}.button-primary,select{border-radius:.375rem;font-size:.875rem}.button-primary{background-color:#4f46e5;border:none;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.button-primary:hover{background-color:#4338ca}.button-primary:disabled{background-color:#c7d2fe;cursor:not-allowed}.button-secondary{background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#4f46e5;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.button-secondary:hover{background-color:#f9fafb}.options-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:.5rem 0}.options-header h3{font-size:1rem;font-weight:500}.options-body{background-color:#f9fafb;border-radius:.375rem;margin-top:.5rem;padding:1rem}.option-item{margin-bottom:.75rem}.option-item input[type=checkbox]{margin-right:.5rem}.options-divider{background-color:#e5e7eb;height:1px;margin:1rem 0}.option-section-title{color:#4f46e5;font-size:.875rem;font-weight:600;margin-bottom:.75rem}.option-item.token-display-name{align-items:flex-start;display:flex;flex-direction:column}.option-item.token-display-name label{font-size:.875rem;margin-bottom:.5rem}.token-name-input{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.5rem;width:100%}.integration-tabs{margin-top:1.5rem}.tabs-header{border-bottom:1px solid #e5e7eb;display:flex;margin-bottom:1rem}.tabs-header button{background:none;border:none;color:#6b7280;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem}.tabs-header button.active{border-bottom:2px solid #4f46e5;color:#4f46e5}.tab-pane{padding:1rem 0}.info-box{background-color:#f3f4f6;border-radius:.375rem;margin-bottom:1rem;padding:1rem}.info-box p{color:#374151;font-size:.875rem;margin:0 0 .5rem}.info-box p:last-child{margin-bottom:0}.info-box-warning{background-color:#fffbeb;border-left:4px solid #f59e0b}.info-box-advanced{background-color:#f5f3ff;border-left:4px solid #8b5cf6}.api-config,.iframe-config,.lti-config{margin-top:1rem}.api-config label,.iframe-config label,.lti-config label{color:#111827;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.code-container{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;font-family:monospace;font-size:.875rem;margin-bottom:1rem;padding:1rem;position:relative;white-space:pre-wrap;word-break:break-all}.copy-button{background-color:#e5e7eb;border:none;border-radius:.25rem;cursor:pointer;font-size:.75rem;padding:.25rem .5rem;position:absolute;right:.5rem;top:.5rem}.copy-button:hover{background-color:#d1d5db}.iframe-preview h4,.lti-instructions h4{font-size:.875rem;font-weight:600;margin-bottom:.5rem}.lti-instructions ol{font-size:.875rem;padding-left:1.5rem}.lti-instructions ol li{margin-bottom:.5rem}.preview-container{align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;display:flex;height:200px;justify-content:center;padding:1rem}.preview-placeholder{color:#6b7280;text-align:center}.preview-placeholder h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.input-with-copy{margin-bottom:1rem;position:relative}.input-with-copy input{border:1px solid #d1d5db;border-radius:.375rem;font-family:monospace;font-size:.875rem;padding:.5rem;width:100%}.api-buttons,.config-item{margin-bottom:1rem}.api-buttons{display:flex;gap:1rem}.api-example{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;padding:1rem}.api-example h4{font-size:.875rem;font-weight:600;margin-bottom:.5rem}.api-example pre{font-family:monospace;font-size:.75rem;white-space:pre-wrap;word-break:break-all}.lms-deployment-footer{border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.canvas-integration{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;padding:20px}.canvas-integration h2{border-bottom:1px solid #e8e8e8;color:#2d3b45;margin-bottom:16px;padding-bottom:12px}.connection-status{margin-bottom:16px}.status-indicator{border-radius:4px;display:inline-block;margin-right:12px;padding:4px 10px}.status-indicator.connected{background-color:#d5f0d5;color:#2a742a}.status-indicator.disconnected{background-color:#f2d5d5;color:#a02626}.connection-form{background-color:#f5f5f5;margin-bottom:20px;padding:16px}.connection-methods{display:flex;flex-wrap:wrap;gap:20px;margin-top:16px}.api-key-method,.oauth-method{background-color:#fff;border-radius:4px;box-shadow:0 1px 4px #0000000d;flex:1 1;min-width:300px;padding:16px}.form-group{margin-bottom:16px}.form-group label{color:#2d3b45;margin-bottom:8px}.form-group input[type=password],.form-group input[type=text]{border:1px solid #ccc;padding:8px 12px}.connect-button,.deploy-button,.oauth-button{background-color:#0374b5;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background-color .2s}.connect-button:hover,.deploy-button:hover,.oauth-button:hover{background-color:#0262a0}.connect-button:disabled,.deploy-button:disabled,.oauth-button:disabled{background-color:#c1c1c1;cursor:not-allowed}.oauth-button{background-color:#e62e27}.oauth-button:hover{background-color:#c92520}.integration-panel{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}@media (max-width:768px){.integration-panel{grid-template-columns:1fr}}.courses-section,.deployment-section,.institutional-settings,.models-section{background-color:#f9f9f9;border-radius:6px;margin-bottom:16px;padding:16px}.courses-section h3,.institutional-settings h3,.models-section h3{color:#2d3b45;font-size:16px;margin-bottom:16px;margin-top:0}.course-list select,.model-list select{border:1px solid #ccc;padding:8px 12px}.deployment-section{align-items:center;display:flex;flex-direction:column;grid-column:span 2}@media (max-width:768px){.deployment-section{grid-column:span 1}}.deploy-button{min-width:200px}.deployment-result{margin-top:16px;text-align:center;width:100%}.deployment-result.success{background-color:#d5f0d5;color:#2a742a}.deployment-result.error{background-color:#f2d5d5;color:#a02626}.schoology-integration{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:900px;padding:20px}.schoology-integration h2{border-bottom:2px solid #e1e1e1;color:#0d47a1;margin-bottom:20px;padding-bottom:10px}.schoology-integration h3{color:#1976d2;margin-bottom:15px;margin-top:20px}.schoology-integration h4{color:#424242;margin-bottom:10px;margin-top:15px}.status-indicator.connected{color:#2e7d32}.status-indicator.disconnected{color:#c62828}.connect-button{background-color:#15407f}.connect-button:hover{background-color:#0d2f5f}.deploy-button{background-color:#2e7d32}.deploy-button:hover{background-color:#1b5e20}.deployment-result.success{color:#2e7d32}.deployment-result.error{color:#c62828}.schoology-note{background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:6px;padding:15px}.schoology-note h4{color:#0d47a1;margin-top:0}.schoology-note p{font-size:14px;line-height:1.5;margin:10px 0}.google-classroom-integration{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:900px;padding:20px}.google-classroom-integration h2{border-bottom:2px solid #e1e1e1;color:#0f9d58;margin-bottom:20px;padding-bottom:10px}.google-classroom-integration h3{color:#1a73e8;margin-bottom:15px;margin-top:20px}.google-classroom-integration h4{color:#424242;margin-bottom:10px;margin-top:15px}.connection-status{align-items:center;display:flex;margin-bottom:20px}.status-indicator{border-radius:20px;font-size:14px;font-weight:700;margin-right:15px;padding:6px 12px}.status-indicator.connected{background-color:#e6f7e6;border:1px solid #a5d6a7;color:#0f9d58}.status-indicator.disconnected{background-color:#ffecec;border:1px solid #ef9a9a;color:#db4437}.connection-form{background-color:#f9f9f9;border-radius:6px;margin-top:20px;padding:20px}.connection-methods{grid-gap:30px;display:grid;grid-template-columns:1fr 1fr}.form-group label{color:#424242}.form-group input[type=password],.form-group input[type=text]{border:1px solid #cecece;border-radius:4px;font-size:14px;padding:10px;width:100%}.connect-button{background-color:#1a73e8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-top:10px;padding:10px 20px}.connect-button:hover{background-color:#1660c9}.connect-button:disabled{background-color:#b0bec5;cursor:not-allowed}.connect-button.primary-button{background-color:#0f9d58}.connect-button.primary-button:hover{background-color:#0b8043}.oauth-buttons{margin-bottom:20px}.form-divider{height:20px;margin:20px 0;position:relative;text-align:center}.form-divider:before{background-color:#e0e0e0;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.form-divider span{background-color:#f9f9f9;color:#757575;font-size:14px;padding:0 10px;position:relative}.integration-panel{margin-top:30px}.course-list select,.model-list select{background-color:#fff;border:1px solid #cecece;border-radius:4px;font-size:14px;padding:10px;width:100%}.institutional-settings{background-color:#f5f5f5;border-radius:6px;margin-top:20px;padding:15px}.token-info{color:#616161;font-size:12px;margin-top:5px}.deployment-section{border-top:1px solid #e0e0e0;margin-top:30px;padding-top:20px}.deploy-button{background-color:#0f9d58;border-radius:4px;font-size:16px;padding:12px 24px}.deploy-button:hover{background-color:#0b8043}.deploy-button:disabled{background-color:#a5d6a7}.deployment-result{border-radius:4px;margin-top:15px;padding:12px}.deployment-result.success{background-color:#e8f5e9;border:1px solid #a5d6a7;color:#0f9d58}.deployment-result.error{background-color:#ffebee;border:1px solid #ef9a9a;color:#db4437}.google-classroom-note{background-color:#e3f2fd;border-left:4px solid #1a73e8;border-radius:6px;padding:15px}.google-classroom-note h4{color:#1a73e8;margin-top:0}.google-classroom-note p{font-size:14px;line-height:1.5;margin:10px 0}.google-classroom-note code{background-color:#f5f5f5;border-radius:3px;font-family:monospace;font-size:12px;padding:3px 5px}.setup-steps{font-size:14px;margin-left:20px;padding-left:10px}.setup-steps li{margin-bottom:5px}a{color:#1a73e8;text-decoration:none}a:hover{text-decoration:underline}.moodle-integration-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:Roboto,sans-serif;margin-bottom:20px;overflow:hidden}.moodle-header{background-color:#f98012;color:#fff;padding:20px;position:relative}.moodle-header h2{align-items:center;display:flex;font-size:1.6rem;margin:0 0 5px}.moodle-header h2:before{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"><path fill="white" d="M43.76,25.27c7.37,0,13.34,5.97,13.34,13.34s-5.97,13.34-13.34,13.34s-13.34-5.97-13.34-13.34 S36.39,25.27,43.76,25.27z M15.53,38.61c0-15.59,12.64-28.23,28.23-28.23s28.23,12.64,28.23,28.23S59.35,66.84,43.76,66.84 S15.53,54.2,15.53,38.61z M136.29,38.61c0-7.37,5.97-13.34,13.34-13.34c7.37,0,13.34,5.97,13.34,13.34s-5.97,13.34-13.34,13.34 C142.26,51.95,136.29,46,136.29,38.61z M149.63,66.84c-15.59,0-28.23-12.64-28.23-28.23s12.64-28.23,28.23-28.23 s28.23,12.64,28.23,28.23S165.22,66.84,149.63,66.84z M88.04,38.61c0-7.37,5.97-13.34,13.34-13.34 c7.37,0,13.34,5.97,13.34,13.34s-5.97,13.34-13.34,13.34C94.01,51.95,88.04,46,88.04,38.61z M101.38,66.84 c-15.59,0-28.23-12.64-28.23-28.23s12.64-28.23,28.23-28.23s28.23,12.64,28.23,28.23S116.97,66.84,101.38,66.84z M26.37,124.9 c0-9.6,7.78-17.38,17.38-17.38s17.38,7.78,17.38,17.38s-7.78,17.38-17.38,17.38S26.37,134.5,26.37,124.9z M70.14,124.9 c0-14.57-11.82-26.38-26.38-26.38S17.37,110.33,17.37,124.9s11.82,26.38,26.38,26.38S70.14,139.46,70.14,124.9z M138.13,124.9 c0-9.6,7.78-17.38,17.38-17.38s17.38,7.78,17.38,17.38s-7.78,17.38-17.38,17.38S138.13,134.5,138.13,124.9z M181.9,124.9 c0-14.57-11.82-26.38-26.38-26.38s-26.38,11.82-26.38,26.38s11.82,26.38,26.38,26.38S181.9,139.46,181.9,124.9z M84.94,124.9 c0-9.6,7.78-17.38,17.38-17.38s17.38,7.78,17.38,17.38s-7.78,17.38-17.38,17.38S84.94,134.5,84.94,124.9z M128.71,124.9 c0-14.57-11.82-26.38-26.38-26.38S75.94,110.33,75.94,124.9s11.82,26.38,26.38,26.38S128.71,139.46,128.71,124.9z M63.13,81.13 c0-5.38,4.36-9.74,9.74-9.74s9.74,4.36,9.74,9.74s-4.36,9.74-9.74,9.74S63.13,86.51,63.13,81.13z M117.96,81.13 c0-5.38,4.36-9.74,9.74-9.74s9.74,4.36,9.74,9.74s-4.36,9.74-9.74,9.74S117.96,86.51,117.96,81.13z M81.36,168.67 c0-5.38,4.36-9.74,9.74-9.74s9.74,4.36,9.74,9.74s-4.36,9.74-9.74,9.74S81.36,174.05,81.36,168.67z M118.49,153.13 c0-5.38,4.36-9.74,9.74-9.74s9.74,4.36,9.74,9.74s-4.36,9.74-9.74,9.74S118.49,158.51,118.49,153.13z M63.13,153.13 c0-5.38,4.36-9.74,9.74-9.74s9.74,4.36,9.74,9.74s-4.36,9.74-9.74,9.74S63.13,158.51,63.13,153.13z"/></svg>');content:"";display:inline-block;height:24px;margin-right:8px;width:24px}.moodle-header p{font-size:.9rem;margin:0;opacity:.9}.form-group input:focus,.form-group select:focus{border-color:#f98012;box-shadow:0 0 0 2px #f9801233}.save-btn{border:1px solid #f98012;color:#f98012}.save-btn:hover:not(:disabled){background-color:#fff3e6}.connect-btn{background-color:#f98012}.connect-btn:hover:not(:disabled){background-color:#e77610}.activity-selection{margin-top:20px}.activity-selection h4{color:#555;font-size:1rem;margin-bottom:5px}.activity-list{border:1px solid #eee;border-radius:4px;margin-top:10px;max-height:200px;overflow-y:auto;padding:10px}.activity-item{align-items:center;display:flex;margin-bottom:8px}.activity-item:last-child{margin-bottom:0}.activity-item input[type=checkbox]{margin-right:8px}.activity-type{color:#777;font-size:.85em}.deploy-btn.error{background-color:#e77610}.step-number{background-color:#f98012}.blackboard-integration-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:Roboto,sans-serif;margin-bottom:20px;overflow:hidden}.blackboard-header{background-color:#474b4f;color:#fff;padding:20px;position:relative}.blackboard-header h2{align-items:center;display:flex;font-size:1.6rem;margin:0 0 5px}.blackboard-header h2:before{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M21,17H3V5H21M21,3H3A2,2 0 0,0 1,5V17A2,2 0 0,0 3,19H8V21H16V19H21A2,2 0 0,0 23,17V5A2,2 0 0,0 21,3Z"/></svg>');content:"";display:inline-block;height:24px;margin-right:8px;width:24px}.blackboard-header p{font-size:.9rem;margin:0;opacity:.9}.connection-section{border-bottom:1px solid #eee;padding:20px}.connection-section h3{color:#333;font-size:1.2rem;margin-top:0}.connection-form{margin-top:15px}.form-group{margin-bottom:15px}.form-group label{color:#555;margin-bottom:5px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px}.form-group input:focus,.form-group select:focus{border-color:#474b4f;box-shadow:0 0 0 2px #474b4f33}.form-group input:disabled,.form-group select:disabled{background-color:#f5f5f5;cursor:not-allowed}.help-text{color:#666;display:block;font-size:12px;margin-top:4px}.connection-actions{display:flex;gap:10px;margin-top:15px}.connect-btn,.deploy-btn,.save-btn{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:10px 15px;transition:background-color .2s,transform .1s}.save-btn{background-color:#fff;border:1px solid #474b4f;color:#474b4f}.save-btn:hover:not(:disabled){background-color:#f2f2f2}.connect-btn{background-color:#474b4f;color:#fff;flex:1 1}.connect-btn:hover:not(:disabled){background-color:#3d4044}.connect-btn:disabled,.save-btn:disabled{cursor:not-allowed;opacity:.6}.connection-status{background-color:#f8f8f8;border-left:4px solid #999;border-radius:4px;font-size:14px;margin-top:15px;padding:10px}.connection-status.success{background-color:#e8f5e9;border-left-color:#4caf50}.saved-configs{margin-bottom:20px}.config-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:5px}.config-item{background-color:#f1f1f1;border:none;border-radius:4px;cursor:pointer;font-size:13px;padding:8px 12px;transition:background-color .2s}.config-item:hover{background-color:#e0e0e0}.course-selection-section{border-bottom:1px solid #eee;padding:20px}.course-selection-section h3{color:#333;font-size:1.2rem;margin-top:0}.content-item-selection{margin-top:20px}.content-item-selection h4{color:#555;font-size:1rem;margin-bottom:5px}.content-item-list{border:1px solid #eee;border-radius:4px;margin-top:10px;max-height:200px;overflow-y:auto;padding:10px}.content-item{align-items:center;display:flex;margin-bottom:8px}.content-item:last-child{margin-bottom:0}.content-item input[type=checkbox]{margin-right:8px}.content-type{color:#777;font-size:.85em}.deployment-options{margin-top:20px}.deployment-options h4{color:#555;font-size:1rem;margin-bottom:10px}.options-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.option-item{align-items:center;display:flex}.option-item input[type=checkbox]{margin-right:8px}.deployment-actions{margin-top:20px}.deploy-btn{background-color:#4caf50;color:#fff;font-size:16px;padding:12px;width:100%}.deploy-btn:hover:not(:disabled){background-color:#43a047}.deploy-btn.deploying{background-color:#ffc107;cursor:wait}.deploy-btn.success{background-color:#4caf50}.deploy-btn.error{background-color:#f44336}.deploy-btn:disabled{cursor:not-allowed;opacity:.7}.deployment-error{color:#d32f2f;font-size:14px;margin-top:10px}.documentation-section{padding:20px}.documentation-section h3{color:#333;font-size:1.2rem;margin-bottom:15px;margin-top:0}.setup-steps{flex-direction:column}.setup-steps,.step{display:flex;gap:15px}.step-number{background-color:#474b4f;border-radius:50%;color:#fff;flex-shrink:0;height:30px;width:30px}.step-content h4{color:#444;font-size:1rem;margin:0 0 5px}.step-content p{color:#666;font-size:.9rem;margin:0 0 5px}@media (max-width:768px){.options-grid{grid-template-columns:1fr}.connection-actions{flex-direction:column}}.lms-monitoring-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;width:100%}.lms-monitoring-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:1.5rem}.lms-monitoring-header,.model-selector,.timeframe-selector{align-items:center;display:flex}.model-selector label,.timeframe-selector label{font-size:.875rem;font-weight:500;margin-right:.5rem}.model-select-dropdown,.timeframe-select-dropdown{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;min-width:180px;padding:.5rem}.lms-monitoring-tabs{border-bottom:1px solid #e5e7eb;display:flex;padding:0 1.5rem}.lms-monitoring-tabs button{background:none;border:none;color:#6b7280;cursor:pointer;font-size:.875rem;font-weight:500;padding:1rem 1.5rem;position:relative}.lms-monitoring-tabs button.active{color:#4f46e5;font-weight:600}.lms-monitoring-tabs button.active:after{background-color:#4f46e5;bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.lms-monitoring-content{padding:1.5rem}.lms-monitoring-empty,.lms-monitoring-error,.lms-monitoring-loading{color:#6b7280;padding:3rem;text-align:center}.lms-monitoring-error{color:#ef4444}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.stat-card{background-color:#f9fafb;border-radius:.5rem;padding:1.5rem;text-align:center}.stat-card h3{color:#6b7280;font-size:.875rem;font-weight:500;margin:0 0 .5rem}.stat-value{color:#111827;font-size:1.5rem;font-weight:600}.chart-container{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:1.5rem;padding:1.5rem}.chart-container h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 1rem}.chart-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}.activity-metrics,.adaptation-metrics,.content-analysis,.feedback-list{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.activity-metrics h3,.adaptation-metrics h3,.content-analysis h3,.feedback-list h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 1rem}.metrics-table{border-collapse:collapse;width:100%}.metrics-table td,.metrics-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.metrics-table th{color:#6b7280;font-size:.75rem;font-weight:500;text-transform:uppercase}.metrics-table tr:last-child td{border-bottom:none}.style-recommendations h4{font-size:.875rem;font-weight:600;margin:1rem 0 .5rem}.style-recommendations ul{margin:.5rem 0;padding-left:1.5rem}.style-recommendations li{font-size:.875rem;margin-bottom:.5rem}.cards-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.analysis-card{background-color:#f9fafb;border-radius:.5rem;padding:1.25rem}.analysis-card h4{font-size:.875rem;font-weight:600;margin:0 0 .75rem}.analysis-card ul{margin:0;padding-left:1.25rem}.analysis-card li{font-size:.875rem;margin-bottom:.5rem}.feedback-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.feedback-card{border-left:4px solid;border-radius:.375rem;margin-bottom:1rem;padding:1rem}.feedback-card.positive{background-color:#f0fdf4;border-left-color:#10b981}.feedback-card.neutral{background-color:#fffbeb;border-left-color:#f59e0b}.feedback-card.negative{background-color:#fef2f2;border-left-color:#ef4444}.feedback-card p{color:#1f2937;font-size:.875rem;line-height:1.5;margin:0}@media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.cards-container,.chart-row,.feedback-cards{grid-template-columns:1fr}}.token-activity-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem;width:100%}.token-header{display:flex;justify-content:space-between;margin-bottom:2rem}.connected-platforms h3,.token-balance h3{color:#1f2937;font-size:1rem;font-weight:600;margin-bottom:.5rem}.balance-value{color:#4f46e5;font-size:2rem;font-weight:700}.platform-accounts{display:flex;gap:.75rem}.platform-badge{align-items:center;border-radius:9999px;display:flex;font-size:.75rem;font-weight:500;padding:.375rem .75rem}.platform-badge.discord{background-color:#5865f2;color:#fff}.platform-badge.canvas,.platform-badge.lms{background-color:#e83e8c;color:#fff}.platform-badge.web{background-color:#6b7280;color:#fff}.platform-icon{background-position:50%;background-repeat:no-repeat;background-size:contain;height:1rem;margin-right:.375rem;width:1rem}.token-sections{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.achievements-section,.transaction-history{background-color:#f9fafb;border-radius:.5rem;padding:1.25rem}.achievements-section h3,.transaction-history h3{color:#1f2937;font-size:1rem;font-weight:600;margin-bottom:1rem}.transaction-list{list-style-type:none;margin:0;padding:0}.transaction-item{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;padding:.75rem 0}.transaction-item:last-child{border-bottom:none}.transaction-icon{align-items:center;border-radius:50%;display:flex;font-size:1rem;font-weight:700;height:2rem;justify-content:center;margin-right:.75rem;width:2rem}.transaction-icon.sent{background-color:#fee2e2;color:#dc2626}.transaction-icon.received{background-color:#dcfce7;color:#16a34a}.transaction-details{flex:1 1}.transaction-description{align-items:center;color:#111827;display:flex;font-size:.875rem;font-weight:500}.achievement-badge{background-color:#fef3c7;border-radius:9999px;color:#d97706;font-size:.625rem;font-weight:600;margin-left:.5rem;padding:.125rem .375rem}.transaction-meta{align-items:center;color:#6b7280;display:flex;font-size:.75rem;margin-top:.25rem}.platform-indicator{border-radius:9999px;font-size:.625rem;font-weight:600;margin-right:.5rem;padding:.125rem .375rem}.platform-indicator.discord{background-color:#e0e7ff;color:#4f46e5}.platform-indicator.web{background-color:#e5e7eb;color:#374151}.platform-indicator.canvas,.platform-indicator.lms{background-color:#fce7f3;color:#db2777}.transaction-time{color:#9ca3af}.transaction-amount{font-size:1rem;font-weight:600;white-space:nowrap}.transaction-amount.positive{color:#16a34a}.transaction-amount.negative{color:#dc2626}.empty-state{color:#6b7280;font-size:.875rem;padding:2rem 0;text-align:center}.view-all-button{background:none;border:1px solid #d1d5db;border-radius:.375rem;color:#4f46e5;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:1rem;padding:.5rem;width:100%}.view-all-button:hover{background-color:#f9fafb}.achievements-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.achievement-card{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:.375rem;display:flex;padding:1rem}.achievement-icon{margin-right:1rem}.placeholder-icon{align-items:center;background-color:#e0e7ff;border-radius:50%;color:#4f46e5;display:flex;font-size:1.5rem;height:3rem;justify-content:center;width:3rem}.achievement-details{flex:1 1}.achievement-details h4{color:#111827;font-size:.875rem;font-weight:600;margin:0 0 .25rem}.achievement-details p{color:#6b7280;font-size:.75rem;margin:0 0 .5rem}.achievement-reward{color:#4f46e5;font-size:.75rem;font-weight:600}.token-activity-error,.token-activity-loading{color:#6b7280;padding:3rem;text-align:center}.token-activity-error{color:#dc2626}@media (max-width:768px){.token-header{flex-direction:column}.token-balance{margin-bottom:1.5rem}.achievements-grid,.token-sections{grid-template-columns:1fr}}.marketplace-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden}.marketplace-header{border-bottom:1px solid #e5e7eb;padding:1.5rem}.marketplace-header h2{color:#111827;font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.marketplace-description{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem}.marketplace-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.search-box{flex:1 1;min-width:200px}.search-input{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.5rem .75rem;width:100%}.filter-group{display:flex;flex-direction:column;min-width:150px}.filter-group label{color:#4b5563;font-size:.75rem;margin-bottom:.25rem}.filter-select{background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#111827;font-size:.875rem;padding:.5rem .75rem}.marketplace-content{padding:1.5rem}.marketplace-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.tutor-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;cursor:pointer;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}.tutor-card:hover{border-color:#4f46e5;box-shadow:0 4px 6px #0000001a;transform:translateY(-4px)}.tutor-card.selected{border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533}.tutor-image{background-color:#f3f4f6;height:120px;overflow:hidden}.tutor-image,.tutor-image-placeholder{align-items:center;display:flex;justify-content:center}.tutor-image-placeholder{background-color:#e5e7eb;border-radius:50%;color:#4f46e5;height:64px;width:64px}.tutor-info{display:flex;flex:1 1;flex-direction:column;padding:1rem}.tutor-name{color:#111827;font-size:1rem;font-weight:600;margin-bottom:.25rem}.tutor-rating,.tutor-subject{color:#4b5563;font-size:.875rem;margin-bottom:.5rem}.tutor-rating{align-items:center;display:flex;gap:.25rem}.star-icon{color:#f59e0b}.tutor-users{color:#6b7280;font-size:.75rem;margin-left:.25rem}.tutor-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;flex:1 1;font-size:.875rem;margin-bottom:.75rem;overflow:hidden;text-overflow:ellipsis}.tutor-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}.style-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;padding:.25rem .5rem}.style-badge.visual{background-color:#dbeafe;color:#1e40af}.style-badge.auditory{background-color:#fef3c7;color:#92400e}.style-badge.kinesthetic{background-color:#dcfce7;color:#166534}.style-badge.reading\/writing{background-color:#f3e8ff;color:#6b21a8}.free-badge{align-items:center;background-color:#ecfdf5;border-radius:9999px;color:#065f46;display:inline-flex;font-size:.75rem;padding:.25rem .5rem}.error-message,.loading-indicator,.no-results{color:#6b7280;font-size:.875rem;padding:2rem;text-align:center}.error-message{color:#ef4444}.tutor-details-panel{border:1px solid #e5e7eb;border-radius:.5rem;margin-top:1.5rem;overflow:hidden}.details-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:1.5rem}.details-header h3{align-items:center;color:#111827;display:flex;font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.version{font-weight:400;margin-left:.5rem}.created-by,.version{color:#6b7280;font-size:.875rem}.details-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;padding:1.5rem}.details-description h4,.details-meta h4{color:#111827;font-size:1rem;font-weight:600;margin-bottom:.75rem}.details-description p{color:#4b5563;font-size:.875rem;line-height:1.5;white-space:pre-line}.meta-section{margin-bottom:1.5rem}.meta-section p{color:#4b5563;font-size:.875rem;margin-bottom:.5rem}.meta-section strong{color:#111827}.topics-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.topic-tag{background-color:#f3f4f6;border-radius:.25rem;color:#4b5563;font-size:.75rem;padding:.25rem .5rem}.style-badges{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.style-detail{align-items:center;display:flex;gap:.5rem}.style-indicator{border-radius:50%;height:12px;width:12px}.style-indicator.visual{background-color:#3b82f6}.style-indicator.auditory{background-color:#f59e0b}.style-indicator.kinesthetic{background-color:#10b981}.style-indicator.reading\/writing{background-color:#8b5cf6}.style-name{color:#4b5563;font-size:.875rem}.metrics{display:flex;gap:1.5rem;margin-top:.5rem}.metric{text-align:center}.metric-value{color:#4f46e5;font-size:1.5rem;font-weight:600}.metric-label{color:#6b7280;font-size:.75rem}.deployment-options{border-top:1px solid #e5e7eb;grid-column:span 2;margin-top:1rem;padding-top:1.5rem}.deployment-buttons{display:flex;gap:1rem;margin-top:1rem}.deploy-button.lms{background-color:#4f46e5;border:none;color:#fff}.deploy-button.aws{background-color:#fff;border:1px solid #4f46e5;color:#4f46e5}.deploy-button.local{background-color:#f3f4f6;border:1px solid #d1d5db;color:#111827}.deployment-options-container{background-color:#fff;border-radius:.5rem;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:600px;overflow:hidden;width:100%}.deployment-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:1.5rem}.deployment-header h3{align-items:center;color:#111827;display:flex;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.deployment-header .icon{color:#4f46e5;margin-right:.5rem}.deployment-subtitle{color:#6b7280;font-size:.875rem}.deployment-form{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select{border:1px solid #d1d5db;border-radius:.375rem;color:#111827;font-size:.875rem;padding:.5rem .75rem;width:100%}.form-group input:focus,.form-group select:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a;outline:none}.help-text{color:#6b7280;font-size:.75rem;margin-top:.25rem}.deployment-info{background-color:#f3f4f6;border-radius:.375rem;margin-bottom:1.5rem;padding:1rem}.deployment-info h4{color:#111827;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.deployment-info p{color:#4b5563;font-size:.875rem;margin-bottom:.25rem}.error-message{align-items:center;background-color:#fee2e2;border-radius:.375rem;color:#b91c1c;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1.5rem;padding:.75rem}.deployment-actions{display:flex;gap:1rem;justify-content:flex-end}.cancel-button{background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#4b5563}.cancel-button,.deploy-button{cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem}.deploy-button{align-items:center;background-color:#4f46e5;border:none;border-radius:.375rem;color:#fff;display:flex;gap:.5rem}.deploy-button:hover{background-color:#4338ca}.deploy-button:disabled{background-color:#c7d2fe;cursor:not-allowed}.loading-spinner{border:2px solid #ffffff4d;height:16px;width:16px}.deployment-success{padding:2rem 1.5rem;text-align:center}.success-icon{align-items:center;background-color:#10b981;border-radius:50%;display:flex;height:48px;justify-content:center;margin:0 auto 1rem;width:48px}.deployment-success h4{color:#111827;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.deployment-success p{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem}.deployment-details{background-color:#f3f4f6;border-radius:.375rem;margin-bottom:1.5rem;padding:1rem;text-align:left}.deployment-details p{color:#4b5563;font-size:.875rem;margin-bottom:.5rem}.view-logs-button{background-color:#fff;border:1px solid #4f46e5;border-radius:.375rem;color:#4f46e5}.done-button,.view-logs-button{cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem}.done-button{background-color:#4f46e5;border:none;border-radius:.375rem;color:#fff}.auth-page{--color-primary:#297a92;--color-primary-hover:#1a3e48;--color-primary-light:#388899;--color-primary-subtle:#297a921a;--color-coral:#ea6d37;--color-gold:#ecc962;--color-text:#3d4954;--color-text-secondary:#76909f;--color-text-tertiary:#8d7f88;--color-bg:#fcfdfe;--color-bg-card:#fff;--color-bg-subtle:#f5f9fa;--color-border:#d5dedd;--color-border-focus:#297a92;--color-error:#ea6d37;--color-success:#6db4cd;--shadow-card:0 4px 24px #3d495414;--shadow-input-focus:0 0 0 3px #297a9226;--color-clever:#0071bc;--color-clever-hover:#005a94;-webkit-font-smoothing:antialiased;align-items:center;background:linear-gradient(135deg,#f5f9fa,#ecf3f2);display:flex;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:24px}.auth-card{background:var(--color-bg-card);border-radius:20px;box-shadow:var(--shadow-card);max-width:400px;padding:40px 32px;width:100%}.auth-logo{display:flex;justify-content:center;margin-bottom:32px}.auth-logo img{height:32px;width:auto}.auth-header{margin-bottom:32px;text-align:center}.auth-title{color:var(--color-text);font-size:24px;font-weight:600;letter-spacing:-.02em;margin:0 0 8px}.auth-subtitle{color:var(--color-text-secondary);font-size:15px;line-height:1.5;margin:0}.auth-form{gap:20px}.auth-form,.auth-input-group{display:flex;flex-direction:column}.auth-input-group{gap:6px}.auth-label{color:var(--color-text);font-size:14px;font-weight:500}.auth-input-wrapper{position:relative}.auth-input{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;box-sizing:border-box;color:var(--color-text);font-size:16px;outline:none;padding:12px 16px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.auth-input:focus{border-color:var(--color-border-focus);box-shadow:var(--shadow-input-focus)}.auth-input.error{border-color:var(--color-error)}.auth-input::placeholder,.auth-password-toggle{color:var(--color-text-tertiary)}.auth-password-toggle{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .15s ease}.auth-password-toggle:hover{color:var(--color-text-secondary)}.auth-input-with-toggle{padding-right:44px}.auth-label-row{align-items:center;display:flex;justify-content:space-between}.auth-forgot-link{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:13px;padding:0;text-decoration:none}.auth-forgot-link:hover{text-decoration:underline}.auth-btn-primary{background:var(--color-primary);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;transition:background .15s ease,transform .1s ease;width:100%}.auth-btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.auth-btn-primary:active:not(:disabled){transform:scale(.98)}.auth-btn-primary:disabled{cursor:not-allowed;opacity:.6}.auth-divider{align-items:center;display:flex;gap:16px;margin:24px 0}.auth-divider-line{background:var(--color-border);flex:1 1;height:1px}.auth-divider-text{color:var(--color-text-tertiary);font-size:13px}.auth-btn-sso{align-items:center;background:var(--color-clever);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:10px;justify-content:center;padding:12px 24px;transition:background .15s ease;width:100%}.auth-btn-sso:hover{background:var(--color-clever-hover)}.auth-btn-sso svg{flex-shrink:0;height:20px;width:20px}.auth-sso-hint{color:var(--color-text-tertiary);font-size:12px;margin-top:8px;text-align:center}.auth-footer{border-top:1px solid var(--color-border);margin-top:32px;padding-top:24px;text-align:center}.auth-footer-text{color:var(--color-text-secondary);font-size:14px;margin:0 0 16px}.auth-footer-link{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:inherit;font-weight:500;padding:0;text-decoration:none}.auth-footer-link:hover{text-decoration:underline}.auth-btn-secondary{background:#0000;border:1px solid var(--color-border);border-radius:10px;color:var(--color-text-secondary);cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s ease}.auth-btn-secondary:hover{background:var(--color-bg-subtle);border-color:var(--color-text-tertiary);color:var(--color-text)}.auth-error{background:#ea6d371a;border:1px solid var(--color-error);border-radius:10px;color:var(--color-error)}.auth-error,.auth-info{font-size:14px;margin-bottom:8px;padding:12px 16px}.auth-info{background:var(--color-primary-subtle);border-left:3px solid var(--color-primary);border-radius:8px;color:var(--color-text)}.auth-tier-preview{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:10px;margin-bottom:8px;padding:12px 16px}.auth-tier-label{color:var(--color-text-tertiary);font-size:13px;margin:0 0 4px}.auth-tier-name{color:var(--color-text);font-size:15px;font-weight:600;margin:0}.auth-legal{color:var(--color-text-tertiary);font-size:12px;line-height:1.5;margin-top:24px;text-align:center}.auth-legal a{color:var(--color-primary);text-decoration:none}.auth-legal a:hover{text-decoration:underline}@media (max-width:480px){.auth-card{padding:32px 24px}.auth-title{font-size:22px}}.parent-information-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000000d;display:flex;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;height:auto;margin:0 auto;max-width:1200px;min-height:500px;overflow:hidden}.parent-info-nav{background-color:#f9fafb;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;padding:24px;width:220px}.tappy-logo{height:50px;width:auto}.section-link{opacity:.7;padding:12px 0}.parent-info-content{flex:1 1;overflow-y:auto;padding:32px 32px 40px}.section-title{font-size:24px}.visualization-container{min-height:280px}.section-description{font-size:16px}.section-cta{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}.parent-cta{margin-top:auto;padding-top:24px}.cta-button{border-radius:16px;color:#fff;cursor:pointer;font-weight:500;padding:12px 16px;text-align:center;transition:all .2s}.cta-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.pricing-link-container{margin-top:16px;text-align:center}.pricing-link{color:#297a92;font-size:14px;text-decoration:none;transition:all .2s}.pricing-link:hover{text-decoration:underline}.section-cta-button{border-radius:8px;font-weight:500;padding:12px 20px;text-decoration:none;transition:all .2s}.section-cta-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.try-voice-button{background:#0000;border:1px solid;border-radius:8px;cursor:pointer;font-weight:500;padding:12px 20px;transition:all .2s}.try-voice-button:hover{background-color:#297a920d}.demo-form-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.demo-form-container{background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;max-width:500px;padding:32px;width:90%}@media (max-width:768px){.parent-information-container{flex-direction:column;height:auto}.parent-info-nav{padding:16px;width:100%}.section-links{-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin}.section-links::-webkit-scrollbar{height:4px}.section-links::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px}.section-links li{margin-right:16px}.parent-cta{margin-top:16px;padding-top:0}.parent-info-content{padding:16px 16px 24px}.visualization-container{min-height:220px}.section-cta{flex-direction:column}}:root,[data-theme=light]{--color-primary:#297a92;--color-primary-hover:#1a3e48;--color-primary-light:#388899;--color-primary-subtle:#297a921a;--color-primary-bright:#42909e;--color-aqua:#4d99a5;--color-sky:#6db4cd;--color-coral:#ea6d37;--color-gold:#ecc962;--color-gold-bright:#f8c341;--color-tan:#c59f65;--color-text:#3d4954;--color-text-secondary:#76909f;--color-text-tertiary:#8d7f88;--color-bg:#fcfdfe;--color-bg-elevated:#fff;--color-bg-subtle:#f5f9fa;--color-bg-section:#ecf3f2;--color-border:#d5dedd;--color-border-subtle:#ecf3f2;--color-border-accent:#abcaca;--color-success:#6db4cd;--color-warning:#ecc962;--color-error:#ea6d37;--color-info:#42909e;--gradient-text:linear-gradient(135deg,#297a92,#42909e 50%,#6db4cd);--gradient-text-coral:linear-gradient(135deg,#ea6d37,#ecc962);--gradient-ambient:radial-gradient(ellipse 80% 50% at 50% -20%,#297a9226,#0000);--gradient-card:linear-gradient(135deg,#fffffff2,#f5f9fae6);--gradient-cta:linear-gradient(135deg,#297a92,#388899);--shadow-sm:0 1px 2px #3d49540a;--shadow-md:0 4px 12px #3d49540f;--shadow-lg:0 12px 32px #3d495414;--shadow-xl:0 24px 48px #3d49541f;--shadow-primary:0 8px 24px #297a9240;--shadow-coral:0 8px 24px #ea6d3740;--logo-light-display:block;--logo-dark-display:none}[data-theme=dark]{--color-primary:#5ba3ac;--color-primary-hover:#6db4cd;--color-primary-light:#42909e;--color-primary-subtle:#5ba3ac26;--color-primary-bright:#6db4cd;--color-aqua:#5ba3ac;--color-sky:#6db4cd;--color-coral:#ea6d37;--color-gold:#f8c341;--color-gold-bright:#ecc962;--color-text:#fcfdfe;--color-text-secondary:#abcaca;--color-text-tertiary:#8d7f88;--color-bg:#1a3e48;--color-bg-elevated:#297a92;--color-bg-subtle:#3d4954;--color-bg-section:#391339;--color-border:#3d4954;--color-border-subtle:#297a92;--color-border-accent:#42909e;--gradient-text:linear-gradient(135deg,#6db4cd,#5ba3ac 50%,#42909e);--gradient-text-coral:linear-gradient(135deg,#ea6d37,#f8c341);--gradient-ambient:radial-gradient(ellipse 80% 50% at 50% -20%,#6db4cd26,#0000);--gradient-card:linear-gradient(135deg,#297a92e6,#1a3e48cc);--gradient-cta:linear-gradient(135deg,#5ba3ac,#6db4cd);--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 32px #00000080;--shadow-xl:0 24px 48px #0009;--shadow-primary:0 8px 24px #5ba3ac4d;--shadow-coral:0 8px 24px #ea6d374d;--logo-light-display:none;--logo-dark-display:block}.landing-2025{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fcfdfe;background:var(--color-bg);color:#3d4954;color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;min-height:100vh;overflow-x:hidden;transition:background .3s ease,color .3s ease}.logo-light{display:block;display:var(--logo-light-display)}.logo-dark{display:none;display:var(--logo-dark-display)}.ambient-gradient{background:radial-gradient(ellipse 80% 50% at 50% -20%,#297a9226,#0000);background:var(--gradient-ambient);height:100vh;pointer-events:none;z-index:0}.ambient-gradient,.nav-header{left:0;position:fixed;right:0;top:0}.nav-header{backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);background:#fafafab3;border-bottom:1px solid #ecf3f2;border-bottom:1px solid var(--color-border-subtle);transition:background .3s ease;z-index:100}[data-theme=dark] .nav-header{background:#09090bcc}.nav-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:16px 24px}.nav-logo img{height:36px;width:auto}.nav-links{align-items:center;display:flex;gap:8px}.nav-link{background:#0000;border:none;border-radius:8px;color:#76909f;color:var(--color-text-secondary);cursor:pointer;font-size:14px;font-weight:500;padding:8px 14px;transition:all .15s ease}.nav-link:hover{background:#f5f9fa;background:var(--color-bg-subtle);color:#3d4954;color:var(--color-text)}.theme-toggle{align-items:center;display:flex;justify-content:center}.theme-toggle svg{height:18px;width:18px}.nav-btn-primary{background:#297a92;background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s ease}.nav-btn-primary:hover{background:#1a3e48;background:var(--color-primary-hover);transform:translateY(-1px)}.scroll-progress{background:linear-gradient(135deg,#297a92,#42909e 50%,#6db4cd);background:var(--gradient-text);bottom:0;height:2px;left:0;position:absolute;right:0;transform-origin:left}.hero-2025{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:120px 24px 80px;position:relative;z-index:1}.hero-content{max-width:720px;text-align:center}.hero-badge{align-items:center;background:#fff;background:var(--color-bg-elevated);border:1px solid #d5dedd;border:1px solid var(--color-border);border-radius:100px;box-shadow:0 1px 2px #3d49540a;box-shadow:var(--shadow-sm);color:#76909f;color:var(--color-text-secondary);display:inline-flex;font-size:13px;font-weight:500;gap:8px;margin-bottom:24px;padding:6px 14px}.badge-dot{animation:pulse 2s ease-in-out infinite;background:#6db4cd;background:var(--color-success);border-radius:50%;height:8px;width:8px}.hero-headline{color:#3d4954;color:var(--color-text);font-size:clamp(40px,8vw,64px);font-weight:700;letter-spacing:-.03em;line-height:1.1;margin:0 0 24px}.gradient-text{-webkit-text-fill-color:#0000;animation:shimmer 3s linear infinite;background:linear-gradient(135deg,#297a92,#42909e 50%,#6db4cd);background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;background-size:200% auto}.typing-cursor{animation:blink 1s step-end infinite;color:#297a92;color:var(--color-primary);font-weight:300}@keyframes blink{50%{opacity:0}}.hero-subheadline{color:#76909f;color:var(--color-text-secondary);font-size:18px;line-height:1.6;margin:0 auto 40px;max-width:540px}.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:48px}.cta-primary{align-items:center;background:#297a92;background:var(--color-primary);border:none;border-radius:12px;box-shadow:0 8px 24px #297a9240;box-shadow:var(--shadow-primary);color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:10px;padding:14px 28px;transition:all .2s ease}.cta-primary:hover{transform:translateY(-2px)}.cta-primary.large{font-size:18px;padding:18px 36px}.cta-secondary{align-items:center;background:#0000;border:1px solid #d5dedd;border:1px solid var(--color-border);border-radius:12px;color:#76909f;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;font-size:16px;font-weight:500;gap:6px;padding:14px 24px;transition:all .15s ease}.cta-secondary:hover{background:#f5f9fa;background:var(--color-bg-subtle);border-color:#8d7f88;border-color:var(--color-text-tertiary);color:#3d4954;color:var(--color-text)}.hero-join-code{align-items:center;display:flex;flex-direction:column;gap:12px}.join-label{color:#8d7f88;color:var(--color-text-tertiary);font-size:14px}.code-inputs{display:flex;gap:10px}.code-box{background:#fff;background:var(--color-bg-elevated);border:2px solid #d5dedd;border:2px solid var(--color-border);border-radius:12px;color:#3d4954;color:var(--color-text);font-size:22px;font-weight:600;height:56px;outline:none;text-align:center;transition:all .15s ease;width:48px}.code-box:focus{border-color:#297a92;border-color:var(--color-primary);box-shadow:0 0 0 4px #297a921a;box-shadow:0 0 0 4px var(--color-primary-subtle)}.code-box.error{animation:shake .4s ease;border-color:#ea6d37;border-color:var(--color-error)}.join-error{color:#ea6d37;color:var(--color-error);font-size:13px}.hero-visual{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:-1}.floating-shape{animation:float 20s ease-in-out infinite;border-radius:50%;filter:blur(60px);opacity:.5;position:absolute}.shape-1{animation-delay:0s;background:#297a92;background:var(--color-primary);height:400px;right:10%;top:10%;width:400px}.shape-2{animation-delay:-7s;background:var(--color-accent);bottom:20%;height:300px;left:10%;width:300px}.shape-3{animation-delay:-14s;background:#6db4cd;background:var(--color-success);height:200px;left:50%;top:50%;width:200px}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}.trust-section{background:#f5f9fa;background:var(--color-bg-subtle);border-top:1px solid #ecf3f2;border-top:1px solid var(--color-border-subtle);padding:60px 24px;text-align:center}.trust-label{color:#76909f;color:var(--color-text-secondary);font-size:14px;letter-spacing:.05em;margin:0 0 24px;text-transform:uppercase}[data-theme=dark] .trust-label{color:#abcaca}.trust-metrics{align-items:center;display:flex;flex-wrap:wrap;gap:40px;justify-content:center}.metric{display:flex;flex-direction:column;gap:4px}.metric-value{color:#3d4954;color:var(--color-text);font-size:28px;font-weight:700}[data-theme=dark] .metric-value{color:#fcfdfe}.metric-label{color:#76909f;color:var(--color-text-secondary);font-size:14px}[data-theme=dark] .metric-label{color:#abcaca}.metric-divider{background:#d5dedd;background:var(--color-border);height:40px;width:1px}.bento-section{margin:0 auto;max-width:1200px;padding:100px 24px}.section-header{margin-bottom:60px;text-align:center}.section-title{color:var(--color-text);font-size:clamp(28px,5vw,40px);font-weight:700;letter-spacing:-.02em}[data-theme=dark] .section-title{color:#fcfdfe}.section-subtitle{color:#76909f;color:var(--color-text-secondary);font-size:18px;margin:0}[data-theme=dark] .section-subtitle{color:#abcaca}.bento-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.bento-card{background:#fff;background:var(--color-bg-elevated);border:1px solid #d5dedd;border:1px solid var(--color-border);border-radius:20px;cursor:default;padding:28px;transition:all .2s ease}.bento-card:hover{border-color:#8d7f88;border-color:var(--color-text-tertiary);box-shadow:0 12px 32px #3d495414;box-shadow:var(--shadow-lg)}.bento-large{grid-row:span 2;padding:40px}.bento-large,.bento-wide{grid-column:span 2}.bento-icon{align-items:center;color:#297a92;color:var(--color-primary);display:flex;justify-content:flex-start;margin-bottom:16px}.bento-icon svg{height:32px;width:32px}.bento-large .bento-icon svg{height:48px;width:48px}.bento-title{color:#3d4954;color:var(--color-text);font-size:18px;font-weight:600;margin:0 0 8px}.bento-large .bento-title{font-size:24px;margin-bottom:12px}.bento-description{color:#76909f;color:var(--color-text-secondary);font-size:15px;line-height:1.5;margin:0}.bento-large .bento-description{font-size:17px;line-height:1.6}.how-section{margin:0 auto;max-width:1000px;padding:100px 24px}.steps-grid{align-items:center;display:flex;gap:24px;justify-content:center}.step-card{background:#fff;background:var(--color-bg-elevated);border:1px solid #d5dedd;border:1px solid var(--color-border);border-radius:20px;flex:1 1;max-width:260px;padding:32px 24px;text-align:center;transition:all .2s ease}.step-card:hover{border-color:#8d7f88;border-color:var(--color-text-tertiary)}.step-number{align-items:center;background:#297a921a;background:var(--color-primary-subtle);border-radius:12px;color:var(--color-primary);display:flex;font-size:18px;font-weight:700;height:40px;justify-content:center;margin:0 auto 16px;width:40px}.step-card h3{color:#3d4954;color:var(--color-text);font-size:18px;font-weight:600;margin:0 0 8px}.step-card p{color:#76909f;color:var(--color-text-secondary);font-size:14px;line-height:1.5;margin:0}.step-arrow{align-items:center;color:#8d7f88;color:var(--color-text-tertiary);display:flex;justify-content:center}.step-arrow svg{height:24px;width:24px}.pricing-section-2025{margin:0 auto;max-width:1100px;padding:100px 24px}.b2b-link{border-top:1px solid #ecf3f2;border-top:1px solid var(--color-border-subtle);margin-top:40px;padding-top:32px;text-align:center}.b2b-link p{color:#76909f;color:var(--color-text-secondary);font-size:15px;margin:0}.b2b-link a{color:#297a92;color:var(--color-primary);font-weight:500;text-decoration:none;transition:color .15s ease}.b2b-link a:hover{color:#1a3e48;color:var(--color-primary-hover);text-decoration:underline}.pricing-cards{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.price-card{background:#fff;background:var(--color-bg-elevated);border:1px solid #d5dedd;border:1px solid var(--color-border);border-radius:20px;padding:32px;position:relative;text-align:center;transition:all .2s ease}.price-card:hover{border-color:#8d7f88;border-color:var(--color-text-tertiary)}.price-card.featured{border-color:#297a92;border-color:var(--color-primary);box-shadow:0 8px 24px #297a9240;box-shadow:var(--shadow-primary);transform:scale(1.02)}.featured-badge{background:#297a92;background:var(--color-primary);border-radius:100px;color:#fff;font-size:12px;font-weight:600;left:50%;padding:6px 16px;position:absolute;top:-12px;transform:translateX(-50%)}.price-card h3{font-size:20px;font-weight:600;margin:0 0 8px}.price-card .price,.price-card h3{color:#3d4954;color:var(--color-text)}.price-card .price{font-size:48px;font-weight:700;margin-bottom:4px}.price-card .price span{color:#76909f;color:var(--color-text-secondary);font-size:18px;font-weight:500}.price-desc{color:#8d7f88;color:var(--color-text-tertiary);font-size:14px;margin:0 0 24px}.price-card ul{list-style:none;margin:0 0 24px;padding:0;text-align:left}.price-card li{align-items:center;border-bottom:1px solid #ecf3f2;border-bottom:1px solid var(--color-border-subtle);color:#76909f;color:var(--color-text-secondary);display:flex;font-size:14px;gap:10px;padding:10px 0}.price-card li:before{color:#6db4cd;color:var(--color-success);content:"✓";font-weight:600}.price-card li:last-child{border-bottom:none}.price-btn{border-radius:12px;cursor:pointer;font-size:15px;font-weight:600;padding:14px;transition:all .15s ease;width:100%}.price-btn.primary{background:#297a92;background:var(--color-primary);border:none;color:#fff}.price-btn.primary:hover{background:#1a3e48;background:var(--color-primary-hover)}.price-btn.secondary{background:#0000;border:1px solid #d5dedd;border:1px solid var(--color-border);color:#3d4954;color:var(--color-text)}.price-btn.secondary:hover{background:#f5f9fa;background:var(--color-bg-subtle);border-color:#8d7f88;border-color:var(--color-text-tertiary)}.testimonials-2025{margin:0 auto;max-width:1100px;padding:100px 24px}.testimonial-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.testimonial{background:#fff;background:var(--color-bg-elevated);border:1px solid #d5dedd;border:1px solid var(--color-border);border-radius:20px;padding:28px;transition:all .2s ease}.testimonial:hover{border-color:#8d7f88;border-color:var(--color-text-tertiary)}.testimonial-stars{color:#ecc962;color:var(--color-gold);display:flex;gap:2px;margin-bottom:16px}.testimonial-stars svg{height:16px;width:16px}.testimonial p{color:#3d4954;color:var(--color-text);font-size:15px;line-height:1.6;margin:0 0 20px}.testimonial-author{align-items:center;display:flex;gap:12px}.author-avatar{align-items:center;background:#297a921a;background:var(--color-primary-subtle);border-radius:50%;color:#297a92;color:var(--color-primary);display:flex;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.testimonial-author strong{color:#3d4954;color:var(--color-text);display:block;font-size:14px;font-weight:600}.testimonial-author span{color:#8d7f88;color:var(--color-text-tertiary);font-size:13px}.final-cta{padding:80px 24px 100px}.cta-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#fffffff2,#f5f9fae6);background:var(--gradient-card);border:1px solid #d5dedd;border:1px solid var(--color-border);border-radius:24px;margin:0 auto;max-width:600px;padding:60px 40px;text-align:center}.cta-card h2{color:#3d4954;color:var(--color-text);font-size:32px;font-weight:700;margin:0 0 12px}.cta-card p{color:#76909f;color:var(--color-text-secondary);font-size:18px;margin:0 0 32px}.footer-2025{background:#f5f9fa;background:var(--color-bg-subtle);border-top:1px solid #d5dedd;border-top:1px solid var(--color-border)}.footer-content{grid-gap:60px;display:grid;gap:60px;grid-template-columns:2fr 3fr;margin:0 auto;max-width:1200px;padding:60px 24px 40px}.footer-brand img{height:32px;margin-bottom:12px}.footer-brand p{color:#8d7f88;color:var(--color-text-tertiary);font-size:14px;margin:0}.footer-links{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(3,1fr)}.footer-col h4{color:#3d4954;color:var(--color-text);font-size:13px;font-weight:600;letter-spacing:.05em;margin:0 0 16px;text-transform:uppercase}.footer-col a,.footer-col button{background:none;border:none;color:#76909f;color:var(--color-text-secondary);cursor:pointer;display:block;font-size:14px;padding:6px 0;text-align:left;text-decoration:none;transition:color .15s ease}.footer-col a:hover,.footer-col button:hover{color:#3d4954;color:var(--color-text)}.footer-bottom{border-top:1px solid #d5dedd;border-top:1px solid var(--color-border);padding:24px;text-align:center}.footer-bottom p{color:#8d7f88;color:var(--color-text-tertiary);font-size:13px;margin:0}@media (max-width:1024px){.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-large{grid-column:span 2;grid-row:span 1}}@media (max-width:768px){.nav-content{padding:12px 16px}.nav-link:not(.theme-toggle){display:none}.hero-2025{min-height:auto;padding:100px 20px 60px}.hero-subheadline{font-size:16px}.hero-ctas{align-items:stretch;flex-direction:column}.cta-primary,.cta-secondary{justify-content:center;width:100%}.bento-grid{grid-template-columns:1fr}.bento-large,.bento-wide{grid-column:span 1}.steps-grid{flex-direction:column}.step-arrow{margin:8px 0;transform:rotate(90deg)}.step-card{max-width:100%;width:100%}.pricing-cards{grid-template-columns:1fr}.price-card.featured{order:-1;transform:none}.testimonial-grid{grid-template-columns:1fr}.trust-metrics{flex-direction:column;gap:24px}.metric-divider{height:1px;width:60px}.footer-content{gap:40px;grid-template-columns:1fr}.footer-links{gap:20px;grid-template-columns:repeat(3,1fr)}.cta-card{padding:40px 24px}.cta-card h2{font-size:24px}}@media (max-width:480px){.hero-headline{font-size:32px}.code-box{font-size:20px;height:52px;width:44px}.code-inputs{gap:8px}.footer-links{grid-template-columns:1fr 1fr}.section-title{font-size:24px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.floating-shape,.gradient-text{animation:none}}.code-box:focus-visible,.cta-primary:focus-visible,.cta-secondary:focus-visible,.nav-btn-primary:focus-visible,.price-btn:focus-visible{outline:2px solid #297a92;outline:2px solid var(--color-primary);outline-offset:2px}.guest-tutor-page{background-color:#f5f9fa;display:flex;flex-direction:column;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.summer-banner{background:linear-gradient(135deg,#3b82b8,#391339);border-bottom:1px solid #fff3;color:#fff;font-size:.95rem;padding:.85rem 1.5rem;position:relative;text-align:center;z-index:10}.summer-highlight{display:inline-block;font-weight:700;margin:0 .25rem}.banner-deadline{background:#fff3;border-radius:.375rem;box-shadow:0 0 0 2px #fff3;padding:4px 12px;position:relative}.guest-header{align-items:center;background:linear-gradient(135deg,#391339,#3d4954);box-shadow:0 1px 3px #0000001a;color:#fff;display:flex;gap:.5rem;padding:1rem}.voice-minutes-indicator{border-bottom:1px solid;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-align:center}.main-content{display:flex;flex:1 1;flex-direction:column;margin:0 auto;max-width:1200px;overflow:hidden;padding:0 1rem;width:100%}.visualization-area{background:linear-gradient(#297a9208,#297a9203);border:1px solid #297a921a;border-radius:16px;box-shadow:0 2px 12px #0000000a;margin-top:2rem;min-height:350px;padding:40px 0}.visualization-area,.voice-assistant-box{align-items:center;display:flex;justify-content:center;position:relative}.voice-assistant-box{background:linear-gradient(135deg,#297a92,#3b82b8);border:none;border-radius:12px;box-shadow:0 8px 24px #00000026;color:#fff;cursor:pointer;flex-direction:column;height:300px;overflow:hidden;transition:all .5s cubic-bezier(.2,.8,.2,1);width:536px;z-index:5}.voice-assistant-box:before{background:radial-gradient(circle at center,#ffffff1a 0,#0000 70%);content:"";height:100%;left:0;opacity:.6;position:absolute;top:0;width:100%;z-index:-1}.voice-assistant-box .voice-assistant-name-display{align-items:center;background:none;border:none;display:flex;justify-content:center;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:transform .5s ease,opacity .5s ease;z-index:2}.voice-assistant-box svg{color:currentColor;height:28px;margin-right:12px;width:28px}.voice-assistant-box .voice-assistant-name-display p{font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:32px;font-weight:500;letter-spacing:-.01em;margin:0;padding:0;-webkit-user-select:none;user-select:none}.voice-assistant-box.active .voice-assistant-name-display{opacity:.9;transform:translate(-50%,-50%) scale(.9)}.voice-assistant-box.active{background:linear-gradient(135deg,#226d84,#2d6a97);border-radius:50%;box-shadow:0 16px 32px #0f61724d,inset 0 0 0 2px #ffffff1a;height:350px;transform:scale(.98);width:350px}@keyframes subtle-pulse{0%{box-shadow:0 12px 28px #0f617240,0 2px 4px #0000001a,inset 0 0 0 1px #ffffff0d}to{box-shadow:0 16px 36px #0f617259,0 4px 8px #00000026,inset 0 0 0 1px #ffffff1a;transform:translateY(-4px)}}.voice-assistant-box:hover{animation:none;box-shadow:0 15px 40px #297a9266,inset 0 0 0 2px #ffffff1a;transform:scale(1.03)}.response-display{background:#fffffffa;border:1px solid #d5dedf;border-radius:12px;bottom:-200px;box-shadow:0 4px 20px #00000026;left:0;margin:0 auto;max-width:600px;padding:1.25rem;position:absolute;right:0;width:calc(100% - 2rem);z-index:15}.interaction-area{background:#fffffff2;border-radius:12px;border-top:1px solid #0000001a;box-shadow:0 -2px 10px #0000000d;display:flex;flex-direction:column;margin:1.5rem auto;max-width:900px;opacity:.8;padding:1rem;position:relative;z-index:5}.subject-tabs{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1rem;opacity:.7;padding:.25rem 0;transition:opacity .3s ease}.subject-tabs:hover{opacity:1}.subject-tab{border-radius:9999px;cursor:pointer;font-size:.9rem;min-width:90px;padding:.4rem .85rem;text-align:center;text-transform:capitalize;transition:.2s}.suggested-questions{display:flex;flex-direction:column;gap:.5rem;max-height:200px;opacity:.6;overflow-y:auto;position:relative;transition:opacity .3s ease}.suggested-questions:after{background:linear-gradient(180deg,#0000,#ffffffe6);bottom:0;content:"";height:30px;left:0;pointer-events:none;position:absolute;right:0}.suggested-questions:hover{opacity:1}.question-button{align-items:center;background-color:#fcfdfe;border:1px solid #abcaca;border-radius:.375rem;box-shadow:0 1px 2px #0000000d;color:#297a92;cursor:pointer;display:flex;font-size:.8rem;font-weight:500;overflow:hidden;padding:.8rem;position:relative;text-align:left;transition:.2s}.guest-footer{background:linear-gradient(#3d4954,#1b3f48);box-shadow:0 -2px 10px #1b3f4833;color:#fcfdfe;padding:1.5rem 1rem;text-align:center}.footer-links{display:flex;gap:1.5rem;justify-content:center;margin-bottom:1rem}.footer-button{background-color:initial;border:1px solid #297a92;border-radius:.25rem;color:#fcfdfe;cursor:pointer;padding:.25rem 1rem;transition:.2s ease-in-out}.upgrade-prompt{background-color:#fff;border:1px solid #d5dedf;border-radius:8px;bottom:1.5rem;box-shadow:0 4px 20px #00000026;padding:1rem;position:fixed;right:1.5rem;width:280px;z-index:1000}.call-controls{bottom:-80px;display:flex;gap:2.5rem;justify-content:center;left:0;opacity:0;position:absolute;right:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease;z-index:10}.call-controls.active{opacity:1;transform:translateY(0)}.control-button{align-items:center;border:2px solid #ffffff26;border-radius:50%;box-shadow:0 6px 16px #0003;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;transition:transform .3s ease,box-shadow .3s ease;width:60px}.control-button:hover{box-shadow:0 8px 20px #00000040;transform:translateY(-4px)}.control-button:active{box-shadow:0 4px 8px #00000026;transform:translateY(2px)}.control-button svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));height:28px;width:28px}.artifact-visualizer-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.artifact-visualizer-iframe{border:none;height:100%;width:100%}.artifact-visualizer-loading{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-top-color:#4f46e5;margin-bottom:1rem}.artifact-visualizer-error{align-items:center;background:#fee2e2;border:1px solid #ef4444;border-radius:8px;color:#b91c1c;display:flex;flex-direction:column;justify-content:center;padding:1rem}.error-icon{font-size:32px;margin-bottom:1rem}.web-search-results{background:#0a0a0b;background:var(--panel-bg-primary,#0a0a0b);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;transition:background-color .3s ease}.search-header{background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--panel-border,#ffffff0f);padding:20px 24px 16px;transition:background-color .3s ease,border-color .3s ease}.search-header h3{color:#fff;color:var(--panel-text-primary,#fff);font-size:17px;font-weight:600;letter-spacing:-.02em;margin:0 0 10px}.search-query{background:#ffffff0d;background:var(--panel-border-subtle,#ffffff0d);border:1px solid #ffffff0f;border:1px solid var(--panel-border,#ffffff0f);border-radius:8px;color:#a1a1a6;color:var(--panel-text-secondary,#a1a1a6);display:inline-block;font-size:14px;font-style:italic;margin:0 0 10px;padding:6px 12px}.search-meta{color:#636366;color:var(--panel-text-tertiary,#636366);font-size:12px;margin:0}.search-results-container{flex:1 1;overflow-y:auto;padding:20px 24px}.search-results-container::-webkit-scrollbar{width:6px}.search-results-container::-webkit-scrollbar-track{background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border-radius:3px}.search-results-container::-webkit-scrollbar-thumb{background:#2c2c2e;background:var(--panel-bg-tertiary,#2c2c2e);border-radius:3px}.search-results-container::-webkit-scrollbar-thumb:hover{background:#ffffff26;background:var(--panel-border-strong,#ffffff26)}.search-result-card{animation:cardReveal .4s ease forwards;background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border:1px solid #ffffff0f;border:1px solid var(--panel-border,#ffffff0f);border-radius:14px;margin-bottom:12px;opacity:0;padding:16px 18px;transform:translateY(12px);transition:all .2s ease,background-color .3s ease}.search-result-card:first-child{animation-delay:.1s}.search-result-card:nth-child(2){animation-delay:.2s}.search-result-card:nth-child(3){animation-delay:.3s}.search-result-card:nth-child(4){animation-delay:.4s}.search-result-card:nth-child(5){animation-delay:.5s}@keyframes cardReveal{to{opacity:1;transform:translateY(0)}}.search-result-card:hover{background:#242426;background:var(--panel-bg-tertiary,#242426);border-color:#ffffff1a;border-color:var(--panel-border-default,#ffffff1a);box-shadow:0 8px 24px #0000004d;box-shadow:var(--panel-shadow,0 8px 24px #0000004d);transform:translateY(-2px)}.search-result-card:active{transform:translateY(0)}.search-result-card:last-child{margin-bottom:0}.result-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:10px}.result-favicon{align-items:center;background:#ffffff0d;background:var(--panel-border-subtle,#ffffff0d);border-radius:6px;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:4px;width:24px}.favicon{border-radius:2px;height:16px;width:16px}.result-content{flex:1 1;min-width:0}.result-title{font-size:15px;font-weight:600;line-height:1.35;margin:0 0 4px}.result-link{color:#297a92;color:var(--panel-accent,#297a92);display:block;text-decoration:none;transition:color .15s ease;word-break:break-word}.result-link:hover{color:#3a9bb5;color:var(--panel-accent-hover,#3a9bb5);text-decoration:underline}.result-link:visited{color:#8b7ee5}.result-url{color:#30d158;color:var(--panel-success,#30d158);font-family:SF Mono,Monaco,monospace;font-size:12px;margin:0;opacity:.85;word-break:break-all}.result-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#a1a1a6;color:var(--panel-text-secondary,#a1a1a6);display:-webkit-box;font-size:14px;line-height:1.5;margin:10px 0 0;overflow:hidden}.result-meta{color:#636366;color:var(--panel-text-tertiary,#636366);font-size:12px;margin:10px 0 0}.video-results-section{border-bottom:1px solid #ffffff0f;border-bottom:1px solid var(--panel-border,#ffffff0f);margin-bottom:24px;padding-bottom:20px}.video-section-title{align-items:center;color:#fff;color:var(--panel-text-primary,#fff);display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 16px}.video-result-card{animation:cardReveal .4s ease forwards;animation-delay:.05s;background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border:1px solid #ffffff0f;border:1px solid var(--panel-border,#ffffff0f);border-radius:14px;margin-bottom:12px;opacity:0;overflow:hidden;transform:translateY(12px);transition:all .2s ease,background-color .3s ease}.video-result-card:hover{background:#242426;background:var(--panel-bg-tertiary,#242426);border-color:#ffffff1a;border-color:var(--panel-border-default,#ffffff1a);box-shadow:0 8px 24px #0000004d;box-shadow:var(--panel-shadow,0 8px 24px #0000004d);transform:translateY(-2px)}.video-result-card:last-child{margin-bottom:0}.video-link{color:inherit;display:flex;gap:14px;padding:14px;text-decoration:none}.video-thumbnail{background:#2c2c2e;background:var(--panel-bg-tertiary,#2c2c2e);border-radius:10px;flex-shrink:0;height:80px;overflow:hidden;position:relative;width:140px}.thumbnail-image{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.video-result-card:hover .thumbnail-image{transform:scale(1.05)}.play-overlay{align-items:center;background:#0006;display:flex;font-size:24px;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .2s ease}.video-result-card:hover .play-overlay{opacity:1}.video-placeholder{align-items:center;background:linear-gradient(135deg,#2c2c2e,#1c1c1e);background:linear-gradient(135deg,var(--panel-bg-tertiary,#2c2c2e) 0,var(--panel-bg-secondary,#1c1c1e) 100%);border-radius:10px;display:flex;flex-shrink:0;height:80px;justify-content:center;width:140px}.video-icon{font-size:28px;opacity:.5}.video-content{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0}.video-title{color:#fff;color:var(--panel-text-primary,#fff);font-size:14px;font-weight:600;line-height:1.35;margin:0 0 6px}.video-description,.video-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.video-description{color:#a1a1a6;color:var(--panel-text-secondary,#a1a1a6);font-size:13px;line-height:1.4;margin:0}.video-meta{display:flex;flex-direction:column;gap:2px;margin-top:6px}.video-channel{color:#a1a1a6;color:var(--panel-text-secondary,#a1a1a6);font-size:12px;font-weight:500}.video-published{color:#636366;color:var(--panel-text-tertiary,#636366);font-size:11px}.web-results-section{margin-bottom:16px}.web-section-title{align-items:center;color:#fff;color:var(--panel-text-primary,#fff);display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 16px}.search-footer{background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border-top:1px solid #ffffff0f;border-top:1px solid var(--panel-border,#ffffff0f);padding:16px 24px;transition:background-color .3s ease,border-color .3s ease}.search-note{color:#636366;color:var(--panel-text-tertiary,#636366);font-size:12px;line-height:1.5;margin:0;text-align:center}@media (max-width:768px){.search-header{padding:16px 20px 14px}.search-header h3{font-size:16px}.search-results-container{padding:16px 20px}.search-result-card{border-radius:12px;padding:14px 16px}.result-header{gap:10px}.result-title{font-size:14px}.result-description{-webkit-line-clamp:2;font-size:13px}.video-link{flex-direction:column;gap:12px}.video-placeholder,.video-thumbnail{height:160px;width:100%}.video-title{font-size:15px}.search-footer{padding:14px 20px max(14px,calc(env(safe-area-inset-bottom, 0px) + 14px))}}@media (prefers-reduced-motion:reduce){.search-result-card,.video-result-card{animation:none;opacity:1;transform:none}.search-result-card:hover,.video-result-card:hover{transform:none}.thumbnail-image{transition:none}}.math-solution-clean{align-items:center;background:#0a0a0b;background:var(--panel-bg-primary,#0a0a0b);box-sizing:border-box;color:#fff;color:var(--panel-text-primary,#fff);display:flex;flex-direction:column;justify-content:flex-start;min-height:100%;padding:32px 24px;transition:background-color .3s ease,color .3s ease;width:100%}.math-display-area{max-width:600px;text-align:center;width:100%}.math-sections{align-items:center;display:flex;flex-direction:column;gap:48px}.math-section{text-align:center;width:100%}.math-display-area .katex-display{font-size:28px;margin:32px 0}.math-display-area .katex{color:#fff;color:var(--panel-text-primary,#fff);font-size:28px}.math-section .katex-display{font-size:28px;margin:16px 0}.math-section .katex{color:#fff;color:var(--panel-text-primary,#fff);font-size:28px}.fallback-math{text-align:center}.math-equation{color:#fff;color:var(--panel-text-primary,#fff);font-size:28px}.math-answer,.math-equation{font-family:Times New Roman,serif;margin:24px 0}.math-answer{color:#30d158;color:var(--panel-success,#30d158);font-size:24px;font-weight:600}.latex-display{border:none!important;box-shadow:none!important;margin:24px 0}.latex-display,.latex-inline{background:#0000!important}.math-solution-clean *{box-shadow:none}.math-solution-clean .katex-display{background:#0000!important;margin:32px 0}.math-steps{align-items:center;display:flex;flex-direction:column;gap:20px;width:100%}.math-step{animation:stepReveal .5s ease forwards;background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border:1px solid #ffffff0f;border:1px solid var(--panel-border,#ffffff0f);border-radius:16px;max-width:520px;opacity:0;padding:20px 24px;transform:translateY(16px);transition:background-color .3s ease,border-color .3s ease;width:100%}.math-step:first-child{animation-delay:.1s}.math-step:nth-child(2){animation-delay:.3s}.math-step:nth-child(3){animation-delay:.5s}.math-step:nth-child(4){animation-delay:.7s}.math-step:nth-child(5){animation-delay:.9s}.math-step:nth-child(6){animation-delay:1.1s}@keyframes stepReveal{to{opacity:1;transform:translateY(0)}}.step-number{color:#297a92;color:var(--panel-accent,#297a92);font-size:13px;font-weight:600;letter-spacing:.05em;margin-bottom:12px;text-transform:uppercase}.step-expression{background:#ffffff08;background:var(--panel-border-subtle,#ffffff08);border-radius:12px;margin:16px 0;padding:16px;text-align:center}.step-expression .katex-display{font-size:24px;margin:0}.step-expression .katex{color:#fff;color:var(--panel-text-primary,#fff)}.step-description{color:#a1a1a6;color:var(--panel-text-secondary,#a1a1a6);font-size:14px;line-height:1.5;margin-top:12px;text-align:center}.socratic-mode{background:#0a0a0b;background:var(--panel-bg-primary,#0a0a0b);margin:0 auto;max-width:600px;padding:24px}.math-problem-display{background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border:1px solid #ffffff0f;border:1px solid var(--panel-border,#ffffff0f);border-radius:16px;margin-bottom:32px;padding:24px;text-align:center}.problem-equation .katex-display{font-size:24px;margin:8px 0}.problem-equation .katex{color:#fff;color:var(--panel-text-primary,#fff)}.socratic-interface{background:#1c1c1e;background:var(--panel-bg-secondary,#1c1c1e);border:1px solid #ffffff0f;border:1px solid var(--panel-border,#ffffff0f);border-radius:16px;padding:28px}.socratic-question h3{color:#fff;color:var(--panel-text-primary,#fff);font-size:18px;font-weight:500;line-height:1.4;margin-bottom:24px;text-align:center}.student-input-section{margin:24px 0}.student-response-input{background:#2c2c2e;border:1px solid #ffffff1a;border-radius:12px;color:#fff;font-family:inherit;font-size:16px;margin-bottom:16px;padding:16px;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.student-response-input::placeholder{color:#636366}.student-response-input:focus{border-color:#297a92;box-shadow:0 0 0 3px #297a9233;outline:none}.socratic-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.hint-request,.submit-response{border:none;border-radius:12px;cursor:pointer;font-size:15px;font-weight:600;padding:14px 28px;transition:all .2s ease}.submit-response{background:#297a92;color:#fff}.submit-response:hover{background:#1e5f73;transform:translateY(-1px)}.submit-response:active{transform:translateY(0)}.hint-request{background:#2c2c2e;border:1px solid #ffffff1a;color:#a1a1a6}.hint-request:hover{background:#3c3c3e;color:#fff}.hint-display{background:#ffd60a1a;border:1px solid #ffd60a33;border-radius:12px;color:#ffd60a;font-size:14px;line-height:1.5;margin:20px 0;padding:16px}.hint-display strong{color:#ffd60a}.progress-indicator{color:#636366;font-size:13px;margin-top:20px;text-align:center}.celebration-screen{padding:48px 24px;text-align:center}.celebration-screen h2{color:#30d158;font-size:28px;font-weight:600;margin-bottom:20px}.celebration-screen p{color:#a1a1a6;font-size:16px;line-height:1.6;margin:12px 0}.math-solution{background:#0a0a0b;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-height:100%;overflow-y:auto;padding:24px}.math-header{border-bottom:1px solid #ffffff0f;margin-bottom:24px;padding-bottom:16px}.math-header h3{color:#297a92;font-size:1.3rem;font-weight:600;margin:0 0 8px}.curiosity-hook{background:#ffd60a1a;border-left:3px solid #ffd60a;border-radius:8px;color:#ffd60a;font-size:14px;font-style:italic;font-weight:500;margin:12px 0;padding:14px 16px}.math-meta{color:#636366;font-size:.9rem;font-weight:500;margin:8px 0 0}.math-content{display:flex;flex-direction:column;gap:20px}.math-section{background:#1c1c1e;border:1px solid #ffffff0f;border-radius:12px;padding:16px}.section-title{align-items:center;color:#297a92;display:flex;font-size:1rem;gap:8px;margin:0 0 12px}.section-title:before{background:#297a92;border-radius:50%;content:"";display:inline-block;height:6px;width:6px}.problem-display{align-items:center;background:#2c2c2e;border:1px solid #ffffff0f;border-radius:10px;color:#fff;display:flex;font-size:1.1rem;font-weight:500;min-height:40px;padding:16px}.solution-display{background:#2c2c2e;border:2px solid #30d158;border-radius:10px;padding:16px;position:relative}.solution-display:before{background:#30d158;border-radius:50%;content:""}.solution-display:after,.solution-display:before{align-items:center;display:flex;height:20px;justify-content:center;position:absolute;right:12px;top:12px;width:20px}.solution-display:after{color:#0a0a0b;content:"✓";font-size:12px;font-weight:700}.math-solution .latex-display{background:#ffffff08;color:#fff;font-family:Times New Roman,serif;font-size:1.1rem;padding:12px;text-align:center}.latex-code,.math-solution .latex-display{border:1px solid #ffffff0f;border-radius:8px}.latex-code{background:#2c2c2e;color:#a1a1a6;display:block;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.9rem;padding:12px 14px;white-space:pre-wrap}.solution-text{color:#30d158;font-size:1.2rem;font-weight:600;margin:0;text-align:center}.explanation-display{background:#2c2c2e;border:1px solid #ffffff0f;border-radius:10px;padding:16px}.explanation-text{color:#a1a1a6;font-size:.95rem;line-height:1.6;margin:0}.math-footer{border-top:1px solid #ffffff0f;margin-top:24px;padding-top:16px;text-align:center}.math-note{color:#636366;font-size:.85rem;font-style:italic;margin:0}@media (max-width:768px){.math-solution-clean{padding:20px 16px}.math-display-area .katex,.math-display-area .katex-display{font-size:22px}.math-answer,.math-equation{font-size:20px}.math-step{border-radius:14px;padding:16px 20px}.step-expression .katex-display{font-size:20px}.step-number{font-size:12px}.step-description{font-size:13px}.socratic-mode{padding:16px}.socratic-interface{padding:20px}.socratic-question h3{font-size:16px}.socratic-buttons{flex-direction:column}.hint-request,.submit-response{width:100%}}@media (prefers-reduced-motion:reduce){.math-step{animation:none;opacity:1;transform:none}}:root,[data-theme=light]{--panel-bg-primary:#fff;--panel-bg-secondary:#f5f9fa;--panel-bg-tertiary:#ecf3f2;--panel-bg-glass:#ffffffe6;--panel-text-primary:#3d4954;--panel-text-secondary:#76909f;--panel-text-tertiary:#8d7f88;--panel-border:#00000014;--panel-border-subtle:#0000000a;--panel-accent:#297a92;--panel-accent-hover:#1e5f73;--panel-success:#30d158;--panel-shadow:0 8px 32px #0000001f,0 0 0 1px #0000000d}[data-theme=dark]{--panel-bg-primary:#0a0a0b;--panel-bg-secondary:#1c1c1e;--panel-bg-tertiary:#2c2c2e;--panel-bg-glass:#1c1c1ed9;--panel-text-primary:#fff;--panel-text-secondary:#a1a1a6;--panel-text-tertiary:#636366;--panel-border:#ffffff0f;--panel-border-subtle:#ffffff08;--panel-accent:#42909e;--panel-accent-hover:#5ba3b0;--panel-success:#30d158;--panel-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d}.visualization-canvas{background:#fff;background:var(--panel-bg-primary);border-left:1px solid #00000014;border-left:1px solid var(--panel-border);bottom:0;box-shadow:0 8px 32px #0000001f,0 0 0 1px #0000000d;box-shadow:var(--panel-shadow);display:flex;flex-direction:column;max-width:700px;min-width:400px;overflow:hidden;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .4s cubic-bezier(.32,.72,0,1),background-color .3s ease,box-shadow .3s ease;width:45%;z-index:1000}.visualization-canvas.preparing{display:flex}.visualization-canvas.force-visible,.visualization-canvas.visible{transform:translateX(0);z-index:9999}.visualization-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .3s ease;z-index:9998}.visualization-backdrop.visible{opacity:1;pointer-events:all}body.visualization-active .tutor-interface-container{margin-left:0;max-width:calc(100% - 400px);transition:width .4s cubic-bezier(.32,.72,0,1);width:55%}.visualization-header{align-items:center;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#ffffffe6;background:var(--panel-bg-glass);border-bottom:1px solid #00000014;border-bottom:1px solid var(--panel-border);display:flex;flex-shrink:0;justify-content:space-between;min-height:60px;padding:16px 20px}.header-content{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.panel-type-label{color:#297a92;color:var(--panel-accent);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.visualization-header h2{color:#3d4954;color:var(--panel-text-primary);font-size:16px;font-weight:600;letter-spacing:-.02em;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-button{align-items:center;background:#ffffff1a;border:none;border-radius:50%;color:#76909f;color:var(--panel-text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:20px;font-weight:300;height:36px;justify-content:center;transition:all .2s ease;width:36px}.close-button:hover{background:#ffffff26;color:#3d4954;color:var(--panel-text-primary);transform:scale(1.05)}.close-button:active{background:#fff3;transform:scale(.95)}.visualization-content{background:#fff;background:var(--panel-bg-primary);flex:1 1;opacity:0;overflow:auto;padding:24px;position:relative;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease;transition-delay:.15s}.visualization-canvas.visible .visualization-content{opacity:1;transform:translateY(0)}.visualization-content::-webkit-scrollbar{width:6px}.visualization-content::-webkit-scrollbar-track{background:#f5f9fa;background:var(--panel-bg-secondary);border-radius:3px}.visualization-content::-webkit-scrollbar-thumb{background:#ecf3f2;background:var(--panel-bg-tertiary);border-radius:3px}.visualization-content::-webkit-scrollbar-thumb:hover{background:#fff3}.visualization-footer{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;background:var(--panel-bg-glass);border-top:1px solid #00000014;border-top:1px solid var(--panel-border);color:#8d7f88;color:var(--panel-text-tertiary);flex-shrink:0;font-size:13px;padding:16px 20px}.visualization-footer p{margin:0}.loading-container{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px;text-align:center}.loading-container p{color:#3d4954;color:var(--panel-text-primary);font-size:16px;font-weight:500;margin-top:20px}.loading-container small{color:#8d7f88;color:var(--panel-text-tertiary);font-size:13px;margin-top:8px}.spinner{animation:spin 1s linear infinite;border:3px solid #ecf3f2;border-top:3px solid #297a92;border:3px solid var(--panel-bg-tertiary);border-radius:50%;border-top-color:var(--panel-accent);height:44px;width:44px}.error-container{background:#ff453a1a;border:1px solid #ff453a33;border-radius:12px;padding:32px;text-align:center}.error-container h3{color:#ff453a;font-size:17px;font-weight:600;margin:0 0 12px}.error-container p{color:#76909f;color:var(--panel-text-secondary);font-size:14px;line-height:1.5;margin:0}.empty-container{background:#f5f9fa;background:var(--panel-bg-secondary);border:1px solid #00000014;border:1px solid var(--panel-border);border-radius:12px;padding:40px;text-align:center}.empty-container p{color:#76909f;color:var(--panel-text-secondary);font-size:15px;margin:0}.retry-button{background:#297a92;background:var(--panel-accent);border:none;border-radius:10px;font-size:15px;font-weight:600;padding:12px 24px;transition:all .2s ease}.retry-button:hover{background:#1e5f73;background:var(--panel-accent-hover);transform:translateY(-1px)}.retry-button:active{transform:translateY(0)}@media (max-width:768px){.visualization-canvas{border-left:none;border-radius:20px 20px 0 0;border-top:1px solid #00000014;border-top:1px solid var(--panel-border);bottom:0;box-shadow:0 -8px 32px #00000080;height:90vh;height:90dvh;left:0;max-width:none;min-width:0;min-width:auto;right:0;top:auto;transform:translateY(100%);width:100%}.visualization-canvas.force-visible,.visualization-canvas.visible{transform:translateY(0)}.visualization-header:before{background:#ecf3f2;background:var(--panel-bg-tertiary);border-radius:2px;content:"";height:4px;left:50%;position:absolute;top:8px;transform:translateX(-50%);width:36px}.visualization-header{padding:28px 20px max(16px,env(safe-area-inset-bottom,0px));position:relative}.visualization-header h2{font-size:16px;max-width:calc(100% - 50px)}.close-button{font-size:22px;height:44px;width:44px}.visualization-content{padding:20px 20px max(20px,calc(env(safe-area-inset-bottom, 0px) + 20px))}.visualization-footer{padding:16px 20px max(16px,calc(env(safe-area-inset-bottom, 0px) + 16px))}body.visualization-active .tutor-interface-container{max-width:100%;width:100%}}@media (min-width:769px) and (max-width:1024px){.visualization-canvas{min-width:380px;width:55%}body.visualization-active .tutor-interface-container{width:45%}}@media (min-width:1400px){.visualization-canvas{max-width:600px;width:40%}body.visualization-active .tutor-interface-container{max-width:calc(100% - 500px);width:60%}}.visualization-component-enter{opacity:0;transform:translateY(16px)}.visualization-component-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}@media (prefers-reduced-motion:reduce){.visualization-canvas,.visualization-content{transition:none}.spinner{animation:none;border-top-color:#297a92;border-top-color:var(--panel-accent)}}.research-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000000d;display:flex;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;height:auto;min-height:450px;overflow:hidden}.research-nav{background-color:#f9fafb;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;padding:24px;width:200px}.logo-container{align-items:center;display:flex;margin-bottom:32px}.morpheus-logo{height:24px;margin-right:12px;width:24px}.brand-name{color:#3b82b8;font-size:18px;font-weight:600}.section-links{list-style:none;margin:0;padding:0}.section-link{background:none;border:none;color:#76909f;cursor:pointer;display:block;font-size:15px;font-weight:400;opacity:.6;padding:10px 0;text-align:left;text-decoration:none;transition:all .3s;width:100%}.section-link.active,.section-link:hover{color:#3d4954;font-weight:600;opacity:1}.separator-line{background-color:#e5e7eb;height:1px;margin:24px 0}.research-content{flex:1 1;overflow-y:auto;padding:32px 32px 40px}.section-title{color:#3d4954;font-size:22px;font-weight:600;margin-bottom:24px}.visualization-container{align-items:center;background-color:#f5f9fa;border-radius:8px;box-shadow:inset 0 2px 4px #0000000d;display:flex;height:auto;justify-content:center;margin-bottom:24px;min-height:250px;padding:24px}.section-description{color:#76909f;font-size:15px;line-height:1.6;margin-bottom:24px}.sample-prompts{border-top:1px solid #e5e7eb;margin-bottom:20px;margin-top:32px;padding-top:20px}.prompt-label{color:#76909f;font-size:14px;font-weight:500;margin-bottom:12px}.prompt-examples{display:flex;flex-wrap:wrap;gap:12px}.prompt-bubble{background-color:#ecf3f2;border-radius:16px;box-shadow:0 1px 2px #0000000d;color:#3d4954;cursor:pointer;font-size:14px;font-style:italic;padding:8px 16px;transition:all .2s}.prompt-bubble:hover{background-color:#d5dedd;transform:translateY(-1px)}.voice-indicator{align-items:center;background-color:#ecf3f2;border:1px solid #d5dedd;border-radius:20px;cursor:pointer;display:flex;gap:12px;margin-top:auto;padding:12px 16px;transition:all .2s}.voice-indicator:hover{background-color:#e0e7ff;border-color:#c7d2fe}.mic-icon{color:#297a92;font-size:18px}.prompt-text{color:#297a92;font-size:14px;font-weight:500}@media (max-width:768px){.research-container{flex-direction:column;height:auto}.research-nav{padding:16px;width:100%}.section-links{-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin}.section-links::-webkit-scrollbar{height:4px}.section-links::-webkit-scrollbar-thumb{background-color:#0003;border-radius:4px}.section-links li{margin-right:16px}.voice-indicator{margin-top:16px}.research-content{padding:16px 16px 24px}.visualization-container{min-height:200px}.sample-prompts{margin-bottom:16px}}.mobile-call{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;height:100vh;height:100dvh;inset:0;overflow:hidden;position:fixed;touch-action:none;width:100vw}.video-container{align-items:center;background:#000;display:flex;height:100%;inset:0;justify-content:center;position:absolute;width:100%}.screen-share,.screen-share video{background:#1a1a1a;height:100%;object-fit:contain;width:100%}.screen-share{animation:fadeIn .5s ease-out;box-shadow:0 0 60px #0000004d}.face-large,.face-large video{height:100%;object-fit:cover;transition:transform .3s cubic-bezier(.4,0,.2,1);width:100%}.face-large.speaking{position:relative}.speaking-indicator{animation:speakingGlow 1.5s ease-in-out infinite;border:4px solid #10b981;border-radius:0;inset:0;pointer-events:none;position:absolute;z-index:1}@keyframes speakingGlow{0%,to{box-shadow:0 0 20px #10b98199;opacity:.8}50%{box-shadow:0 0 40px #10b981e6;opacity:1}}.pip-small{background:#1c1c1e;border:3px solid #fffffff2;border-radius:16px;bottom:calc(env(safe-area-inset-bottom, 20px) + 100px);box-shadow:0 8px 24px #0006,0 2px 8px #0000004d;height:133px;overflow:hidden;position:absolute;right:16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100px;z-index:10}.pip-medium.speaking,.pip-small.speaking,.pip-tiny.speaking{border-color:#10b981;box-shadow:0 0 0 4px #10b9814d,0 8px 24px #0006}.speaking-ring{animation:ringPulse 1.5s ease-in-out infinite;border:3px solid #10b981;border-radius:inherit;inset:-6px;pointer-events:none;position:absolute}@keyframes ringPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.pip-small video{height:100%;object-fit:cover;width:100%}.pip-tiny{background:#1c1c1e;border:2px solid #ffffffe6;border-radius:12px;bottom:calc(env(safe-area-inset-bottom, 20px) + 245px);box-shadow:0 4px 16px #0000004d,0 2px 6px #0003;height:107px;overflow:hidden;position:absolute;right:16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:80px;z-index:11}.pip-tiny video{height:100%;object-fit:cover;width:100%}.pip-medium{background:#1c1c1e;border:3px solid #fffffff2;border-radius:16px;bottom:calc(env(safe-area-inset-bottom, 20px) + 100px);box-shadow:0 8px 24px #0006,0 2px 8px #0000004d;height:160px;overflow:hidden;position:absolute;right:16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:120px;z-index:10}.audio-only,.face-large,.pip-medium,.pip-small,.pip-tiny,.screen-share{animation:fadeIn .4s ease-out}.pip-interactive{-webkit-tap-highlight-color:transparent;cursor:pointer}.pip-interactive:active{transform:scale(.95)}.pip-move-hint{align-items:center;background:#00000080;border-radius:10px;bottom:4px;display:flex;height:20px;justify-content:center;opacity:0;pointer-events:none;position:absolute;right:4px;transition:opacity .2s ease;width:20px}.pip-interactive:hover .pip-move-hint{opacity:1}@keyframes hintFlash{0%,to{opacity:0}20%,80%{opacity:1}}.pip-interactive .pip-move-hint{animation:hintFlash 3s ease-out}.pip-medium video{height:100%;object-fit:cover;width:100%}.audio-only{flex-direction:column;gap:20px;text-align:center}.audio-only,.avatar{align-items:center;display:flex;justify-content:center}.avatar{background:linear-gradient(135deg,#297a92,#42909e 50%,#6db4cd);border-radius:60px;box-shadow:0 8px 32px #42909e59,0 2px 8px #0003;height:120px;position:relative;width:120px}.avatar:before{background:linear-gradient(135deg,#ffffff40,#fff0 50%,#00000014);border-radius:inherit;content:"";inset:0;pointer-events:none;position:absolute}.avatar .pulse{animation:pulse 1.5s ease-in-out infinite;border:3px solid #10b981;border-radius:68px;inset:-8px;position:absolute}.initial{color:#fff;font-size:56px;font-weight:600;text-transform:uppercase}.status{color:#ffffffb3;font-size:17px;font-weight:500;margin:0}.top-bar{align-items:flex-end;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(180deg,#000c 0,#0006 70%,#0000);display:flex;gap:8px;height:88px;justify-content:center;left:0;padding:env(safe-area-inset-top,20px) 20px 12px;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:20}.top-bar.hidden{opacity:0;pointer-events:none}.top-bar.visible{opacity:1}.duration{font-feature-settings:"tnum";color:#fff;font-size:14px;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:.5px}.name{color:#ffffffe6;font-size:14px;font-weight:500}.bottom-controls{backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);background:linear-gradient(0deg,#000000f2 0,#000000d9 50%,#0006 90%,#0000);bottom:0;left:0;padding:16px 16px calc(env(safe-area-inset-bottom, 20px) + 16px);position:absolute;right:0;transition:opacity .3s ease,transform .3s ease;z-index:30}.bottom-controls.hidden{opacity:0;pointer-events:none;transform:translateY(20px)}.bottom-controls.visible{opacity:1;transform:translateY(0)}.control-grid{gap:12px;margin:0 auto;max-width:500px}.control-btn,.control-grid{align-items:center;display:flex;justify-content:center}.control-btn{-webkit-tap-highlight-color:transparent;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff26;border:none;border-radius:36px;box-shadow:0 2px 8px #0003;cursor:pointer;flex-direction:column;font-family:inherit;gap:6px;height:72px;min-width:72px;padding:12px;touch-action:manipulation;transition:all .2s cubic-bezier(.4,0,.2,1)}.control-btn.primary{border-radius:44px;height:88px;min-width:88px}.control-btn:active{box-shadow:0 1px 4px #0000004d;transform:scale(.92)}.control-btn.on{background:#10b981f2;box-shadow:0 0 20px #10b98166,0 2px 8px #0003}.control-btn.off{background:#fff3;box-shadow:0 2px 8px #0003}.control-btn.end{background:#ef4444f2;box-shadow:0 0 20px #ef444466,0 2px 8px #0003}.control-btn.end:before,.control-btn.on:before{animation:buttonPulse 2s ease-in-out infinite;background:inherit;border-radius:inherit;content:"";inset:-2px;opacity:0;pointer-events:none;position:absolute;z-index:-1}@keyframes buttonPulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.3;transform:scale(1.1)}}@media (hover:hover){.control-btn:hover{box-shadow:0 4px 16px #0000004d;transform:scale(1.05)}.control-btn:hover:active{transform:scale(.95)}}.icon{color:currentColor;height:24px;width:24px}.control-btn.primary .icon{height:28px;width:28px}.label{color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.control-btn button{align-items:center;background:none;border:none;color:inherit;display:flex;flex-direction:column;gap:6px;margin:0;padding:0;width:100%}@media (max-width:375px){.control-btn{border-radius:32px;height:64px;min-width:64px}.control-btn.primary{border-radius:38px;height:76px;min-width:76px}.icon{font-size:24px}.control-btn.primary .icon{font-size:32px}.label{font-size:10px}.control-grid{gap:8px}}@media (max-height:700px){.pip-small{bottom:90px;height:120px;width:90px}.pip-tiny{bottom:220px;height:93px;width:70px}}@media (orientation:landscape) and (max-height:500px){.top-bar{height:60px;padding:8px 20px}.bottom-controls{padding:8px 16px calc(env(safe-area-inset-bottom, 8px) + 8px)}.control-btn{height:60px;min-width:60px}.control-btn.primary{height:72px;min-width:72px}.pip-small{bottom:auto;right:16px;top:70px}.pip-tiny{bottom:auto;right:130px;top:70px}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast:high){.control-btn{border:2px solid #fff}.bottom-controls,.top-bar{background:#000}}.loading-video{align-items:center;background:#000;display:flex;inset:0;justify-content:center;position:absolute}.loading-spinner{animation:spin .8s linear infinite;border:4px solid #fff3;height:48px;width:48px}.connection-quality{align-items:center;animation:slideDown .3s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#000000d9;border-radius:20px;box-shadow:0 4px 12px #0000004d;color:#fff;display:flex;font-size:13px;font-weight:600;gap:6px;left:50%;padding:8px 16px;position:absolute;top:calc(env(safe-area-inset-top, 20px) + 50px);transform:translateX(-50%);z-index:25}.connection-quality.good{display:none}.connection-quality.poor{background:#fbbf24e6;color:#1a1a1a}.connection-quality.bad{animation:shake .5s ease-in-out;background:#ef4444e6;color:#fff}@keyframes shake{0%,to{transform:translateX(-50%) translateY(0)}25%{transform:translateX(-50%) translateY(-4px)}75%{transform:translateX(-50%) translateY(4px)}}.permission-error{align-items:center;animation:slideDown .3s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ef4444f2;border-radius:20px;box-shadow:0 4px 16px #ef444466;color:#fff;display:flex;font-size:14px;font-weight:600;gap:8px;left:50%;max-width:80%;padding:12px 20px;position:absolute;text-align:center;top:calc(env(safe-area-inset-top, 20px) + 50px);transform:translateX(-50%);z-index:30}.friend-collaboration-interface{background:linear-gradient(135deg,#f5f9fa,#ecf3f2);color:#3d4954;font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:24px}.session-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:16px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;display:flex;justify-content:space-between;margin-bottom:32px;overflow:hidden;padding:24px;position:relative}.session-info h2{color:#391339;font-size:1.5rem;font-weight:600;margin:0 0 8px}.session-info p{color:#76909f;font-size:.95rem;font-weight:400;margin:0}.session-status{align-items:center;display:flex;font-size:.875rem;gap:16px}.time-left{background:linear-gradient(135deg,#297a921a,#3b82b81a);border:1px solid #297a9233;border-radius:20px;color:#297a92;font-weight:500;padding:8px 16px}.session-content{margin:0 auto;max-width:800px}.identity-verification-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:16px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;margin-bottom:28px;overflow:hidden;padding:32px;position:relative;text-align:center}.identity-verification-section h3{color:#391339;font-size:1.5rem;font-weight:600;margin:0 0 24px}.invitation-info{background:linear-gradient(135deg,#297a920d,#3b82b80d);border:1px solid #297a9233;border-left:4px solid #297a92;border-radius:12px;margin:20px 0;padding:20px}.friend-name{color:#297a92;font-size:1.3em;font-weight:600;margin-bottom:10px}.verification-prompt{background:linear-gradient(135deg,#39133908,#3d495408);border:1px solid #297a9233;border-radius:12px;margin:28px 0;overflow:hidden;padding:28px;position:relative}.verification-prompt:before{background:linear-gradient(90deg,#297a92,#6aafb5,#297a92);content:"";height:2px;left:0;position:absolute;right:0;top:0}.verification-text{color:#76909f;font-size:1.1em;line-height:1.5;margin-bottom:20px}.confirm-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#297a92e6,#3b82b8e6);border:1px solid #297a924d;border-radius:12px;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:1.1rem;font-weight:500;padding:16px 32px;transition:all .3s cubic-bezier(.4,0,.2,1)}.confirm-button:hover{background:linear-gradient(135deg,#297a92,#3b82b8);box-shadow:0 12px 24px #297a9233,0 4px 8px #297a921a;transform:translateY(-2px)}.participants-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:16px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;margin-bottom:28px;padding:28px}.participants-section h3{color:#391339;font-size:1.25rem;font-weight:600;margin:0 0 24px}.participants-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.participant-tile{background:linear-gradient(135deg,#3d495408,#297a9208);border:1px solid #3d49541a;border-radius:12px;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.participant-tile:hover{border:1px solid #3d495426;box-shadow:0 12px 24px #3d495414,0 4px 8px #3d49540a;transform:translateY(-2px)}.local-participant{background:linear-gradient(135deg,#297a9214,#3b82b814);border:2px solid #297a92}.participant-info{align-items:center;display:flex;justify-content:space-between}.participant-name{color:#3d4954;font-size:.95rem;font-weight:500}.speaking-indicator{font-size:1.2rem;transition:transform .2s ease}.speaking-indicator.enabled{animation:pulse 2s infinite}.controls-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:16px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;display:flex;gap:16px;justify-content:center;margin-bottom:32px;padding:24px}.camera-toggle,.mic-toggle{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#fffc,#f5f9fae6);border:1px solid #3d495433;border-radius:12px;color:#3d4954;cursor:pointer;font-family:Poppins,sans-serif;font-size:.875rem;font-weight:500;min-width:140px;padding:14px 24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.camera-toggle[data-lk-enabled=true],.mic-toggle[data-lk-enabled=true]{background:linear-gradient(135deg,#6bafb526,#4d99a526);border:1px solid #6bafb54d;box-shadow:0 8px 16px #6bafb51a;color:#4d99a5}.camera-toggle:hover,.mic-toggle:hover{border:1px solid #3d495440;box-shadow:0 12px 24px #3d495414,0 4px 8px #3d49540a;transform:translateY(-2px)}.friend-collaboration-interface .disconnect-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#ea6d37e6,#c79f65e6);border:1px solid #ea6d374d;border-radius:12px;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:.875rem;font-weight:500;min-width:140px;padding:14px 24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.friend-collaboration-interface .disconnect-button:hover{background:linear-gradient(135deg,#ea6d37,#c79f65);box-shadow:0 12px 24px #ea6d3733,0 4px 8px #ea6d371a;transform:translateY(-2px)}.help-tips{background:linear-gradient(135deg,#39133908,#3d495408);border:1px solid #3913391a;border-radius:16px;overflow:hidden;padding:28px;position:relative}.help-tips:before{background:linear-gradient(90deg,#391339,#3b82b8,#391339);content:"";height:2px;left:0;position:absolute;right:0;top:0}.help-tips h4{color:#391339;font-size:1.125rem;font-weight:600;margin:0 0 20px}.help-tips ul{margin:0;padding-left:24px}.help-tips li{color:#76909f;font-size:.9rem;line-height:1.6;margin-bottom:12px}.connection-status{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:16px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;padding:60px 20px;text-align:center}.connection-status h3{color:#391339;font-size:1.3rem;margin:0 0 10px}.friend-interface-error,.friend-interface-loading{align-items:center;background:linear-gradient(135deg,#f5f9fa,#ecf3f2);color:#3d4954;display:flex;justify-content:center;min-height:100vh}.error-content,.loading-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:20px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;max-width:400px;padding:40px;text-align:center}.loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:40px;margin:0 auto 20px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.retry-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#297a92e6,#3b82b8e6);border:1px solid #297a924d;border-radius:12px;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:.875rem;font-weight:500;margin-top:20px;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.retry-button:hover{background:linear-gradient(135deg,#297a92,#3b82b8);box-shadow:0 12px 24px #297a9233,0 4px 8px #297a921a;transform:translateY(-2px)}.conversion-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.conversion-modal{animation:slideUp .3s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f5f9fafa);border:1px solid #3d49541a;border-radius:20px;box-shadow:0 20px 40px #3d495414,0 8px 16px #3d49540a;color:#3d4954;max-width:500px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.conversion-header{align-items:center;display:flex;justify-content:space-between;padding:25px 25px 0}.conversion-header h3{color:#fff;font-size:1.3rem;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;transition:background .2s ease;width:30px}.close-btn:hover{background:#fff3}.conversion-content{color:#fff;padding:20px 25px 25px;text-align:center}.conversion-content p{font-size:1.1rem;line-height:1.5;margin:0 0 20px}.conversion-benefits{margin:20px 0 30px;text-align:left}.benefit{font-size:.95rem;margin:10px 0;opacity:.95;padding:8px 0}.conversion-actions{display:flex;flex-direction:column;gap:12px}.signup-button{background:linear-gradient(45deg,#4caf50,#45a049);border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:15px 25px;transition:all .3s ease}.signup-button:hover{box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.continue-button{background:#fff3;border:1px solid #ffffff4d;border-radius:50px;color:#fff;cursor:pointer;font-size:.95rem;padding:12px 25px;transition:all .3s ease}.continue-button:hover{background:#ffffff4d;transform:translateY(-1px)}@media (max-width:768px){.friend-collaboration-interface{padding:15px}.session-header{flex-direction:column;gap:15px;text-align:center}.participants-grid{grid-template-columns:1fr}.controls-section{align-items:center;flex-direction:column}.friend-collaboration-interface .disconnect-button,.mic-toggle{max-width:280px;width:100%}.conversion-modal{margin:10px}.conversion-actions{gap:15px}.continue-button,.signup-button{width:100%}}.lk-room-container{height:auto!important}.lk-participant-tile{background:#ffffff1a!important;border-radius:12px!important}.lk-connection-state{color:#ffffffe6!important;font-size:.9rem!important}.participant-video{background:#0000004d;border-radius:8px;flex:1 1;margin-top:10px;min-height:150px;overflow:hidden;position:relative}.participant-video video{border-radius:8px;height:100%;object-fit:cover;width:100%}.participant-avatar{align-items:center;background:#ffffff0d;border-radius:8px;color:#fff9;display:flex;flex:1 1;font-size:4rem;justify-content:center;margin-top:10px;min-height:150px}.local-participant .participant-avatar{background:#4caf501a;border:2px solid #4caf504d}.participant-tile{display:flex;flex-direction:column;min-height:200px}.participant-info{margin-bottom:10px;position:relative;z-index:2}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.sponsor-page{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fcfdfe;background:var(--color-bg,#fcfdfe);color:#3d4954;color:var(--color-text,#3d4954);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;min-height:100vh;overflow-x:hidden;transition:background .3s ease,color .3s ease}.sponsor-page .logo-light{display:block;display:var(--logo-light-display,block)}.sponsor-page .logo-dark{display:none;display:var(--logo-dark-display,none)}[data-theme=dark] .sponsor-page .logo-light{display:none}[data-theme=dark] .sponsor-page .logo-dark{display:block}.sponsor-page .ambient-gradient{background:radial-gradient(ellipse 80% 50% at 50% -20%,#297a921f,#0000),radial-gradient(ellipse 60% 40% at 80% 100%,#ea6d3714,#0000);height:100vh;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:0}.sponsor-page .nav-header{backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);background:#fcfdfecc;border-bottom:1px solid #ecf3f2;border-bottom:1px solid var(--color-border-subtle,#ecf3f2);left:0;position:fixed;right:0;top:0;transition:background .3s ease;z-index:100}[data-theme=dark] .sponsor-page .nav-header{background:#1a3e48e6}.sponsor-page .nav-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:16px 24px}.sponsor-page .nav-logo a{display:block}.sponsor-page .nav-logo img{height:36px;width:auto}.sponsor-page .nav-links{align-items:center;display:flex;gap:8px}.sponsor-page .nav-link{background:#0000;border:none;border-radius:8px;color:#76909f;color:var(--color-text-secondary,#76909f);cursor:pointer;font-size:14px;font-weight:500;padding:8px 14px;transition:all .15s ease}.sponsor-page .nav-link:hover{background:#f5f9fa;background:var(--color-bg-subtle,#f5f9fa);color:#3d4954;color:var(--color-text,#3d4954)}.sponsor-page .theme-toggle{align-items:center;display:flex;justify-content:center}.sponsor-page .nav-btn-primary{background:#297a92;background:var(--color-primary,#297a92);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s ease}.sponsor-page .nav-btn-primary:hover{background:#1a3e48;background:var(--color-primary-hover,#1a3e48);transform:translateY(-1px)}.sponsor-hero{align-items:center;display:flex;justify-content:center;min-height:70vh;padding:140px 24px 80px;position:relative;text-align:center;z-index:1}.sponsor-hero .hero-content{max-width:720px}.sponsor-hero .hero-badge{align-items:center;background:linear-gradient(135deg,#ea6d371a,#ecc9621a);border:1px solid #ea6d3733;border-radius:100px;color:#ea6d37;color:var(--color-coral,#ea6d37);display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:24px;padding:8px 16px}.sponsor-hero .hero-badge svg{stroke:#ea6d37;stroke:var(--color-coral,#ea6d37);height:18px;width:18px}.sponsor-headline{color:#3d4954;color:var(--color-text,#3d4954);font-size:clamp(40px,8vw,60px);font-weight:700;letter-spacing:-.03em;line-height:1.1;margin:0 0 24px}[data-theme=dark] .sponsor-headline{color:#fcfdfe}.sponsor-page .gradient-text{-webkit-text-fill-color:#0000;animation:shimmer 3s linear infinite;background:linear-gradient(135deg,#ea6d37,#ecc962 50%,#f8c341);-webkit-background-clip:text;background-clip:text;background-size:200% auto}@keyframes shimmer{0%{background-position:0}to{background-position:200%}}.sponsor-subheadline{color:#76909f;color:var(--color-text-secondary,#76909f);font-size:18px;line-height:1.6;margin:0 auto 48px;max-width:560px}.impact-stats{align-items:center;display:flex;flex-wrap:wrap;gap:40px;justify-content:center}.impact-stats .stat{display:flex;flex-direction:column;gap:4px}.impact-stats .stat-value{color:#ea6d37;color:var(--color-coral,#ea6d37);font-size:32px;font-weight:700}.impact-stats .stat-label{color:#76909f;color:var(--color-text-secondary,#76909f);font-size:14px}.impact-stats .stat-divider{background:#d5dedd;background:var(--color-border,#d5dedd);height:40px;width:1px}.why-sponsor-section{margin:0 auto;max-width:1100px;padding:100px 24px}.why-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.why-card{background:#fff;background:var(--color-bg-elevated,#fff);border:1px solid #d5dedd;border:1px solid var(--color-border,#d5dedd);border-radius:20px;padding:32px;text-align:center;transition:all .2s ease}.why-card:hover{border-color:#ea6d37;border-color:var(--color-coral,#ea6d37);box-shadow:0 12px 32px #ea6d371a}.why-icon{align-items:center;background:linear-gradient(135deg,#ea6d371a,#ecc9621a);border-radius:16px;color:#ea6d37;color:var(--color-coral,#ea6d37);display:flex;height:64px;justify-content:center;margin:0 auto 20px;width:64px}.why-icon svg{height:32px;width:32px}.why-card h3{color:#3d4954;color:var(--color-text,#3d4954);font-size:20px;font-weight:600;margin:0 0 12px}[data-theme=dark] .why-card h3{color:#fcfdfe}.why-card p{color:#76909f;color:var(--color-text-secondary,#76909f);font-size:15px;line-height:1.6;margin:0}.sponsor-page .section-header{margin-bottom:60px;text-align:center}.sponsor-page .section-title{color:#3d4954;color:var(--color-text,#3d4954);font-size:clamp(28px,5vw,40px);font-weight:700;letter-spacing:-.02em;margin:0 0 12px}[data-theme=dark] .sponsor-page .section-title{color:#fcfdfe}.sponsor-page .section-subtitle{color:#76909f;color:var(--color-text-secondary,#76909f);font-size:18px;margin:0}.sponsor-tiers-section{background:#f5f9fa;background:var(--color-bg-subtle,#f5f9fa);border-radius:32px;margin:0 auto 100px;max-width:1200px;padding:100px 24px}[data-theme=dark] .sponsor-tiers-section{background:#297a921a}.sponsor-grid{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.sponsor-card{background:#fff;background:var(--color-bg-elevated,#fff);border:1px solid #d5dedd;border:1px solid var(--color-border,#d5dedd);border-radius:20px;padding:28px;position:relative;text-align:center;transition:all .2s ease}.sponsor-card:hover{border-color:#8d7f88;border-color:var(--color-text-tertiary,#8d7f88);box-shadow:0 12px 32px #0000001a}.sponsor-card.featured{border:2px solid #ea6d37;border:2px solid var(--color-coral,#ea6d37);box-shadow:0 8px 24px #ea6d3733;transform:scale(1.02)}.sponsor-badge{background:linear-gradient(135deg,#ea6d37,#ecc962);border-radius:100px;color:#fff;font-size:12px;font-weight:600;left:50%;padding:6px 16px;position:absolute;top:-12px;transform:translateX(-50%);white-space:nowrap}.sponsor-icon{align-items:center;background:#f5f9fa;background:var(--color-bg-subtle,#f5f9fa);border-radius:14px;color:#297a92;color:var(--color-primary,#297a92);display:flex;height:56px;justify-content:center;margin:0 auto 16px;width:56px}.sponsor-card.featured .sponsor-icon{background:linear-gradient(135deg,#ea6d371a,#ecc9621a);color:#ea6d37;color:var(--color-coral,#ea6d37)}.sponsor-tier-name{color:#76909f;color:var(--color-text-secondary,#76909f);font-size:14px;font-weight:600;letter-spacing:.05em;margin:0 0 8px;text-transform:uppercase}.sponsor-price{color:#3d4954;color:var(--color-text,#3d4954);font-size:40px;font-weight:700;line-height:1;margin:0 0 4px}[data-theme=dark] .sponsor-price{color:#fcfdfe}.sponsor-price span{font-size:16px;font-weight:500}.sponsor-impact,.sponsor-price span{color:#76909f;color:var(--color-text-secondary,#76909f)}.sponsor-impact{font-size:14px;line-height:1.5;margin:0 0 20px}.sponsor-features{list-style:none;margin:0 0 24px;padding:0;text-align:left}.sponsor-features li{align-items:flex-start;border-bottom:1px solid #ecf3f2;border-bottom:1px solid var(--color-border-subtle,#ecf3f2);color:#76909f;color:var(--color-text-secondary,#76909f);display:flex;font-size:14px;gap:10px;padding:10px 0}.sponsor-features li:last-child{border-bottom:none}.sponsor-features li svg{color:#10b981;flex-shrink:0;height:18px;margin-top:1px;width:18px}.sponsor-cta{border-radius:12px;box-sizing:border-box;cursor:pointer;display:block;font-size:16px;font-weight:600;padding:14px 24px;text-align:center;text-decoration:none;transition:all .15s ease;width:100%}.sponsor-cta.primary{background:linear-gradient(135deg,#ea6d37,#ecc962);border:none;color:#fff}.sponsor-cta.primary:hover{box-shadow:0 8px 20px #ea6d374d;transform:translateY(-2px)}.sponsor-cta.secondary{background:#0000;border:1px solid #d5dedd;border:1px solid var(--color-border,#d5dedd);color:#3d4954;color:var(--color-text,#3d4954)}.sponsor-cta.secondary:hover{background:#f5f9fa;background:var(--color-bg-subtle,#f5f9fa);border-color:#297a92;border-color:var(--color-primary,#297a92)}.sponsor-tax-note{font-size:12px;margin:12px 0 0}.sponsor-tax-note,.tax-disclaimer{color:#8d7f88;color:var(--color-text-tertiary,#8d7f88)}.tax-disclaimer{font-size:13px;margin-left:auto;margin-right:auto;margin-top:40px;max-width:600px;text-align:center}.impact-stories-section{margin:0 auto;max-width:1100px;padding:100px 24px}.stories-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.impact-card{background:#fff;background:var(--color-bg-elevated,#fff);border:1px solid #d5dedd;border:1px solid var(--color-border,#d5dedd);border-radius:20px;padding:28px;transition:all .2s ease}.impact-card:hover{border-color:#8d7f88;border-color:var(--color-text-tertiary,#8d7f88)}.impact-quote{color:#3d4954;color:var(--color-text,#3d4954);font-size:16px;font-style:italic;line-height:1.6;margin:0 0 24px}[data-theme=dark] .impact-quote{color:#fcfdfe}.impact-author{gap:12px}.impact-author,.impact-avatar{align-items:center;display:flex}.impact-avatar{background:linear-gradient(135deg,#ea6d3733,#ecc96233);border-radius:50%;color:#ea6d37;color:var(--color-coral,#ea6d37);font-size:16px;font-weight:600;height:44px;justify-content:center;width:44px}.impact-author strong{color:#3d4954;color:var(--color-text,#3d4954);display:block;font-size:15px;font-weight:600}[data-theme=dark] .impact-author strong{color:#fcfdfe}.impact-author span{color:#8d7f88;color:var(--color-text-tertiary,#8d7f88);font-size:13px}.sponsor-page .how-section{margin:0 auto;max-width:1000px;padding:100px 24px}.sponsor-page .steps-grid{align-items:center;display:flex;gap:24px;justify-content:center}.sponsor-page .step-card{background:#fff;background:var(--color-bg-elevated,#fff);border:1px solid #d5dedd;border:1px solid var(--color-border,#d5dedd);border-radius:20px;flex:1 1;max-width:260px;padding:32px 24px;text-align:center;transition:all .2s ease}.sponsor-page .step-card:hover{border-color:#ea6d37;border-color:var(--color-coral,#ea6d37)}.sponsor-page .step-number{align-items:center;background:linear-gradient(135deg,#ea6d371a,#ecc9621a);border-radius:12px;color:#ea6d37;color:var(--color-coral,#ea6d37);display:flex;font-size:18px;font-weight:700;height:44px;justify-content:center;margin:0 auto 16px;width:44px}.sponsor-page .step-card h3{color:#3d4954;color:var(--color-text,#3d4954);font-size:18px;font-weight:600;margin:0 0 8px}[data-theme=dark] .sponsor-page .step-card h3{color:#fcfdfe}.sponsor-page .step-card p{color:#76909f;color:var(--color-text-secondary,#76909f);font-size:14px;line-height:1.5;margin:0}.sponsor-page .step-arrow{align-items:center;color:#8d7f88;color:var(--color-text-tertiary,#8d7f88);display:flex;justify-content:center}.final-cta-section{padding:80px 24px 100px}.final-cta-section .cta-card{background:linear-gradient(135deg,#ea6d370d,#ecc9620d);border:1px solid #ea6d3733;border-radius:24px;margin:0 auto;max-width:600px;padding:60px 40px;text-align:center}.final-cta-section .cta-card h2{color:#3d4954;color:var(--color-text,#3d4954);font-size:32px;font-weight:700;margin:0 0 12px}[data-theme=dark] .final-cta-section .cta-card h2{color:#fcfdfe}.final-cta-section .cta-card>p:first-of-type{color:#76909f;color:var(--color-text-secondary,#76909f);font-size:18px;margin:0 0 32px}.final-cta-section .cta-primary{align-items:center;background:linear-gradient(135deg,#ea6d37,#ecc962);border:none;border-radius:14px;box-shadow:0 8px 24px #ea6d374d;color:#fff;cursor:pointer;display:inline-flex;font-size:18px;font-weight:600;gap:10px;padding:18px 36px;text-decoration:none;transition:all .2s ease}.final-cta-section .cta-primary:hover{box-shadow:0 12px 32px #ea6d3766;transform:translateY(-2px)}.cta-subtext{color:#8d7f88;color:var(--color-text-tertiary,#8d7f88);font-size:14px;margin-top:20px!important}.cta-subtext a{color:#297a92;color:var(--color-primary,#297a92);text-decoration:none}.cta-subtext a:hover{text-decoration:underline}.sponsor-page .footer-2025{background:#f5f9fa;background:var(--color-bg-subtle,#f5f9fa);border-top:1px solid #d5dedd;border-top:1px solid var(--color-border,#d5dedd)}.sponsor-page .footer-content{grid-gap:60px;display:grid;gap:60px;grid-template-columns:2fr 3fr;margin:0 auto;max-width:1200px;padding:60px 24px 40px}.sponsor-page .footer-brand img{height:32px;margin-bottom:12px}.sponsor-page .footer-brand p{color:#8d7f88;color:var(--color-text-tertiary,#8d7f88);font-size:14px;margin:0}.sponsor-page .footer-links{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(3,1fr)}.sponsor-page .footer-col h4{color:#3d4954;color:var(--color-text,#3d4954);font-size:13px;font-weight:600;letter-spacing:.05em;margin:0 0 16px;text-transform:uppercase}[data-theme=dark] .sponsor-page .footer-col h4{color:#fcfdfe}.sponsor-page .footer-col a,.sponsor-page .footer-col button{background:none;border:none;color:#76909f;color:var(--color-text-secondary,#76909f);cursor:pointer;display:block;font-size:14px;padding:6px 0;text-align:left;text-decoration:none;transition:color .15s ease}.sponsor-page .footer-col a:hover,.sponsor-page .footer-col button:hover{color:#3d4954;color:var(--color-text,#3d4954)}.sponsor-page .footer-bottom{border-top:1px solid #d5dedd;border-top:1px solid var(--color-border,#d5dedd);padding:24px;text-align:center}.sponsor-page .footer-bottom p{color:#8d7f88;color:var(--color-text-tertiary,#8d7f88);font-size:13px;margin:0}@media (max-width:900px){.sponsor-grid{grid-template-columns:repeat(2,1fr)}.sponsor-card.featured{transform:none}.stories-grid,.why-grid{grid-template-columns:1fr}}@media (max-width:768px){.sponsor-page .nav-content{padding:12px 16px}.sponsor-page .nav-link:not(.theme-toggle){display:none}.sponsor-hero{padding:120px 20px 60px}.sponsor-headline{font-size:32px}.sponsor-subheadline{font-size:16px}.impact-stats{flex-direction:column;gap:24px}.impact-stats .stat-divider{height:1px;width:60px}.sponsor-grid{grid-template-columns:1fr;margin:0 auto;max-width:400px}.sponsor-page .steps-grid{flex-direction:column}.sponsor-page .step-arrow{margin:8px 0;transform:rotate(90deg)}.sponsor-page .step-card{max-width:100%;width:100%}.sponsor-page .footer-content{gap:40px;grid-template-columns:1fr}.sponsor-page .footer-links{gap:20px;grid-template-columns:repeat(3,1fr)}.final-cta-section .cta-card{padding:40px 24px}.final-cta-section .cta-card h2{font-size:24px}}@media (max-width:480px){.sponsor-page .footer-links{grid-template-columns:1fr 1fr}.sponsor-price{font-size:32px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.sponsor-page .gradient-text{animation:none}}.sponsor-cta:focus-visible,.sponsor-page .nav-btn-primary:focus-visible{outline:2px solid #ea6d37;outline:2px solid var(--color-coral,#ea6d37);outline-offset:2px}
/*# sourceMappingURL=main.c3453f34.css.map*/