*{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1a1a1a;background:#fff;line-height:1.6;overflow-x:hidden;width:100%}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.2;letter-spacing:-.025em}p{margin:0}button{font-family:inherit;cursor:pointer;border:none;outline:none;background:none;padding:0}html{scroll-behavior:smooth}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.text-center{text-align:center}.mt-4{margin-top:1rem}.mb-4{margin-bottom:1rem}*:focus-visible{outline:2px solid #0066FF;outline-offset:2px}::selection{background:#06f3;color:#1a1a1a}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease;overflow-y:auto}.modal-content{background:#fff;border-radius:20px;max-width:700px!important;width:90%!important;max-height:85vh;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease;position:relative;display:flex;flex-direction:column;overflow:hidden}.modal-close{position:absolute;top:20px;right:20px;background:#0000000d;border:none;color:#666;cursor:pointer;padding:8px;border-radius:50%;transition:all .2s ease;z-index:10;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:#0000001a;color:#1a1a1a}.modal-header{display:flex;align-items:center;gap:24px;padding:32px 40px 28px;border-bottom:1px solid #E8EAED;flex-shrink:0;background:#fafbfc}.modal-avatar{position:relative;width:80px;height:80px;flex-shrink:0}.modal-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid #F3F4F6}.modal-avatar .online-indicator{position:absolute;bottom:5px;right:5px;width:24px;height:24px;background:#06f;border:4px solid white;border-radius:50%}.modal-tutor-info h2{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0 0 6px;letter-spacing:-.025em}.modal-meta{display:flex;align-items:center;gap:12px;font-size:.875rem;color:#6b7280}.modal-meta .rating{display:flex;align-items:center;gap:4px}.modal-meta .rating span{font-weight:600;color:#111827}.modal-meta .native-badge{background:#10b981;color:#fff;padding:4px 10px;border-radius:16px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.modal-body{padding:32px 40px;overflow-y:auto;flex:1}.modal-section{margin-bottom:24px}.modal-section:last-child{margin-bottom:0}.modal-section h3{font-size:1rem;font-weight:600;color:#111827;margin:0 0 12px}.modal-section p{font-size:.875rem;line-height:1.5;color:#4b5563;margin:0 0 10px}.modal-section .personality{font-style:italic;color:#6b7280;margin-top:12px}.specialty-list{display:flex;flex-wrap:wrap;gap:12px}.specialty-pill{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#f0f7ff;color:#06f;border-radius:20px;font-size:.875rem;font-weight:600}.specialty-pill svg{color:#06f}.modal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:16px;background:#f8f9fa;border-radius:12px;margin-top:16px;border:1px solid #E8EAED}.stat-item{display:flex;gap:12px}.stat-item svg{color:#06f;flex-shrink:0}.stat-item strong{display:block;font-size:.875rem;font-weight:600;color:#111827;margin-bottom:4px}.stat-item p{font-size:.875rem;color:#6b7280;margin:0}.modal-footer{display:flex;gap:16px;padding:28px 40px 32px;border-top:1px solid #E8EAED;flex-shrink:0;background:#fafbfc}.modal-cancel{flex:1;padding:14px 24px;background:#fff;border:1px solid #E8EAED;color:#666;font-size:.9375rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease}.modal-cancel:hover{background:#f8f9fa;border-color:#06f;color:#1a1a1a}.modal-start{flex:2;padding:14px 24px;background:linear-gradient(135deg,#4285f4,#2196f3);border:none;color:#fff;font-size:.9375rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.modal-start:hover{background:linear-gradient(135deg,#3275e3,#1976d2);transform:translateY(-1px);box-shadow:0 4px 12px #4285f459}.video-highlight{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#e8f5e9;color:#2e7d32;border-radius:12px;font-size:.875rem;font-weight:600;margin-top:16px}.video-highlight svg{flex-shrink:0}@media (max-width: 768px){.modal-overlay{padding:0;align-items:flex-start}.modal-content{max-width:100%!important;width:100%!important;max-height:100vh;height:100vh;border-radius:0;margin:0;overflow-y:auto}.modal-header{flex-direction:column;text-align:center}.modal-stats{grid-template-columns:1fr;gap:16px}.modal-footer{flex-direction:column;padding:20px}.modal-cancel,.modal-start{width:100%}.modal-body{overflow-y:auto;-webkit-overflow-scrolling:touch}}.session-timer{position:relative;background:#f0f7ff;border:1px solid #0066FF;border-radius:20px;padding:6px 16px;display:inline-flex;flex-direction:column;gap:4px;transition:all .3s ease;min-width:120px;box-shadow:0 4px 12px #0000001a}.session-timer.unlimited{background:#e8f5e9;border-color:#4caf50;color:#2e7d32;flex-direction:row;align-items:center;gap:8px;padding:8px 16px}.timer-content{display:flex;align-items:center;gap:8px}.timer-text{font-size:14px;font-weight:600;color:#06f;font-variant-numeric:tabular-nums}.timer-warning{font-size:12px;font-weight:500;margin-left:auto}.timer-progress{width:100%;height:3px;background:#06f3;border-radius:2px;overflow:hidden}.timer-progress-bar{height:100%;background:#06f;border-radius:2px;transition:width 1s linear}.session-timer.warning{background:#fff4e5;border-color:#ffb020;animation:warningPulse 2s ease-in-out infinite}.session-timer.warning .timer-text{color:#f80}.session-timer.warning .timer-progress-bar{background:#ffb020}@keyframes warningPulse{0%,to{transform:scale(1);box-shadow:0 0 #ffb02066}50%{transform:scale(1.02);box-shadow:0 0 0 8px #ffb02000}}.session-timer.critical{background:#ffebee;border-color:#ff4757;animation:criticalPulse .8s ease-in-out infinite}.session-timer.critical .timer-text{color:#ff4757;animation:criticalBlink 1s ease-in-out infinite}.session-timer.critical .timer-progress-bar{background:#ff4757}@keyframes criticalPulse{0%,to{transform:scale(1);box-shadow:0 0 #ff475766}50%{transform:scale(1.05);box-shadow:0 0 0 12px #ff475700}}@keyframes criticalBlink{0%,to{opacity:1}50%{opacity:.6}}.upgrade-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.upgrade-modal{background:#fff;border-radius:24px;padding:40px;max-width:500px;width:90%;text-align:center;box-shadow:0 20px 50px #0000004d;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.upgrade-modal-icon{margin-bottom:24px}.upgrade-modal h2{font-size:28px;font-weight:700;margin-bottom:12px;color:#1a1a1a}.upgrade-modal>p{font-size:16px;color:#666;margin-bottom:32px}.upgrade-prompt p{font-size:18px;color:#333;margin-bottom:24px;font-weight:500}.upgrade-benefits{display:flex;gap:16px;margin-bottom:32px}.benefit{flex:1;padding:20px;border:2px solid #E8EAED;border-radius:12px;background:#fafafa;position:relative;transition:all .2s ease}.benefit:hover{border-color:#06f;transform:translateY(-2px)}.benefit.recommended{border-color:#06f;background:#f0f7ff}.benefit .badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#06f;color:#fff;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px}.benefit strong{display:block;font-size:18px;margin-bottom:8px;color:#1a1a1a}.benefit span{display:block;font-size:14px;color:#666}.upgrade-actions{display:flex;gap:12px;justify-content:center}.upgrade-actions .btn-secondary,.upgrade-actions .btn-primary{padding:12px 24px;border-radius:12px;font-size:16px;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.upgrade-actions .btn-secondary{background:#f0f0f0;color:#666}.upgrade-actions .btn-secondary:hover{background:#e0e0e0}.upgrade-actions .btn-primary{background:#06f;color:#fff;flex:1;justify-content:center}.upgrade-actions .btn-primary:hover{background:#0052cc;transform:translateY(-1px);box-shadow:0 4px 12px #0066ff4d}.upgrade-actions .btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none}.upgrade-plans{display:flex;gap:16px;margin-bottom:32px}.plan-card{flex:1;padding:24px;border:2px solid #E8EAED;border-radius:16px;background:#fff;cursor:pointer;position:relative;transition:all .3s ease}.plan-card:hover{border-color:#06f;transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.plan-card.selected{border-color:#06f;background:#f0f7ff;transform:translateY(-2px);box-shadow:0 4px 16px #0066ff26}.plan-card.recommended{position:relative;overflow:visible}.recommended-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#06f;color:#fff;padding:4px 16px;border-radius:12px;font-size:11px;font-weight:600;display:flex;align-items:center;gap:4px;letter-spacing:.5px;box-shadow:0 2px 8px #0066ff4d}.plan-header{text-align:center;margin-bottom:20px}.plan-header h3{font-size:20px;font-weight:700;color:#1a1a1a;margin-bottom:12px}.plan-price{display:flex;align-items:baseline;justify-content:center;gap:2px}.plan-price .currency{font-size:16px;color:#666;font-weight:500}.plan-price .amount{font-size:32px;font-weight:700;color:#06f}.plan-price .period{font-size:14px;color:#666;margin-left:4px}.plan-features{display:flex;flex-direction:column;gap:12px}.plan-features .feature{display:flex;align-items:center;gap:8px;font-size:14px;color:#333}.plan-features .feature svg{color:#4caf50;flex-shrink:0}.plan-selected-badge{position:absolute;top:12px;right:12px;width:32px;height:32px;background:#06f;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 8px #0066ff4d}.session-paused-notice{font-size:14px;color:#f80;background:#fff4e5;padding:8px 16px;border-radius:8px;margin-top:8px;font-weight:500}.pro-limit-notice{font-size:16px;color:#06f;background:#f0f7ff;padding:12px 20px;border-radius:8px;margin-top:12px;font-weight:500;border:1px solid #0066FF20}.upgrade-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow-y:auto}@media (max-width: 768px){.upgrade-modal-overlay{padding:0;align-items:center;justify-content:center}}.upgrade-modal{background:#fff;border-radius:12px;max-width:800px;width:100%;position:relative;animation:modalSlideIn .3s ease;box-shadow:0 10px 25px #0000001a;padding:0;margin:auto;max-height:90vh;display:flex;flex-direction:column}.upgrade-modal.single-plan{max-width:500px}.upgrade-modal.single-plan .upgrade-modal-header{padding:20px 20px 16px}.upgrade-modal.single-plan .upgrade-modal-header h2{font-size:22px}.upgrade-modal.single-plan .upgrade-plan{padding:20px 24px 24px;min-height:unset}.upgrade-modal.single-plan .plan-features{margin-bottom:20px;gap:10px}.upgrade-modal.single-plan .upgrade-footer{padding:12px}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.upgrade-modal-close{position:absolute;top:12px;right:12px;background:#f3f4f6;border:none;border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:10}.upgrade-modal-close:hover{background:#e5e7eb}.upgrade-modal-header{text-align:center;padding:16px 16px 4px}.upgrade-modal-header h2{font-size:24px;font-weight:600;margin:0 0 8px;color:#1a1a1a}.upgrade-modal-header p{font-size:15px;color:#666;margin:0}.upgrade-plans{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:40px 30px 20px;align-items:stretch;overflow-y:auto;flex:1}@media (max-width: 768px){.upgrade-modal{max-height:95vh;margin:10px}.upgrade-plans{grid-template-columns:1fr;gap:16px;padding:20px;overflow-y:auto;max-height:calc(95vh - 200px)}}.upgrade-plan{background:#fff;border:1px solid #E8EAED;border-radius:10px;padding:30px 35px 35px;position:relative;transition:all .2s ease;display:flex;flex-direction:column;min-height:350px}@media (max-width: 768px){.upgrade-plan{padding:20px;min-height:auto}}.upgrade-plan:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:#06f}.upgrade-plan.popular{border:1px solid #0066FF;box-shadow:0 2px 8px #0066ff1a}.popular-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:#06f;color:#fff;padding:3px 12px;border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.upgrade-plan h3{font-size:20px;font-weight:600;margin:0 0 12px;color:#1a1a1a;text-align:center}.plan-price{display:flex;align-items:baseline;gap:4px;margin-bottom:16px;justify-content:center}.plan-price .price{font-size:32px;font-weight:700;color:#1a1a1a;line-height:1}.plan-price .period{font-size:14px;color:#666}.plan-features{list-style:none;padding:0;margin:0 0 24px;width:100%;flex:1;display:flex;flex-direction:column;gap:12px}.plan-features li{display:flex;align-items:center;gap:10px;min-height:20px;font-size:14px;color:#666;line-height:1.4}.feature-icon{width:14px!important;height:14px!important;min-width:14px!important;border-radius:50%;border:1.5px solid #0066FF;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0;background:transparent;padding:1px;color:#06f}.feature-icon-empty{width:14px;height:14px;border-radius:50%;background:#e8eaed;flex-shrink:0}.plan-button{width:100%;padding:12px 20px;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:auto;background:#06f;color:#fff;border:none}.plan-button:hover:not(:disabled){background:#0052cc;transform:translateY(-1px);box-shadow:0 4px 12px #0066ff40}.plan-button:disabled{opacity:.5;cursor:not-allowed}.upgrade-footer{text-align:center;padding:16px;border-top:1px solid #E8EAED;background:#f8f9fa;border-radius:0 0 12px 12px}.upgrade-footer p{margin:0;font-size:11px;color:#666}@media (max-width: 768px){.upgrade-modal-overlay{padding:0;align-items:flex-start;position:fixed;top:0;left:0;right:0;bottom:0}.upgrade-modal{max-height:90vh;border-radius:12px;margin:20px;width:calc(100% - 40px);max-width:100%;overflow:hidden;position:relative;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}.upgrade-modal-header{position:relative;padding:12px 16px 8px}.upgrade-plans{overflow-y:auto;padding-bottom:20px;flex:1;-webkit-overflow-scrolling:touch}.upgrade-footer{position:relative;margin-top:auto}.upgrade-modal-close{position:absolute;top:12px;right:12px;background:#f3f4f6;border:none;box-shadow:0 2px 8px #0000001a;width:32px;height:32px;z-index:10;border-radius:8px;display:flex;align-items:center;justify-content:center}.upgrade-modal-close:hover{background:#f5f5f5;transform:scale(1.05)}.upgrade-plans{grid-template-columns:1fr;padding:20px;gap:16px}.upgrade-plan{min-height:unset;padding:20px}.upgrade-plan.popular{transform:none;box-shadow:0 2px 8px #0066ff26}.upgrade-modal-header{padding:0 20px 20px}.upgrade-modal-header h2{font-size:24px;margin-bottom:8px}.upgrade-modal-header p{font-size:14px}.plan-features{margin-bottom:20px;gap:10px}.plan-price .price{font-size:28px}.popular-badge{top:-8px;padding:4px 14px;font-size:12px}}@media (max-width: 480px){.upgrade-modal{max-height:85vh;margin:10px;width:calc(100% - 20px)}.upgrade-modal-header h2{font-size:18px}.upgrade-modal-header p{font-size:12px}.upgrade-plans{padding:12px;gap:12px}.upgrade-plan{padding:14px}.upgrade-plan h3{font-size:16px}.plan-price .price{font-size:22px}.plan-features{gap:6px}.plan-features li{font-size:11px}.feature-icon{width:12px!important;height:12px!important;min-width:12px!important}.plan-button{padding:8px 14px;font-size:13px}.upgrade-footer p{font-size:10px}}.connection-warning-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.connection-warning{background:#fff;border-radius:24px;padding:48px;max-width:400px;width:90%;text-align:center;box-shadow:0 20px 50px #0000004d;animation:warningSlideIn .3s ease-out}@keyframes warningSlideIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.connection-warning h2{font-size:24px;font-weight:700;margin:16px 0 12px;color:#1a1a1a}.connection-warning p{font-size:16px;color:#666;margin-bottom:24px;line-height:1.5}.reconnect-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 32px;background:#06f;color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-bottom:16px}.reconnect-btn:hover{background:#0052cc;transform:translateY(-1px);box-shadow:0 4px 12px #0066ff4d}.upgrade-hint{font-size:14px;color:#999;margin:0}.simple-onboarding-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.simple-onboarding-modal{background:#fff;border-radius:16px;padding:32px;max-width:400px;width:90%;box-shadow:0 10px 40px #00000026}.simple-onboarding-modal h2{font-size:24px;font-weight:600;margin:0 0 24px;color:#333;text-align:center}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;color:#666;font-size:14px;font-weight:500}.simple-input{width:100%;padding:12px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#333;font-size:16px;transition:all .2s ease}.simple-input:focus{outline:none;border-color:#007aff;background:#fff;box-shadow:0 0 0 3px #007aff1a}.simple-input::placeholder{color:#999;opacity:1}.simple-select{width:100%;padding:14px 48px 14px 16px;background:#f8f9fa;border:2px solid #e8eaed;border-radius:12px;color:#333;font-size:16px;font-weight:500;transition:all .2s ease;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f6368' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 16px center;background-size:18px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.simple-select:hover{border-color:#dadce0;background:#fff}.simple-select:focus{outline:none;border-color:#007aff;background:#fff;box-shadow:0 0 0 4px #007aff26}.simple-select option{padding:12px;font-size:16px;font-weight:400}.simple-select option:checked{background:#e8f0fe}.level-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.level-btn{padding:12px;background:#f8f8f8;border:1px solid #e0e0e0;border-radius:8px;color:#333;font-size:14px;cursor:pointer;transition:all .2s ease}.level-btn:hover{background:#f0f0f0;border-color:#d0d0d0}.level-btn.active{background:#007aff;border-color:#007aff;color:#fff}.start-btn{width:100%;padding:14px;background:#007aff;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.start-btn:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.start-btn:disabled{opacity:.5;cursor:not-allowed}.progress-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.progress-modal{background:#fff;border-radius:16px;padding:32px;max-width:480px;width:90%;max-height:80vh;overflow-y:auto;position:relative;animation:slideUp .3s ease-out;box-shadow:0 20px 40px #0000001a}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.progress-modal-close{position:absolute;top:16px;right:16px;background:#f5f5f5;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#666}.progress-modal-close:hover{background:#e8e8e8;transform:scale(1.1)}.progress-modal-title{font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 24px;text-align:center}.progress-loading{text-align:center;color:#666;padding:40px;font-size:16px}.progress-refreshing{position:absolute;top:16px;left:16px;background:#e8f0fe;color:#06f;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;animation:pulse 1.5s ease-in-out infinite}.progress-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}@media (max-width: 480px){.progress-stats-grid{grid-template-columns:1fr}}.progress-stat-card{background:#f8f9fa;border:1px solid #E8EAED;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;transition:all .2s ease}.progress-stat-card:hover{background:#f0f2f5;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.progress-stat-icon{width:48px;height:48px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 8px #0000000d}.progress-stat-icon .icon-clock{color:gold}.progress-stat-icon .icon-calendar{color:#ff6b6b}.progress-stat-icon .icon-target{color:#4ecdc4}.progress-stat-icon .icon-trending{color:#95e1d3}.progress-stat-content{flex:1}.progress-stat-value{font-size:28px;font-weight:700;color:#1a1a1a;line-height:1;margin-bottom:4px}.progress-stat-label{font-size:14px;color:#666;font-weight:500}.progress-tip{background:#e8f0fe;border:1px solid #C9DFFC;border-radius:12px;padding:20px;margin-bottom:16px}.progress-tip-header{font-size:16px;font-weight:600;color:#06f;margin-bottom:8px}.progress-tip-content{font-size:15px;color:#333;line-height:1.5}.progress-last-session{text-align:center;color:#666;font-size:14px;padding-top:8px;border-top:1px solid #E8EAED}.progress-tutors-section{margin-top:24px;padding-top:24px;border-top:1px solid #E8EAED}.progress-tutors-section h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 16px}.progress-tutors-list{display:flex;flex-direction:column;gap:12px}.progress-tutor-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fa;border:1px solid #E8EAED;border-radius:8px;transition:all .2s ease}.progress-tutor-item:hover{background:#f0f2f5;border-color:#d1d5db;transform:translate(4px)}.progress-tutor-icon{width:36px;height:36px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#666;box-shadow:0 2px 4px #0000000d}.progress-tutor-info{flex:1}.progress-tutor-name{font-size:15px;font-weight:600;color:#1a1a1a;margin-bottom:2px}.progress-tutor-stats{font-size:13px;color:#666}:root{--primary-gradient: linear-gradient(135deg, #4B7BFF 0%, #3E5FDB 100%);--accent-gradient: linear-gradient(135deg, #FFE866 0%, #FFD833 100%);--success-gradient: linear-gradient(135deg, #00C896 0%, #00A77D 100%);--text-primary: #2d3748;--text-secondary: #718096;--bg-primary: #ffffff;--bg-secondary: #fefefe;--bg-tertiary: #fafafa;--border-light: #e8e5dc;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,sans-serif;background-color:#fff;color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-header{background:#fff;border-bottom:1px solid #E8EAED;position:relative;z-index:50;box-shadow:0 1px 3px #0000000d}.app-header .container{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;max-width:1440px;margin:0 auto;height:72px}.logo{display:flex;align-items:center;gap:12px;text-decoration:none;transition:all .3s ease}.logo:hover{opacity:.9;transform:translateY(-1px)}.logo-img{height:44px;width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));object-fit:contain}.logo h1{font-size:24px;font-weight:700;color:var(--text-primary);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.header-nav{display:flex;align-items:center;gap:32px;margin-left:auto;margin-right:32px}.header-nav a{color:var(--text-primary);text-decoration:none;font-weight:500;font-size:15px;transition:color .2s ease}.header-nav a:hover{color:#06f}.header-actions{display:flex;align-items:center;gap:12px}.try-free-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#06f,#0052cc);color:#fff;border:none;border-radius:var(--radius-lg);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #06f3;font-size:.95rem}.try-free-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0066ff4d}.login-btn{padding:10px 20px;background:transparent;color:var(--text-primary);border:none;border-radius:var(--radius-lg);font-weight:500;cursor:pointer;transition:all .2s ease;font-size:15px}.login-btn:hover{background:var(--bg-tertiary)}.signup-btn{padding:10px 24px;background:#06f;color:#fff;border:none;border-radius:var(--radius-lg);font-weight:600;cursor:pointer;transition:all .3s ease;font-size:15px}.signup-btn:hover{background:#0052cc;transform:translateY(-1px);box-shadow:0 4px 12px #0066ff4d}.btn-text{font-size:15px}.btn-badge{background:#fff3;padding:4px 10px;border-radius:20px;font-size:13px;font-weight:700}.user-menu-container{position:relative}.user-menu{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-tertiary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.user-menu:hover{background:var(--bg-secondary)}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:160px;overflow:hidden;z-index:9999}.user-email{padding:8px 16px;font-size:13px;color:#666;border-bottom:1px solid #f0f0f0;margin-bottom:4px;font-weight:500;text-align:center}.dropdown-divider{height:1px;background:#f0f0f0;margin:4px 0}.user-dropdown a{display:block;padding:12px 16px;color:var(--text-primary);text-decoration:none;font-size:14px;transition:background .2s ease}.user-dropdown a:hover{background:var(--bg-tertiary)}.user-dropdown .progress-link{display:flex;align-items:center;gap:8px}.user-dropdown .progress-link svg{flex-shrink:0}.main-content{flex:1;min-height:calc(100vh - 160px);position:relative;background:#fff}.tutor-selection-page{padding:40px 0 60px;background:#fff}.page-header{text-align:center;margin-bottom:48px}.page-badge{display:inline-block;padding:6px 16px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;border-radius:20px;margin-bottom:16px}.page-header h1{font-size:48px;font-weight:800;line-height:1.2;margin-bottom:16px;color:var(--text-primary)}.page-header h1 .highlight{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-header p{font-size:20px;color:var(--text-secondary);max-width:600px;margin:0 auto}.tutor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:24px;margin-top:32px}.search-bar{position:relative;max-width:600px;margin:0 auto 32px}.search-bar input{width:100%;padding:16px 20px 16px 52px;border:2px solid var(--border-light);border-radius:var(--radius-xl);font-size:16px;transition:all .3s ease;background:#fff;box-shadow:0 2px 8px #0000000a}.search-bar input:focus{outline:none;border-color:#6b5fff;box-shadow:0 0 0 4px #6b5fff1a}.search-bar svg{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:#9ca3af}.category-filters{display:flex;justify-content:center;gap:12px;margin-bottom:40px;flex-wrap:wrap}.category-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;border:2px solid transparent;border-radius:var(--radius-xl);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.category-btn:hover{border-color:#4b7bff;color:#4b7bff;background:#4b7bff0d}.category-btn.active{background:var(--primary-gradient);color:#fff;border-color:transparent;box-shadow:0 4px 12px #6b5fff40}.app-footer{background:#fff;border-top:1px solid #E8EAED;padding:32px 0 20px;margin-top:auto}.footer-content{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;max-width:1200px;margin:0 auto 48px;padding:0 24px}.footer-section{display:flex;flex-direction:column}.footer-section.brand-section{display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:350px}.footer-section.brand-section h4{font-size:24px;font-weight:700;background:linear-gradient(135deg,#06f,#0052cc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px}.footer-section h4{font-size:14px;font-weight:600;margin-bottom:20px;color:#1a1a1a;text-transform:uppercase;letter-spacing:.5px}.footer-section p{color:#666;font-size:15px;line-height:1.6;margin-bottom:16px}.footer-stats{display:flex;align-items:center;gap:12px;font-size:13px;color:#999}.footer-stats span:nth-child(2){color:#e8eaed}.footer-section a{display:block;color:#666;text-decoration:none;font-size:15px;padding:8px 0;transition:all .2s ease;position:relative}.footer-section a:hover{color:#06f;transform:translate(2px)}.footer-section a:before{content:"";position:absolute;left:-12px;top:50%;transform:translateY(-50%);width:4px;height:4px;background:#06f;border-radius:50%;opacity:0;transition:opacity .2s ease}.footer-section a:hover:before{opacity:1}.social-links{display:flex;gap:16px;margin-top:8px}.social-links a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #E8EAED;border-radius:50%;transition:all .3s ease}.social-links a:hover{background:#06f;color:#fff;border-color:#06f;transform:translateY(-2px);box-shadow:0 4px 12px #00d0844d}.footer-bottom{text-align:center;padding-top:32px;border-top:1px solid #E8EAED;color:#999;font-size:14px;max-width:1200px;margin:0 auto}@media (max-width: 768px){.app-header .container{padding:12px 16px;height:64px}.logo-img{height:36px}.header-nav{display:none}.header-actions{gap:8px}.login-btn,.signup-btn{padding:8px 16px;font-size:14px}.welcome-message{display:none!important}.user-menu{padding:6px 12px}.page-header h1{font-size:32px}.page-header p{font-size:16px;padding:0 16px}.tutor-grid{grid-template-columns:1fr;gap:16px;padding:0 16px}.search-bar{margin:0 16px 24px}.category-filters{padding:0 16px;margin-bottom:24px}.category-btn{padding:8px 16px;font-size:13px}.tutor-selection-page{padding:24px 0 40px}.footer-content{grid-template-columns:1fr;gap:32px;text-align:center}.footer-section a:before{display:none}.footer-section a:hover{transform:none}.footer-section.brand-section h4{font-size:20px}.footer-stats{justify-content:center}}@media (max-width: 480px){.app-header .container{padding:10px 12px;height:56px}.logo-img{height:32px}.login-btn,.signup-btn{padding:6px 12px;font-size:13px}.header-actions>div[style*="display: flex"]>div[style*="backgroundColor: #f0f4f8"]{display:none!important}.page-header h1{font-size:28px;padding:0 16px}.page-header p{font-size:15px}.search-bar input{padding:14px 16px 14px 48px;font-size:15px}.category-btn{padding:6px 14px;font-size:12px}}.lesson-view{display:flex;flex:1;min-height:calc(100vh - 140px)}.no-tutor-selected{display:flex;align-items:center;justify-content:center;width:100%;text-align:center;padding:2rem}.no-tutor-selected h2{font-size:2rem;color:var(--text-primary);margin-bottom:1rem}.no-tutor-selected p{font-size:1.125rem;color:var(--text-secondary);margin-bottom:2rem}.no-tutor-selected .btn-primary{padding:12px 24px;background:linear-gradient(135deg,#06f,#0052cc);color:#fff;border:none;border-radius:var(--radius-lg);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #00d0844d;font-size:1rem}.no-tutor-selected .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00d08466}.video-feature-banner{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-bottom:1px solid #A5D6A7;padding:12px 0;position:relative;z-index:45}.banner-content{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:center;gap:12px;position:relative}.banner-icon{color:#2e7d32;flex-shrink:0}.banner-content span{color:#1b5e20;font-size:.875rem;text-align:center}.banner-content strong{font-weight:700;color:#2e7d32}.banner-close{position:absolute;right:24px;top:50%;transform:translateY(-50%);background:none;border:none;color:#388e3c;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.banner-close:hover{background:#2e7d321a;color:#2e7d32}@media (max-width: 768px){.banner-content{padding:0 16px;font-size:.8125rem}.banner-close{right:16px}}.app-footer .logo-img{height:36px;width:auto;object-fit:contain}@media (max-width: 768px){body{overflow-x:hidden}.app-header{position:fixed;top:0;width:100%;z-index:1000}.app-header .container{padding:8px 16px;height:60px}.app-content,main{padding-top:60px}.container{padding:0 16px;max-width:100%}.header-nav{display:none}button,.btn{touch-action:manipulation;-webkit-tap-highlight-color:transparent}}@media (max-width: 768px){input,textarea,select{font-size:16px!important}}.tutor-card{background:#fff;border-radius:12px;border:1px solid #E8EAED;padding:0;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 3px #0000000d;height:420px;min-height:420px}.tutor-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #00000014;border-color:#06f}.tutor-card.last-conversation{border:2px solid #007AFF;position:relative}.last-conversation-badge{position:absolute;top:12px;right:12px;background:#007aff;color:#fff;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:600;z-index:1;white-space:nowrap;box-shadow:0 2px 4px #007aff33}.tutor-card-content{flex:1;display:flex;flex-direction:column;padding:20px;gap:8px}.tutor-header,.tutor-card-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:0}.tutor-avatar{position:relative;width:72px;height:72px;flex-shrink:0}.tutor-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#f8f9fa}.online-indicator{position:absolute;bottom:0;right:0;width:16px;height:16px;background:#06f;border:2px solid white;border-radius:50%}.tutor-info{flex:1;min-width:0}.tutor-info h3,.tutor-name{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin-bottom:2px;line-height:1.2}.tutor-role,.tutor-subtitle{font-size:.8125rem;color:#06f;line-height:1.3;font-weight:500;margin-top:4px}.tutor-meta,.tutor-rating,.students-count,.try-now-badge,.tutor-specialties,.specialty-tag{display:none!important}.tutor-description,.tutor-bio{font-size:.875rem;line-height:1.5;color:#666;margin:12px 0 8px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tutor-language{display:flex;align-items:center;gap:8px;font-size:.875rem;color:#1a1a1a;font-weight:500;padding-top:20px;margin-bottom:8px}.language-flag{font-size:1.125rem}.tutor-details,.detail-item{display:none!important}.tutor-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px}.tutor-tag{display:inline-block;padding:5px 12px;background:#f0f7ff;color:#06f;border-radius:16px;font-size:.8125rem;font-weight:600}.video-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f0f7ff;color:#06f;border-radius:20px;font-size:.75rem;font-weight:600;margin-top:8px;width:fit-content}.video-badge svg{width:16px;height:16px}.start-lesson-btn{padding:10px 24px;background:linear-gradient(135deg,#4d94ff,#06f);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin:auto 20px 20px;align-self:center;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 2px 8px #0066ff26}.start-lesson-btn:hover{background:linear-gradient(135deg,#66a3ff,#0052cc);transform:translateY(-1px);box-shadow:0 4px 12px #06f3}.btn-subtitle{display:none}@media (max-width: 768px){.tutor-card{height:380px;min-height:380px}.tutor-card-content{padding:16px;gap:6px}.tutor-avatar{width:48px;height:48px}.tutor-info h3,.tutor-name{font-size:1rem}.tutor-description,.tutor-bio{font-size:.8125rem}}.conversation-screen{display:flex;flex-direction:column;height:100vh;height:100dvh;background:#fafbfc;color:#1a1a1a;position:fixed;overflow:hidden;top:0;left:0;right:0;bottom:0;z-index:100;width:100%;touch-action:none;-webkit-overflow-scrolling:touch;overscroll-behavior:none}.mobile-notice{background:#3b82f61a;border-bottom:1px solid rgba(59,130,246,.2);padding:8px 16px;animation:slideDown .3s ease-out}.mobile-notice-content{display:flex;align-items:center;justify-content:center;gap:8px;color:#3b82f6;font-size:13px;font-weight:500}.mobile-notice-content svg{flex-shrink:0}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.conversation-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:#fff;border-bottom:1px solid #E8EAED;z-index:10;position:relative}.header-left,.header-right{display:flex;align-items:center;gap:1rem}.back-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f8f9fa;border:1px solid #E8EAED;border-radius:8px;color:#666;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-right:1rem}.back-button:hover{background:#e8eaed;color:#1a1a1a;transform:translate(-2px)}.tutor-info-compact{display:flex;align-items:center;gap:1rem}.tutor-avatar-small{width:40px;height:40px;border-radius:50%;border:2px solid #0066FF}.tutor-info-compact h3{margin:0;font-size:1.1rem;font-weight:600}.tutor-info-compact p{margin:0;font-size:.875rem;color:#666}.call-status{display:flex;align-items:center;gap:.5rem;padding:.375rem .875rem;background:#f0f7ff;border-radius:20px;border:1px solid #0066FF;transition:all .2s ease;font-size:.8125rem;margin-right:1rem}.call-status.warning{background:#fff4e5;border-color:#ffb020;animation:warningPulse 1.5s ease-in-out infinite}.call-status.warning .recording-indicator{background:#ffb020}.call-status.critical{background:#ffebee;border-color:#ff4757;animation:criticalPulse .8s ease-in-out infinite}.call-status.critical .recording-indicator{background:#ff4757;animation:criticalBlink .5s ease-in-out infinite}.call-status .session-timer{font-weight:500;font-size:.875rem}.call-status.warning .session-timer{color:#ffb020}.call-status.critical .session-timer{color:#ff4757;font-weight:600}@keyframes warningPulse{0%,to{transform:scale(1);box-shadow:0 0 #ff980066}50%{transform:scale(1.02);box-shadow:0 0 0 8px #ff980000}}@keyframes criticalPulse{0%,to{transform:scale(1);box-shadow:0 0 #f4433666}50%{transform:scale(1.03);box-shadow:0 0 0 12px #f4433600}}@keyframes criticalBlink{0%,to{opacity:1}50%{opacity:.3}}.recording-indicator{width:8px;height:8px;background:#06f;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.conversation-main{flex:1;display:flex;overflow:hidden;position:relative}.video-area{flex:1;position:relative;display:flex;align-items:center;justify-content:center;background:#000;background-image:radial-gradient(circle at 25% 25%,#111111 0%,transparent 50%),radial-gradient(circle at 75% 75%,#111111 0%,transparent 50%);overflow:hidden}.avatar-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;width:100%;height:100%;position:relative}.ai-avatar{position:relative;width:200px;height:200px;border-radius:50%;overflow:hidden;box-shadow:0 8px 32px #00000080;transition:all .2s ease;border:3px solid #333333;background:#1a1a1a}.ai-avatar.speaking{box-shadow:0 12px 48px #00d08466;transform:scale(1.02);animation:avatarSpeaking 2s ease-in-out infinite;border-color:#06f}@keyframes avatarSpeaking{0%,to{box-shadow:0 8px 32px #00000080}50%{box-shadow:0 12px 48px #00d08466}}.ai-avatar img{width:100%;height:100%;object-fit:cover}.speaking-indicator{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:4px}.speaking-indicator span{width:4px;height:20px;background:#06f;border-radius:2px;animation:wave 1.2s ease-in-out infinite}.speaking-indicator span:nth-child(2){animation-delay:.1s}.speaking-indicator span:nth-child(3){animation-delay:.2s}@keyframes wave{0%,to{transform:scaleY(.5)}50%{transform:scaleY(1)}}.audio-visualizer{display:flex;align-items:center;gap:3px;height:60px;padding:0 2rem;position:absolute;bottom:100px;left:50%;transform:translate(-50%);z-index:5}.audio-bar{width:4px;background:linear-gradient(to top,#06f,#0052cc);border-radius:2px;transition:height .15s ease;animation:audioWave .8s ease-in-out infinite;min-height:4px}@keyframes audioWave{0%,to{opacity:.7;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.1)}}.live-caption{position:absolute;bottom:6rem;left:50%;transform:translate(-50%);max-width:90%;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #000c;animation:fadeInUp .3s ease;transition:opacity .3s ease-out;z-index:100;font-size:1.1rem}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.caption{display:flex;gap:.5rem;align-items:flex-start}.caption-role{font-weight:700;color:#4d94ff;flex-shrink:0;font-size:1.1rem}.caption.user .caption-role{color:#00e676}.caption-text{color:#fff;line-height:1.5;font-size:1.1rem;font-weight:500}.connection-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5}.connection-message{text-align:center;animation:fadeIn .5s ease;color:#fff;max-width:400px}.connection-icon{margin-bottom:1.5rem}.connection-message svg{color:#06f}.connection-message h3{margin:0 0 1.5rem;font-size:1.5rem;color:#fff}.connection-steps{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0;text-align:left}.connection-steps .step{display:flex;align-items:center;gap:.75rem;opacity:.5;animation:fadeInStep .5s ease forwards}.connection-steps .step:nth-child(1){animation-delay:.5s}.connection-steps .step:nth-child(2){animation-delay:1.5s}.connection-steps .step:nth-child(3){animation-delay:2.5s}@keyframes fadeInStep{to{opacity:1}}.step-indicator{width:8px;height:8px;background:#06f;border-radius:50%;animation:pulse 1s ease-in-out infinite}.connection-hint{color:#999;font-size:.875rem;margin-top:1.5rem}.reconnecting-message{font-size:1rem;color:#fffc;margin:1rem 0;animation:pulse 2s ease-in-out infinite;opacity:.9}@keyframes pulse{0%,to{opacity:.8}50%{opacity:1}}.transcript-sidebar{width:400px;background:#fff;border-left:1px solid #E8EAED;display:flex;flex-direction:column;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.transcript-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid #E8EAED}.transcript-header h4{margin:0;font-size:1.1rem}.transcript-content{flex:1;overflow-y:auto;padding:1.5rem;scroll-behavior:smooth;display:flex;flex-direction:column}.transcript-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#999;text-align:center}.transcript-empty svg{margin-bottom:1rem;opacity:.5}.transcript-message{margin-bottom:1.5rem;animation:fadeIn .3s ease}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.message-role{font-weight:600;font-size:.875rem;color:#06f}.transcript-message.user .message-role{color:#06f}.message-time{font-size:.75rem;color:#999}.message-content{color:#666;line-height:1.6;font-size:.875rem}.transcript-stats{display:flex;gap:1rem;padding:1rem 1.25rem;border-top:1px solid #E8EAED;background:#f8f9fa}.stat{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:#666}.stat svg{color:#06f}.conversation-controls{display:flex;justify-content:center;align-items:center;padding:1.25rem 1.5rem;background:#fff;border-top:1px solid #E8EAED;box-shadow:0 -2px 4px #0000000a;position:relative}.controls-left,.controls-center,.controls-right{display:flex;align-items:center;gap:1rem}.controls-center{gap:.5rem}.controls-left{position:absolute;left:1.5rem}.controls-right{position:absolute;right:1.5rem}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.audio-level-indicator{display:flex;align-items:center;gap:.5rem;color:#999}.level-bars{display:flex;gap:2px}.level-bar{width:3px;height:12px;background:#e8eaed;border-radius:1px;transition:all .1s ease}.level-bar.active{background:#06f;box-shadow:0 0 4px #00d08466}.speaking-status{display:flex;align-items:center;gap:.375rem;padding:.3rem .6rem;background:#f8f9fa;border-radius:16px;font-size:.8125rem;animation:fadeIn .3s ease}.speaking-status.user{color:#06f;border:1px solid #E6F0FF}.speaking-status.assistant{color:#06f;border:1px solid #E6F7F1}.speaking-status svg{animation:pulse 1.5s ease-in-out infinite}.mic-indicator{position:absolute;bottom:-8px;left:50%;transform:translate(-50%);display:flex;gap:2px}.mic-indicator span{width:3px;height:3px;background:#06f;border-radius:50%;animation:micWave 1.2s ease-in-out infinite}.mic-indicator span:nth-child(1){animation-delay:0s}.mic-indicator span:nth-child(2){animation-delay:.1s}.mic-indicator span:nth-child(3){animation-delay:.2s}@keyframes micWave{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.5);opacity:1}}.control-button{width:48px;height:48px;border-radius:50%;border:1px solid #E8EAED;background:#fff;color:#666;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;position:relative;overflow:visible}.control-button:hover{background:#f8f9fa;transform:scale(1.05);border-color:#06f}.control-button:active{transform:scale(.95)}.control-button.disabled{background:#ffebee;color:#ff4757;border-color:#ff4757}.control-button.speaking{background:#e6f7f1;border-color:#06f;color:#06f;animation:speakingPulse 1.5s ease-in-out infinite}@keyframes speakingPulse{0%,to{transform:scale(1);box-shadow:0 0 #00d08466}50%{transform:scale(1.05);box-shadow:0 0 0 8px #00d08400}}.control-button.end-call{background:#ff4757;border:none;color:#fff;width:56px;height:56px}.control-button.end-call:hover{background:#e84142;transform:scale(1.05)}.control-button.pause-call{border:none;color:#fff;width:56px;height:56px;transition:all .2s ease}.control-button.pause-call:hover{transform:scale(1.05);filter:brightness(1.1)}.control-button.secondary{width:40px;height:40px;background:transparent;border:1px solid #E8EAED}.control-button:disabled{opacity:.5;cursor:not-allowed}.icon-button{background:transparent;border:none;color:#666;padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s ease}.icon-button:hover{background:#f8f9fa;color:#1a1a1a}.settings-dropdown-container{position:relative}.settings-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:#fff;border:1px solid #E8EAED;border-radius:12px;box-shadow:0 4px 12px #0000001a;min-width:200px;z-index:100}.dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #E8EAED}.dropdown-header h4{margin:0;font-size:.875rem;font-weight:600;color:#1a1a1a}.close-btn{background:none;border:none;font-size:20px;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.close-btn:hover{background:#f8f9fa;color:#1a1a1a}.dropdown-content{padding:8px}.settings-info{padding:8px 12px}.settings-info p{margin:4px 0;font-size:14px;color:#333}.settings-tip{margin-top:8px;padding:8px 12px;background:#f0f7ff;border-radius:6px;font-size:13px;color:#06f;text-align:center}.settings-option{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;cursor:pointer;transition:all .2s ease}.settings-option:hover{background:#f8f9fa}.settings-option input[type=checkbox]{width:16px;height:16px;cursor:pointer}.settings-option span{font-size:.875rem;color:#1a1a1a;-webkit-user-select:none;user-select:none}.icon-button:active{background:#ffffff26;transform:scale(.95)}.icon-button.small{padding:.25rem}.settings-modal{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:100}.settings-content{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:90%;box-shadow:0 16px 32px #0000001f}.audio-meters{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:1rem;min-width:280px;z-index:10}.meter-container{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;background:#1e1e1ee6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:24px;border:1px solid #333333;box-shadow:0 4px 16px #0009;animation:fadeInUp .3s ease}.meter-container.user{border-color:#06f3}.meter-container.user svg{color:#4d94ff}.meter-container.assistant{border-color:#06f3}.meter-container.assistant svg{color:#0052cc}.audio-level-meter{box-shadow:0 2px 10px #0000004d}@media (max-width: 768px){.conversation-screen{position:fixed;width:100%;height:100vh;height:100dvh;height:-webkit-fill-available}.transcript-sidebar{position:absolute;right:0;top:0;bottom:0;width:100%;max-width:400px;z-index:50}.conversation-header{padding:.75rem 1rem}.back-button{padding:.5rem .75rem;font-size:.8125rem;margin-right:.5rem}.tutor-info-compact h3{font-size:1rem}.tutor-info-compact p{font-size:.75rem}.tutor-avatar-small{width:36px;height:36px}.call-status{padding:.25rem .625rem;font-size:.75rem;margin-right:.5rem}.ai-avatar{width:160px;height:160px}.live-caption{font-size:.95rem;padding:.75rem 1rem;bottom:5rem;max-width:95%}.caption-text{font-size:.95rem}.controls-center{flex-wrap:nowrap;gap:.75rem}.control-button{width:44px;height:44px}.control-button.end-call,.control-button.pause-call{width:52px;height:52px}.control-button svg{width:20px;height:20px}.control-button.end-call svg,.control-button.pause-call svg{width:24px;height:24px}.conversation-controls{padding:1rem}.audio-meters{bottom:80px;min-width:250px;gap:.5rem}.meter-container{padding:.5rem .75rem;font-size:.8125rem}}@media (max-width: 480px){.conversation-header{padding:.5rem .75rem}.back-button span{display:none}.ai-avatar{width:140px;height:140px}.control-button{width:40px;height:40px}.control-button.end-call,.control-button.pause-call{width:48px;height:48px}.conversation-controls{padding:.75rem}.controls-center{gap:.5rem}}.first-time-tips{position:absolute;top:20px;right:20px;background:#fff;border:1px solid #e8eaed;border-radius:12px;padding:16px;max-width:300px;box-shadow:0 4px 12px #0000001a;animation:slideInTips .3s ease;z-index:5}@keyframes slideInTips{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.tips-close{position:absolute;top:8px;right:8px;background:none;border:none;font-size:20px;color:#999;cursor:pointer;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px}.tips-close:hover{background:#f8f9fa;color:#333}.first-time-tips h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#333}.first-time-tips ul{margin:0;padding:0;list-style:none}.first-time-tips li{margin:8px 0;font-size:14px;color:#666;line-height:1.4}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 4px 20px #00000026}.modal-content h3{margin:0 0 12px;font-size:20px;font-weight:600}.modal-content p{margin:0 0 24px;color:#666;font-size:16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-actions button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary{background:#f3f4f6;border:1px solid #e5e7eb;color:#374151}.btn-secondary:hover{background:#e5e7eb}.btn-primary{background:#2563eb;border:none;color:#fff}.btn-primary:hover{background:#1d4ed8}.end-call-btn{background:#ef4444}.end-call-btn:hover{background:#dc2626}.tutor-browser{width:100%;padding:20px 0 40px;position:relative}.refresh-indicator{position:absolute;top:0;right:20px;background:#e8f0fe;color:#06f;padding:6px 16px;border-radius:20px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px;animation:fadeIn .3s ease-out;z-index:10}.refresh-indicator:before{content:"";width:8px;height:8px;background:#06f;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.browser-controls{display:flex;justify-content:center;margin-bottom:48px;align-items:center;gap:24px;padding:0 20px}.search-bar{flex:1;max-width:500px;position:relative}.search-bar svg{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:#9ca3af;z-index:1;width:20px;height:20px}.search-bar input{width:100%;padding:16px 20px 16px 52px;border:1px solid #E8EAED;border-radius:16px;font-size:1rem;transition:all .3s ease;background:#fff;box-shadow:0 2px 8px #0000000a}.search-bar input:focus{outline:none;border-color:#06f;box-shadow:0 0 0 4px #0066ff1a}.search-bar input::placeholder{color:#9ca3af}.category-filters{display:flex;gap:12px;flex-wrap:wrap;position:relative;justify-content:center}.category-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;border:1px solid #E8EAED;border-radius:10px;color:#666;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.category-btn:hover{border-color:#06f;color:#06f;background:#f8f9fa}.category-btn.active{background:#06f;border-color:#06f;color:#fff}.category-btn svg{width:16px;height:16px}.language-filter-wrapper{position:relative}.language-btn{position:relative;padding-right:40px}.language-btn .chevron{position:absolute;right:16px;top:50%;transform:translateY(-50%);transition:transform .3s ease;width:16px;height:16px}.language-btn .chevron.rotate{transform:translateY(-50%) rotate(180deg)}.language-dropdown{position:absolute;top:100%;left:0;margin-top:8px;background:#fff;border:1px solid #E8EAED;border-radius:10px;box-shadow:0 4px 16px #00000014;z-index:100;min-width:200px;overflow:hidden;animation:dropdownSlide .2s ease}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.language-option{display:block;width:100%;padding:12px 16px;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;color:#666;transition:all .2s ease;font-weight:500}.language-option:hover{background:#f8f9fa;color:#06f}.language-option.selected{background:#f0f7ff;color:#06f;font-weight:600}.language-option:not(:last-child){border-bottom:1px solid #F3F4F6}.tutor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:60px;max-width:1200px;margin-left:auto;margin-right:auto;padding:0 20px}.no-results{text-align:center;padding:100px 20px}.no-results p{font-size:1.25rem;color:#666;margin-bottom:32px}.tutors-loading{display:flex;justify-content:center;align-items:center;min-height:500px}.loading-spinner{width:56px;height:56px;border:4px solid #F3F4F6;border-top:4px solid #0066FF;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1024px){.tutor-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px}}@media (max-width: 768px){.tutor-browser{margin-top:0;padding-top:16px}.browser-controls{flex-direction:column;gap:16px;margin-bottom:24px}.search-bar{width:100%;max-width:unset}.category-filters{width:100%;justify-content:flex-start;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px}.category-btn{flex-shrink:0;font-size:14px;padding:8px 16px}.language-filter-dropdown{right:16px;left:auto;width:200px}.tutor-grid{grid-template-columns:1fr;gap:16px;padding:0 16px}.refresh-indicator{right:16px;top:70px}}.category-btn{padding:10px 20px;font-size:.875rem}} .loading-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;padding:0 20px}.tutor-card-skeleton{background:#fff;border:1px solid #E8EAED;border-radius:16px;padding:24px;height:280px;position:relative;overflow:hidden}.skeleton-avatar{width:80px;height:80px;background:#f0f2f5;border-radius:50%;margin-bottom:16px;position:relative;overflow:hidden}.skeleton-text{height:20px;background:#f0f2f5;border-radius:4px;margin-bottom:12px;position:relative;overflow:hidden}.skeleton-text.short{width:60%}.skeleton-avatar:after,.skeleton-text:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,#fff0 0,#fff3 20%,#ffffff80 60%,#fff0);animation:shimmer 2s infinite}@keyframes shimmer{to{transform:translate(100%)}}.about-page{padding:2rem 0 4rem;background:#fff;min-height:calc(100vh - 140px)}.about-page .page-header{text-align:center;margin-bottom:4rem}.about-page h1{font-size:3rem;font-weight:700;color:#1a1a1a;margin-bottom:1rem}.about-page .highlight{color:#06f}.about-page .lead{font-size:1.25rem;color:#666;max-width:600px;margin:0 auto}.hero-section{background:#f8f9fa;border-radius:16px;padding:3rem;margin-bottom:4rem;border:1px solid #E8EAED}.hero-content h2{font-size:2rem;color:#1a1a1a;margin-bottom:1.5rem}.hero-content p{font-size:1.125rem;color:#666;line-height:1.8}.features-grid{margin-bottom:4rem}.features-grid h2{text-align:center;font-size:2.5rem;color:#1a1a1a;margin-bottom:3rem}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.feature-card{background:#fff;border-radius:12px;padding:2rem;text-align:center;box-shadow:0 2px 8px #0000000d;transition:all .3s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.feature-icon{width:64px;height:64px;margin:0 auto 1.5rem;background:#f0f7ff;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#06f}.feature-icon svg{width:32px;height:32px}.feature-card h3{font-size:1.25rem;color:#1a1a1a;margin-bottom:1rem}.feature-card p{color:#666;line-height:1.6}.mission-section{background:#fff;border-radius:16px;padding:3rem;margin-bottom:4rem;text-align:center;box-shadow:0 4px 12px #0000000d}.mission-section h2{font-size:2.5rem;color:#1a1a1a;margin-bottom:2rem}.mission-section p{font-size:1.125rem;color:#666;line-height:1.8;max-width:800px;margin:0 auto 1.5rem}.stats-section{background:linear-gradient(135deg,#00d084,#00f5a0);border-radius:16px;padding:3rem;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2rem;text-align:center}.stat h3{font-size:3rem;font-weight:700;margin-bottom:.5rem}.stat p{font-size:1.125rem;opacity:.9}@media (max-width: 768px){.about-page h1{font-size:2rem}.hero-section{padding:2rem}.features{grid-template-columns:1fr}.stat h3{font-size:2rem}}.contact-page{padding:2rem 0 4rem;background:#fafbfc;min-height:calc(100vh - 140px);display:flex;flex-direction:column;justify-content:center}.contact-page .page-header{text-align:center;margin-bottom:4rem}.contact-page h1{font-size:2.5rem;font-weight:700;color:#1a1a1a;margin-bottom:.75rem}.contact-page .highlight{color:#06f}.contact-page .lead{font-size:1.25rem;color:#666}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1000px;margin:0 auto}.contact-info h2{font-size:2rem;color:#1a1a1a;margin-bottom:1.5rem}.contact-info>p{font-size:1.125rem;color:#666;line-height:1.8;margin-bottom:3rem}.contact-methods{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem}.contact-method{display:flex;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d}.method-icon{width:48px;height:48px;background:#e6f7f1;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#06f;flex-shrink:0}.method-icon svg{width:24px;height:24px}.method-details h3{font-size:1.125rem;color:#1a1a1a;margin-bottom:.5rem}.method-details p{color:#666;margin:0}.method-note{font-size:.875rem;color:#999;margin-top:.25rem!important}.faq-prompt{background:#f8f9fa;border-radius:12px;padding:2rem}.faq-prompt h3{font-size:1.25rem;color:#1a1a1a;margin-bottom:1rem}.faq-prompt ul{list-style:none;padding:0;margin:0 0 1.5rem}.faq-prompt li{color:#666;position:relative;padding:.5rem 0 .5rem 1.5rem}.faq-prompt li:before{content:"→";position:absolute;left:0;color:#06f}.faq-prompt a{color:#06f;text-decoration:none;font-weight:500}.faq-prompt a:hover{text-decoration:underline}.contact-form-section{background:#fff;border-radius:16px;padding:3rem;box-shadow:0 4px 12px #0000000d}.contact-form h2{font-size:1.75rem;color:#1a1a1a;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#1a1a1a;margin-bottom:.5rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid #E8EAED;border-radius:8px;background:#fafbfc;transition:all .2s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#06f;background:#fff;box-shadow:0 0 0 3px #00d0841a}.form-group textarea{resize:vertical;min-height:120px}.form-message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.875rem}.form-message.success{background:#e6f7f1;color:#06f;border:1px solid #0066FF}.form-message.error{background:#ffebee;color:#ff4757;border:1px solid #FF4757}.submit-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 2rem;font-size:1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#06f,#00f5a0);border:none;border-radius:8px;cursor:pointer;transition:all .3s ease}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #00d0844d}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{opacity:.7;cursor:not-allowed}.submit-button svg{width:20px;height:20px}@media (max-width: 968px){.contact-content{grid-template-columns:1fr;gap:3rem}}@media (max-width: 768px){.contact-page h1{font-size:2rem}.contact-form-section{padding:2rem}.contact-method{flex-direction:column;text-align:center}.method-icon{margin:0 auto}}html{overflow-x:hidden;width:100%}body{overflow-x:hidden;width:100%;position:relative}*,*[style*="position: absolute"]{max-width:100vw}@media (max-width: 768px){.app,.app>*,main,section,.container,.hero-section,.features-section,.pricing-section,.landing-page,.landing-page>*{overflow-x:hidden;max-width:100%}.modal,.modal-overlay,[class*=modal]{max-width:100vw;overflow-x:hidden}.upgrade-modal-overlay{width:100%;left:0;right:0}.upgrade-modal{max-width:100%;margin:0}.conversation-screen{width:100vw;max-width:100vw;left:0;right:0}.audio-meters{width:calc(100% - 40px);max-width:320px;left:50%;transform:translate(-50%)}[class*=grid]{width:100%;max-width:100%}button,.btn,[class*=button]{max-width:100%}img{max-width:100%;height:auto}[style*="width:"][style*=px]{max-width:100%!important}}@media (max-width: 380px){*{word-wrap:break-word;overflow-wrap:break-word}.container,section{padding-left:12px;padding-right:12px}.upgrade-modal,.pricing-modal,[class*=modal-content]{padding:16px}}@media (max-width: 768px){.user-dropdown{z-index:99999!important;position:fixed!important;top:70px!important;right:10px!important;max-width:calc(100vw - 20px);box-shadow:0 10px 25px #0003}.user-menu-container{position:static!important}}.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .2s ease;padding:20px;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{background:#fff;border-radius:20px;padding:48px;width:90%;max-width:420px;position:relative;box-shadow:0 20px 50px #00000026;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{position:absolute;top:20px;right:20px;background:#f3f4f6;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;color:#666;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.auth-modal-close:hover{background:#e8eaed;color:#1a1a1a;transform:rotate(90deg)}.auth-modal-title{font-size:28px;font-weight:700;text-align:center;margin-bottom:36px;color:#1a1a1a;letter-spacing:-.025em}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-input{padding:16px 20px;border:1px solid #E8EAED;border-radius:12px;font-size:16px;transition:all .3s ease;background:#fafbfc}.auth-input:focus{outline:none;border-color:#06f;box-shadow:0 0 0 4px #0066ff1a;background:#fff}.auth-error{color:#ff4757;font-size:14px;margin:-8px 0 0}.auth-submit{background:linear-gradient(135deg,#06f,#0052cc);color:#fff;border:none;padding:16px 32px;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:8px;box-shadow:0 4px 12px #06f3}.auth-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0066ff4d}.auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-forgot{background:none;border:none;color:#3b82f6;font-size:14px;cursor:pointer;text-align:center;transition:color .2s}.auth-forgot:hover{color:#2563eb;text-decoration:underline}.auth-divider{position:relative;text-align:center;margin:24px 0}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb}.auth-divider span{background:#fff;padding:0 16px;position:relative;color:#9ca3af;font-size:14px}.auth-google{width:100%;background:#fff;border:1px solid #E5E7EB;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;transition:all .2s}.auth-google:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.auth-google img{width:20px;height:20px}.auth-switch{text-align:center;margin-top:24px;color:#6b7280;font-size:14px}.auth-switch button{background:none;border:none;color:#3b82f6;cursor:pointer;font-weight:600;transition:color .2s}.auth-switch button:hover{color:#2563eb;text-decoration:underline}@media (max-width: 768px){.auth-modal{padding:32px 24px;width:95%;max-width:100%;margin:0 16px}.auth-modal-title{font-size:24px;margin-bottom:24px}.auth-form{gap:16px}.auth-input{padding:14px 16px;font-size:16px;-webkit-text-size-adjust:100%}.auth-submit{padding:14px 24px;font-size:16px}.auth-google{padding:12px 20px;font-size:15px}}@media (max-width: 480px){.auth-modal{padding:24px 20px;border-radius:16px}.auth-modal-close{top:16px;right:16px;width:32px;height:32px}.auth-modal-title{font-size:22px;margin-bottom:20px}.auth-input{padding:12px 14px;border-radius:10px}.auth-submit{padding:12px 20px;border-radius:10px}.auth-divider{margin:20px 0}.auth-switch{margin-top:20px}}.pricing-section{padding:40px 20px;position:relative;overflow:visible;background:#fff;min-height:calc(100vh - 80px);display:flex;flex-direction:column;justify-content:center}.pricing-header{text-align:center;margin-bottom:32px}.pricing-title{font-size:2rem;font-weight:600;color:#1a1a1a;margin-bottom:8px;letter-spacing:-.025em}.pricing-subtitle{font-size:1rem;color:#666;max-width:480px;margin:0 auto;line-height:1.4}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;max-width:1100px;margin:0 auto;align-items:stretch;width:100%}.pricing-card{background:#fff;border-radius:12px;padding:40px 32px;position:relative;border:1px solid #E8EAED;transition:all .2s ease;display:flex;flex-direction:column;box-shadow:0 1px 3px #0000000d;min-height:450px}.pricing-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a;border-color:#06f}.pricing-card-highlighted{background:#fff;border:2px solid #0066FF;transform:scale(1.02);box-shadow:0 4px 12px #0066ff26}.pricing-card-highlighted:hover{transform:scale(1.02) translateY(-4px);box-shadow:0 8px 20px #06f3}.pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#06f;color:#fff;padding:4px 16px;border-radius:16px;font-size:.75rem;font-weight:600;letter-spacing:.02em}.pricing-card-header{text-align:center;margin-bottom:32px}.pricing-card-title{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin-bottom:16px}.pricing-card-price{display:flex;align-items:baseline;justify-content:center;gap:4px}.price-amount{font-size:3rem;font-weight:700;color:#1a1a1a;line-height:1;letter-spacing:-.025em}.price-detail{font-size:1rem;color:#666;font-weight:400}.pricing-features{list-style:none;padding:0;margin:0 0 32px;flex:1;display:flex;flex-direction:column;gap:14px}.pricing-feature{display:flex;align-items:center;gap:10px;min-height:24px}.feature-icon-wrapper{width:14px;height:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-icon{width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;max-width:14px!important;max-height:14px!important;border-radius:50%!important;border:1.5px solid #0066FF!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;background:transparent!important;padding:0!important;margin:0!important}.feature-icon svg{width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;max-width:8px!important;max-height:8px!important;color:#06f!important}.feature-icon-empty{width:14px;height:14px;display:block}.feature-text{font-size:.875rem;line-height:1.5;color:#666;flex:1}.feature-disabled{color:#c4c4c4;opacity:.6}.pricing-button{width:100%;padding:12px 20px;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:1px solid #E8EAED;background:#fff;color:#06f;margin-top:auto}.pricing-button:hover{background:#f8f9fa;border-color:#06f}.pricing-button-primary{background:#06f;color:#fff;border:none}.pricing-button-primary:hover{background:#0052cc}.pricing-button-disabled{background:#f8f9fa;color:#999;cursor:not-allowed;border-color:#e8eaed}.pricing-button-disabled:hover{background:#f8f9fa;border-color:#e8eaed}.pricing-button-downgrade{background:#fee2e2;color:#dc2626;border-color:#fecaca}.pricing-button-downgrade:hover{background:#fca5a5;border-color:#f87171}.pricing-card-current{border-color:#4a90e2;border-width:2px}.current-plan-badge{background:#4a90e2;position:absolute;top:20px;right:20px}.pricing-footer{text-align:center;margin-top:48px}.pricing-guarantee{color:#666;font-size:.875rem}.pricing-guarantee strong{color:#1a1a1a;font-weight:500}@media (max-width: 768px){.pricing-section{padding:40px 16px;min-height:auto}.pricing-title{font-size:36px}.pricing-subtitle{font-size:18px}.pricing-grid{grid-template-columns:1fr;gap:24px}.pricing-card{padding:32px 24px}.pricing-card-highlighted{transform:none}.pricing-card-highlighted:hover{transform:translateY(-8px)}.price-amount{font-size:48px}}.user-profile{background:#fff;border-radius:12px;padding:24px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;width:320px}.profile-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.profile-avatar{width:64px;height:64px;border-radius:50%;background:#f3f4f6;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#6b7280}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-info{flex:1}.profile-name{font-size:18px;font-weight:600;color:#111827;margin:0 0 4px;display:flex;align-items:center}.pro-badge{margin-left:8px;background-color:#3b82f6;color:#fff;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:4px}.profile-subscription{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:500}.profile-usage{background:#f9fafb;border-radius:8px;padding:16px;margin-bottom:16px}.usage-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:14px;color:#6b7280}.usage-remaining{margin-left:auto;font-weight:600;color:#111827}.usage-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.usage-progress{height:100%;background:#3b82f6;border-radius:4px;transition:width .3s ease}.profile-upgrade{width:100%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;margin-bottom:16px}.profile-upgrade:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.profile-divider{height:1px;background:#e5e7eb;margin:16px 0}.profile-actions{display:flex;flex-direction:column;gap:8px}.profile-action{display:flex;align-items:center;gap:12px;padding:12px;background:none;border:none;cursor:pointer;border-radius:8px;transition:background .2s;color:#4b5563;font-size:14px;text-align:left}.profile-action:hover{background:#f3f4f6;color:#111827}.profile-manage-subscription{width:100%;padding:10px 16px;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;margin-bottom:12px}.profile-manage-subscription:hover{background:#4338ca;transform:translateY(-1px)}.profile-manage-subscription:disabled{opacity:.7;cursor:not-allowed}.landing-page{min-height:100vh;background:#fff;overflow-x:hidden;width:100%}.landing-page section{overflow-x:hidden;width:100%}.hero-section{padding:80px 20px 100px;background:linear-gradient(135deg,#fafbfc,#f3f4f6);position:relative;overflow:hidden;width:100%}.hero-section:before{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:150%;background:radial-gradient(circle,rgba(0,102,255,.05) 0%,transparent 70%);pointer-events:none}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative;z-index:1;max-width:1200px;margin:0 auto;width:100%}.hero-text{max-width:600px}.hero-title{font-size:3.5rem;font-weight:700;line-height:1.1;margin-bottom:24px;color:#1a1a1a;letter-spacing:-.035em}.text-gradient{background:linear-gradient(135deg,#06f,#0052cc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block}.hero-description{font-size:1.25rem;color:#666;margin-bottom:40px;line-height:1.6;max-width:540px}.hero-actions{display:flex;gap:20px;margin-bottom:60px}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:linear-gradient(135deg,#06f,#0052cc);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #06f3}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0066ff4d}.btn-large{padding:18px 36px;font-size:1.125rem}.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#06f;border:1px solid rgba(0,102,255,.2);border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#fff;border-color:#06f;transform:translateY(-2px);box-shadow:0 4px 12px #0066ff1a}.hero-stats{display:flex;gap:60px}.hero-stats .stat{display:flex;flex-direction:column;gap:8px;position:relative;padding-left:20px}.hero-stats .stat:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:40px;background:linear-gradient(135deg,#06f,#0052cc);border-radius:2px}.hero-stats strong{font-size:2rem;background:linear-gradient(135deg,#06f,#0052cc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.hero-stats span{font-size:.875rem;color:#666;font-weight:500}.hero-visual{display:flex;justify-content:center;align-items:center;position:relative}.demo-preview{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:32px;box-shadow:0 10px 40px #0000001a;border:1px solid rgba(255,255,255,.8);max-width:420px;width:90%;position:relative;overflow:hidden;margin:0 auto}.demo-preview:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(135deg,#06f,#00d084,#06f);border-radius:20px;z-index:-1;opacity:.3;animation:gradient-rotate 5s linear infinite}@keyframes gradient-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.demo-card{display:flex;flex-direction:column;gap:28px}.demo-avatar{width:90px;height:90px;margin:0 auto;position:relative}.demo-avatar img{width:100%;height:100%;border-radius:50%;border:4px solid white;box-shadow:0 4px 20px #06f3}.demo-avatar:after{content:"";position:absolute;bottom:5px;right:5px;width:20px;height:20px;background:#00d084;border:3px solid white;border-radius:50%;animation:pulse 2s infinite}.demo-chat{display:flex;flex-direction:column;gap:20px}.chat-bubble{padding:16px 20px;border-radius:20px;font-size:.95rem;line-height:1.5;max-width:85%;position:relative;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-bubble.ai{background:linear-gradient(135deg,#f0f7ff,#e6f0ff);color:#1a1a1a;align-self:flex-start;border-bottom-left-radius:4px;box-shadow:0 2px 10px #0066ff1a}.chat-bubble.user{background:linear-gradient(135deg,#06f,#0052cc);color:#fff;align-self:flex-end;border-bottom-right-radius:4px;box-shadow:0 2px 10px #06f3}.features-section{padding:100px 20px;background:#fff;position:relative;overflow:hidden}.section-header{text-align:center;margin-bottom:80px}.section-header h2{font-size:2.5rem;font-weight:700;color:#1a1a1a;margin-bottom:16px;letter-spacing:-.025em}.section-header p{font-size:1.125rem;color:#666;max-width:600px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;width:100%}.feature-card{background:#fafbfc;padding:40px 32px;border-radius:20px;text-align:center;transition:all .3s ease;border:1px solid transparent;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#06f,#00d084);transform:translate(-100%);transition:transform .3s ease}.feature-card:hover:before{transform:translate(0)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000014;background:#fff;border-color:#0066ff1a}.feature-icon{width:64px;height:64px;background:linear-gradient(135deg,#e6f0ff,#f0f7ff);color:#06f;border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;transition:all .3s ease}.feature-card:hover .feature-icon{background:linear-gradient(135deg,#06f,#0052cc);color:#fff;transform:scale(1.1)}.feature-card h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin-bottom:12px}.feature-card p{color:#666;line-height:1.6;font-size:.95rem}.how-it-works{padding:100px 20px;background:linear-gradient(180deg,#fafbfc,#fff);position:relative;overflow:hidden}.steps-container{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;position:relative;max-width:1200px;margin:0 auto}.steps-container:before{content:"";position:absolute;top:24px;left:15%;right:15%;height:2px;background:linear-gradient(90deg,#e8eaed,#06f,#e8eaed);z-index:0}.step-card{text-align:center;position:relative;background:#fff;padding:40px 32px;border-radius:20px;border:1px solid #E8EAED;transition:all .3s ease;z-index:1}.step-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000014;border-color:#06f3}.step-number{width:56px;height:56px;background:linear-gradient(135deg,#06f,#0052cc);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 24px;box-shadow:0 4px 20px #0066ff4d;position:relative;z-index:2}.step-card:hover .step-number{transform:scale(1.1)}.step-card h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin-bottom:12px}.step-card p{color:#666;line-height:1.6;font-size:.95rem}.step-arrow{display:none}.testimonials-section{padding:100px 0;background:#fff;position:relative}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:40px}.testimonial-card{background:linear-gradient(135deg,#fafbfc,#f3f4f6);padding:36px;border-radius:20px;border:1px solid #E8EAED;transition:all .3s ease;position:relative;overflow:hidden}.testimonial-card:before{content:'"';position:absolute;top:20px;right:20px;font-size:80px;color:#0066ff1a;font-family:Georgia,serif;line-height:1}.testimonial-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #00000014;border-color:#06f3}.testimonial-rating{display:flex;gap:4px;margin-bottom:20px}.testimonial-rating .w-5{width:20px;height:20px}.testimonial-comment{font-size:1.125rem;color:#374151;line-height:1.7;margin-bottom:28px;font-style:normal;font-weight:500}.testimonial-author{display:flex;align-items:center;gap:16px;padding-top:20px;border-top:1px solid #E8EAED}.testimonial-author:before{content:"";width:48px;height:48px;background:linear-gradient(135deg,#06f,#0052cc);border-radius:50%;opacity:.1}.testimonial-author div{display:flex;flex-direction:column;gap:4px}.testimonial-author strong{color:#1a1a1a;font-weight:600;font-size:1rem}.testimonial-author span{color:#666;font-size:.875rem}.cta-section{padding:100px 0;background:linear-gradient(135deg,#06f,#0052cc);color:#fff;text-align:center;position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:float 20s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.cta-content{position:relative;z-index:1}.cta-content h2{font-size:2.75rem;font-weight:700;margin-bottom:16px;letter-spacing:-.025em}.cta-content p{font-size:1.25rem;margin-bottom:40px;opacity:.95;max-width:600px;margin-left:auto;margin-right:auto}.cta-content .btn-primary{background:#fff;color:#06f;box-shadow:0 8px 24px #00000026;font-size:1.125rem;padding:18px 40px}.cta-content .btn-primary:hover{background:#f8f9fa;transform:translateY(-3px);box-shadow:0 12px 32px #0003}@media (max-width: 1024px){.hero-content{grid-template-columns:1fr;text-align:center}.hero-text{margin:0 auto}.hero-actions,.hero-stats{justify-content:center}.steps-container{grid-template-columns:1fr;gap:48px}.step-arrow{display:none}}@media (max-width: 768px){.hero-section{padding:60px 16px 80px}.hero-content{gap:40px;padding:0}.hero-title{font-size:2rem}.hero-description{font-size:1.1rem}.hero-actions{flex-direction:column;width:100%;gap:12px;margin-bottom:40px}.btn-primary,.btn-secondary{width:100%;justify-content:center}.hero-stats{flex-direction:column;gap:24px;align-items:center}.features-grid{grid-template-columns:1fr;padding:0 16px}.testimonials-grid{grid-template-columns:1fr}}@media (max-width: 480px){.hero-section{padding:40px 16px 60px}.hero-title{font-size:1.75rem;margin-bottom:16px}.hero-description{font-size:1rem;margin-bottom:24px}.hero-stats{flex-direction:column;gap:16px}.hero-stats .stat{padding-left:16px;text-align:left}.demo-preview{padding:20px}.features-section,.how-it-works,.cta-section{padding:60px 16px}.section-header h2{font-size:1.75rem}.section-header p{font-size:.95rem}.feature-card{padding:24px 20px}}
