.app{width:100%;max-width:1200px;margin:0 auto}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#fff}.loading-spinner{font-size:4rem;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.landing-page{display:flex;align-items:center;justify-content:center;min-height:80vh}.landing-content{background:#ffffff14;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-radius:32px;padding:60px 80px;text-align:center;box-shadow:0 20px 60px #00000080,0 0 60px #667eea26,inset 0 1px #ffffff4d,inset 0 -1px 2px #0003;border:1px solid rgba(255,255,255,.2);max-width:600px}.landing-brand{font-size:3rem;font-weight:800;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:2px}.brand-text{color:#fff}.brand-dot{color:#f5a623;font-size:1.8rem;margin:0 -2px}.brand-icon{color:#fffc;font-size:2rem;margin-left:10px}.landing-tagline{font-size:1.3rem;font-weight:600;background:linear-gradient(90deg,#f5a623,gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 16px;letter-spacing:3px}.landing-motto{font-size:1.2rem;color:#ffffffe6;margin:0 0 20px;font-style:italic}.equal-highlight{color:#f5a623;font-weight:700;font-style:normal}.landing-description{font-size:1.1rem;color:#ffffffb3;margin-bottom:40px;line-height:1.6}.login-btn{display:inline-block;background:linear-gradient(135deg,#667eeae6,#764ba2e6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#fff;padding:16px 48px;border-radius:20px;font-size:1.2rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 15px 35px #667eea80,0 0 20px #667eea4d,inset 0 1px #ffffff4d,inset 0 -1px 2px #0003;border:1px solid rgba(255,255,255,.25)}.login-btn:hover{transform:translateY(-6px);box-shadow:0 25px 50px #667eea99,0 0 30px #667eea66,inset 0 1px #fff6}.authenticated-container{width:100%}.user-header{background:#ffffff14;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-radius:20px;padding:20px 30px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 10px 40px #0000004d,0 0 20px #667eea1a,inset 0 1px #ffffff26;border:1px solid rgba(255,255,255,.15)}.user-info{display:flex;align-items:center;gap:15px}.user-avatar{width:45px;height:45px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.3);box-shadow:0 2px 10px #0003}.user-name{font-size:1.1rem;font-weight:600;color:#fffffff2}.pro-badge{background:linear-gradient(135deg,#ffd93d,#ff6b6b);color:#1a1a2e;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.pro-tag,.age-tag{font-size:10px;padding:2px 6px;border-radius:8px;margin-left:6px;font-weight:700;vertical-align:middle}.pro-tag{background:linear-gradient(135deg,#ffd93d,#ff6b6b);color:#1a1a2e}.age-tag{background:#fff3;color:#fffc}.logout-btn{background:#f44336b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:10px 24px;border-radius:10px;text-decoration:none;font-weight:600;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.logout-btn:hover{background:#f44336e6;transform:translateY(-2px)}.main-nav{display:flex;flex-wrap:wrap;gap:8px;background:#ffffff0f;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-radius:20px;padding:12px;margin-bottom:20px;box-shadow:0 10px 40px #0000004d,0 0 20px #667eea14,inset 0 1px #ffffff1a;border:1px solid rgba(255,255,255,.12);justify-content:center;align-items:center}.nav-btn{padding:12px 16px;border:none;background:transparent;color:#ffffffb3;font-size:.9rem;font-weight:600;cursor:pointer;border-radius:12px;transition:all .3s ease;position:relative;white-space:nowrap;text-align:center}.nav-btn:hover{background:#ffffff1a;color:#fffffff2}.nav-btn.active{background:linear-gradient(135deg,#667eead9,#764ba2d9);color:#fff;box-shadow:0 8px 25px #667eea66,0 0 15px #667eea33,inset 0 1px #ffffff4d;border:1px solid rgba(255,255,255,.2)}.tab-content{background:#ffffff0f;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border-radius:28px;min-height:500px;box-shadow:0 20px 60px #0006,0 0 40px #667eea1f,inset 0 1px #ffffff26;border:1px solid rgba(255,255,255,.12);overflow:hidden}@media(max-width:768px){.landing-content{padding:40px 30px}.landing-brand{font-size:2rem}.landing-tagline{font-size:1rem;letter-spacing:2px}.landing-motto{font-size:1rem}.user-header{flex-direction:column;gap:15px;text-align:center}.main-nav{gap:6px;padding:10px}.nav-btn{padding:10px 12px;font-size:.85rem}}@media(max-width:480px){.main-nav{gap:4px;padding:8px}.nav-btn{padding:8px 10px;font-size:.8rem}}.app.high-contrast{background:#000!important}.app.high-contrast .glass-card,.app.high-contrast .authenticated-container,.app.high-contrast .landing-content{background:#000!important;border:3px solid #fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.app.high-contrast *{color:#fff!important}.app.high-contrast .nav-btn,.app.high-contrast button{background:#000!important;border:2px solid #fff!important}.app.high-contrast .nav-btn.active,.app.high-contrast button:hover{background:#fff!important;color:#000!important}.app.font-large{font-size:18px}.app.font-large .nav-btn{font-size:1em;padding:14px 20px}.app.font-xlarge{font-size:22px}.app.font-xlarge .nav-btn{font-size:1.1em;padding:16px 24px}.app.reduce-motion *{animation:none!important;transition:none!important}.asl-translator{padding:40px;width:100%}.header{text-align:center;margin-bottom:30px}.header h1{font-size:2.5rem;background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px}.header p{color:#ffffffb3;font-size:1.1rem}.input-section{position:relative;margin-bottom:30px}.text-input{width:100%;padding:18px 24px;font-size:1.1rem;background:#ffffff14;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.15);border-radius:20px;resize:vertical;font-family:inherit;transition:all .3s ease;color:#fff;box-shadow:inset 0 1px #ffffff26,inset 0 -1px 2px #0000001a}.text-input::placeholder{color:#ffffff80}.text-input:focus{outline:none;border-color:#a8edea80;box-shadow:0 0 20px #a8edea33,inset 0 1px #ffffff1a}.clear-btn{position:absolute;top:12px;right:12px;background:#f44336b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.1);padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .3s ease}.clear-btn:hover{background:#f44336e6;transform:translateY(-2px)}.signs-display{min-height:300px;background:#ffffff14;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:16px;padding:30px;margin-bottom:30px;border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #0003,inset 0 1px #ffffff1a}.signs-display.animating .sign-card{animation:slideIn .3s ease-out backwards}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.signs-grid{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.sign-card{background:#ffffff1f;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;padding:20px;box-shadow:0 10px 30px #0006,0 0 20px #667eea26,inset 0 1px #ffffff40;border:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;align-items:center;min-width:100px;position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.sign-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #0006,0 0 30px #667eea26,inset 0 1px #ffffff40;background:#ffffff1f}.letter-sign{border-left:4px solid rgba(168,237,234,.8)}.word-sign{border-left:4px solid rgba(76,175,80,.8);min-width:120px}.sign-visual{font-size:3rem;margin-bottom:10px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.sign-label{font-size:.9rem;color:#fffc;font-weight:600;text-transform:uppercase}.word-badge{position:absolute;top:8px;right:8px;background:#4caf50cc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff;font-size:.65rem;padding:3px 8px;border-radius:6px;font-weight:700;border:1px solid rgba(255,255,255,.2)}.empty-state{text-align:center;padding:60px 20px;color:#ffffff80}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state p{font-size:1.2rem;margin-bottom:10px;color:#ffffffb3}.empty-state small{font-size:.9rem;color:#ffffff80}.info-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.info-card{background:#ffffff0f;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);padding:24px;border-radius:20px;border-left:4px solid rgba(168,237,234,.8);border-top:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 8px 25px #0003,inset 0 1px #ffffff1a}.info-card h3{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:15px;font-size:1.2rem}.info-card ul{list-style:none;padding:0}.info-card li{color:#fffc;padding:8px 0 8px 24px;position:relative}.info-card li:before{content:"✓";position:absolute;left:0;color:#4caf50e6;font-weight:700}@media(max-width:768px){.asl-translator{padding:20px}.header h1{font-size:2rem}.signs-grid{gap:10px}.sign-card{min-width:80px;padding:15px}.sign-visual{font-size:2.5rem}}.settings-container{padding:30px;max-width:900px;margin:0 auto}.settings-container h2{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:20px;text-align:center;font-size:1.8rem}.settings-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:15px}.tab-btn{padding:12px 24px;border:none;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#ffffffb3;font-size:1rem;cursor:pointer;border-radius:12px;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.tab-btn:hover{background:#ffffff26;color:#fffffff2}.tab-btn.active{background:linear-gradient(135deg,#667eeab3,#764ba2b3);color:#fff;box-shadow:0 4px 15px #667eea4d,inset 0 1px #fff3}.resources-intro{color:#ffffffb3;margin-bottom:30px;line-height:1.6;text-align:center}.resource-category{margin-bottom:40px}.resource-category h3{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.1)}.resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.resource-card{background:#ffffff14;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;text-decoration:none;transition:all .3s ease;display:flex;flex-direction:column;box-shadow:0 4px 15px #0000001a,inset 0 1px #ffffff1a}.resource-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #667eea33,inset 0 1px #ffffff26;border-color:#a8edea66;background:#ffffff1f}.resource-card h4{color:#fffffff2;margin-bottom:8px;font-size:1rem}.resource-card p{color:#fff9;font-size:.9rem;flex-grow:1;margin-bottom:10px}.resource-link{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600;font-size:.85rem}.preferences-section{background:#ffffff14;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:16px;padding:30px;border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff1a}.preference-group{margin-bottom:25px}.preference-group label{display:block;color:#ffffffe6;font-weight:600;margin-bottom:8px}.preference-group select{width:100%;max-width:300px;padding:12px 18px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:10px;font-size:1rem;color:#fff;cursor:pointer;transition:all .3s ease}.preference-group select option{background:#1a1a2e;color:#fff}.preference-group select:focus{border-color:#a8edea80;outline:none;box-shadow:0 0 15px #a8edea33}.preference-group.checkbox label{display:flex;align-items:center;gap:12px;cursor:pointer}.preference-group.checkbox input[type=checkbox]{width:22px;height:22px;cursor:pointer;accent-color:#a8edea}@media(max-width:600px){.settings-tabs{flex-direction:column}.tab-btn{text-align:center}.resource-grid{grid-template-columns:1fr}}.feedback-container{padding:30px;max-width:900px;margin:0 auto}.feedback-container h2{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:20px;text-align:center;font-size:1.8rem}.feedback-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:15px}.feedback-tabs .tab-btn{padding:12px 24px;border:none;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#ffffffb3;font-size:1rem;cursor:pointer;border-radius:12px;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.feedback-tabs .tab-btn:hover{background:#ffffff26;color:#fffffff2}.feedback-tabs .tab-btn.active{background:linear-gradient(135deg,#667eeab3,#764ba2b3);color:#fff;box-shadow:0 4px 15px #667eea4d,inset 0 1px #fff3}.submit-intro{color:#ffffffb3;margin-bottom:25px;line-height:1.6;text-align:center}.success-message{background:#4caf504d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fffffff2;padding:15px 20px;border-radius:12px;margin-bottom:20px;text-align:center;border:1px solid rgba(76,175,80,.4)}.feedback-form{background:#ffffff14;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:16px;padding:30px;border:1px solid rgba(255,255,255,.1);margin-bottom:30px;box-shadow:inset 0 1px #ffffff1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;color:#ffffffe6;font-weight:600;margin-bottom:8px}.form-group select,.form-group input,.form-group textarea{width:100%;padding:14px 18px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;font-size:1rem;transition:all .3s ease;color:#fff}.form-group select option{background:#1a1a2e;color:#fff}.form-group input::placeholder,.form-group textarea::placeholder{color:#ffffff80}.form-group select:focus,.form-group input:focus,.form-group textarea:focus{border-color:#a8edea80;outline:none;box-shadow:0 0 15px #a8edea33}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{width:100%;padding:16px;background:linear-gradient(135deg,#667eeacc,#764ba2cc);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d,inset 0 1px #fff3}.submit-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px #667eea66,inset 0 1px #ffffff4d}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.accuracy-notes{background:#ffffff14;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:16px;padding:25px;border-left:4px solid rgba(168,237,234,.8);border-top:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.accuracy-notes h3{color:#fffffff2;margin-bottom:15px}.accuracy-notes ul{list-style:none;padding:0;margin:0}.accuracy-notes li{padding:12px 0;color:#ffffffb3;border-bottom:1px solid rgba(255,255,255,.1)}.accuracy-notes li:last-child{border-bottom:none}.accuracy-notes strong{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.community-section{min-height:300px}.loading,.empty-state{text-align:center;padding:50px;color:#fff9}.feedback-list{display:flex;flex-direction:column;gap:15px}.feedback-card{background:#ffffff14;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;transition:all .3s ease;box-shadow:inset 0 1px #ffffff1a}.feedback-card:hover{box-shadow:0 8px 25px #0003,inset 0 1px #ffffff26;background:#ffffff1a}.feedback-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.feedback-icon{font-size:1.5rem}.feedback-type{background:linear-gradient(135deg,#667eeab3,#764ba2b3);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff;padding:5px 14px;border-radius:20px;font-size:.8rem;font-weight:600;border:1px solid rgba(255,255,255,.2)}.feedback-status{margin-left:auto;color:#fff9;font-size:.85rem;text-transform:capitalize}.feedback-content{color:#ffffffd9;line-height:1.6;margin-bottom:15px}.feedback-word{background:#ffffff1a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:12px 18px;border-radius:10px;margin-bottom:15px;font-size:.95rem;color:#fffc;border:1px solid rgba(255,255,255,.1)}.feedback-footer{display:flex;align-items:center;justify-content:space-between}.upvote-btn{background:#ffffff1a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid rgba(255,255,255,.15);padding:10px 18px;border-radius:20px;cursor:pointer;transition:all .3s ease;color:#fffc}.upvote-btn:hover{background:#fff3;transform:translateY(-2px)}.feedback-date{color:#ffffff80;font-size:.85rem}@media(max-width:600px){.form-row{grid-template-columns:1fr}.feedback-tabs{flex-direction:column}.feedback-tabs .tab-btn{text-align:center}}.hand-tracker{display:flex;flex-direction:column;gap:16px}.tracker-display{position:relative;width:100%;aspect-ratio:4/3;background:#0003;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 15px 50px #0000004d,inset 0 1px #ffffff1a}.tracking-canvas{width:100%;height:100%;object-fit:cover}.camera-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.loading-state,.error-state,.start-state{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:24px}.hand-icon{font-size:48px;animation:wave 1.5s ease-in-out infinite}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(20deg)}75%{transform:rotate(-20deg)}}.error-icon{font-size:36px}.error-state p{color:#ff6b6b}.tracker-controls{display:flex;gap:12px;justify-content:center}.tracker-btn{padding:12px 32px;font-size:16px;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease}.tracker-btn.start{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.tracker-btn.start:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #667eea66}.tracker-btn.start:disabled{opacity:.6;cursor:not-allowed}.tracker-btn.stop{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.tracker-btn.stop:hover{transform:translateY(-2px);box-shadow:0 8px 24px #f5576c66}.tracker-status{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.status-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffff14;border-radius:24px;font-size:14px}.status-indicator .dot{width:10px;height:10px;border-radius:50%;background:#666;transition:background .3s ease}.status-indicator.active .dot{background:#0f8;box-shadow:0 0 12px #0f8}.handedness-badge{padding:6px 14px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;font-size:13px;font-weight:600}.landmark-info{background:#ffffff0d;border-radius:12px;padding:16px;border:1px solid rgba(255,255,255,.08)}.landmark-info h4{margin:0 0 12px;font-size:14px;color:#ffffffb3;font-weight:500}.landmark-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.landmark-item{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:#ffffff0d;border-radius:8px}.landmark-name{font-size:11px;color:#a8edea;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.landmark-coords{font-size:12px;color:#fff9;font-family:monospace}.tutoring-container{padding:30px;max-width:900px;margin:0 auto}.tutoring-container h2{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:20px;text-align:center;font-size:1.8rem}.tutoring-tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:15px}.tutoring-tabs .tab-btn{padding:12px 24px;border:none;background:#ffffff0f;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#ffffffb3;font-size:1rem;cursor:pointer;border-radius:16px;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.tutoring-tabs .tab-btn:hover{background:#ffffff26;color:#fffffff2}.tutoring-tabs .tab-btn.active{background:linear-gradient(135deg,#667eead9,#764ba2d9);color:#fff;box-shadow:0 8px 25px #667eea66,0 0 15px #667eea33,inset 0 1px #ffffff4d}.practice-intro{color:#ffffffb3;margin-bottom:25px;line-height:1.6;text-align:center}.word-selection{margin-bottom:25px}.word-selection label{display:block;color:#ffffffe6;font-weight:600;margin-bottom:12px}.word-chips{display:flex;flex-wrap:wrap;gap:10px}.word-chip{padding:10px 18px;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);border-radius:20px;color:#fffc;cursor:pointer;transition:all .3s ease;font-size:.95rem}.word-chip:hover{background:#ffffff26;color:#fff}.word-chip.active{background:linear-gradient(135deg,#a8edea66,#fed6e366);border-color:#a8edea99;color:#fff}.current-target{background:#ffffff1a;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:16px;padding:20px 30px;text-align:center;margin-bottom:25px;border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 1px #ffffff1a}.target-label{color:#ffffffb3;font-size:.95rem;margin-right:10px}.target-word{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.camera-section{margin-bottom:30px}.video-container{background:#0003;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-radius:24px;overflow:hidden;aspect-ratio:4/3;max-width:640px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.12);box-shadow:0 15px 50px #0006,0 0 40px #667eea1a,inset 0 1px #ffffff1a}.video-feed,.captured-image{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.camera-placeholder{text-align:center;color:#ffffff80;padding:40px}.camera-icon{font-size:4rem;display:block;margin-bottom:15px;opacity:.6}.camera-placeholder p{font-size:1.1rem;margin-bottom:5px;color:#ffffffb3}.camera-placeholder small{color:#ffffff80}.camera-controls{display:flex;gap:15px;justify-content:center}.control-btn{padding:14px 32px;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.control-btn.start{background:linear-gradient(135deg,#4caf50b3,#388e3cb3);color:#fff;border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 15px #4caf504d}.control-btn.start:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4caf5066}.control-btn.analyze{background:linear-gradient(135deg,#667eeacc,#764ba2cc);color:#fff;border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 15px #667eea4d}.control-btn.analyze:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.control-btn.analyze:disabled{opacity:.6;cursor:not-allowed}.control-btn.stop{background:#f44336b3;color:#fff;border:1px solid rgba(255,255,255,.15)}.control-btn.stop:hover{background:#f44336d9}.analysis-result{background:#ffffff14;-webkit-backdrop-filter:blur(35px);backdrop-filter:blur(35px);border-radius:20px;padding:25px;margin-bottom:30px;border:1px solid rgba(168,237,234,.25);box-shadow:0 12px 40px #0003,0 0 25px #a8edea1a,inset 0 1px #ffffff26}.analysis-result h3{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:15px;font-size:1.2rem}.analysis-content{color:#ffffffd9;line-height:1.7;font-size:1rem}.tips-section{background:#ffffff14;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:16px;padding:25px;border-left:4px solid rgba(168,237,234,.8);border-top:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.tips-section h3{color:#fffffff2;margin-bottom:15px}.tips-section ul{list-style:none;padding:0;margin:0}.tips-section li{color:#ffffffbf;padding:10px 0 10px 28px;position:relative}.tips-section li:before{content:"💡";position:absolute;left:0}.empty-history{text-align:center;padding:60px 20px;color:#ffffff80}.history-icon{font-size:4rem;display:block;margin-bottom:15px;opacity:.6}.empty-history p{font-size:1.2rem;margin-bottom:5px;color:#ffffffb3}.empty-history small{color:#ffffff80}.history-list{display:flex;flex-direction:column;gap:15px}.history-card{background:#ffffff14;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:16px;padding:20px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.history-card:hover{background:#ffffff1f}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.history-word{font-weight:700;font-size:1.1rem;background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-transform:uppercase}.history-time{color:#ffffff80;font-size:.85rem}.history-result{color:#ffffffbf;line-height:1.6}.subscription-gate{text-align:center;padding:40px 20px}.subscription-gate .gate-icon{font-size:64px;display:block;margin-bottom:20px}.subscription-gate h2{font-size:2rem;margin-bottom:16px}.subscription-gate>p{color:#ffffffb3;font-size:1.1rem;margin-bottom:40px;max-width:500px;margin-left:auto;margin-right:auto}.pricing-cards{display:flex;gap:24px;justify-content:center;margin-bottom:32px;flex-wrap:wrap}.pricing-card{background:#ffffff14;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:20px;padding:32px;min-width:260px;border:1px solid rgba(255,255,255,.15);position:relative;transition:transform .3s ease}.pricing-card:hover{transform:translateY(-4px)}.pricing-card.featured{background:linear-gradient(135deg,#667eea4d,#764ba24d);border-color:#a8edea66}.save-badge{position:absolute;top:-12px;right:20px;background:linear-gradient(135deg,#0f8,#00cc6a);color:#0a2e1a;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700}.pricing-card h3{margin:0 0 16px;font-size:1.3rem;color:#fff}.pricing-card .price{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:20px}.pricing-card .price span{font-size:1rem;font-weight:400}.pricing-card ul{list-style:none;padding:0;margin:0;text-align:left}.pricing-card li{color:#fffc;font-size:14px;padding:8px 0 8px 24px;position:relative}.pricing-card li:before{content:"✓";position:absolute;left:0;color:#0f8}.pricing-card.selected{border-color:#667eeacc;box-shadow:0 0 20px #667eea66}.payment-methods{margin:24px 0}.payment-label{color:#fffc;margin-bottom:12px;font-size:14px}.payment-options{display:flex;gap:12px;justify-content:center}.payment-option{padding:14px 28px;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);border-radius:12px;color:#fffc;cursor:pointer;transition:all .3s ease;font-size:1rem}.payment-option:hover{background:#ffffff26;color:#fff}.payment-option.active{background:linear-gradient(135deg,#667eea99,#764ba299);border-color:#667eeacc;color:#fff}.paypal-container{display:flex;justify-content:center;margin:16px 0}.paypal-container paypal-button{min-width:200px}.subscribe-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;padding:16px 48px;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.subscribe-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #667eea66}.trial-note{color:#ffffff80;font-size:14px;margin-top:16px}.free-preview{margin-top:40px;padding-top:40px;border-top:1px solid rgba(255,255,255,.1)}.free-preview h3{text-align:center;color:#fff;margin-bottom:12px}.free-preview>p{text-align:center;color:#fff9;margin-bottom:24px}.accuracy-display{background:#ffffff14;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:16px;padding:20px;margin-top:20px;border:2px solid}.accuracy-header{display:flex;align-items:center;gap:16px}.accuracy-percentage{font-size:2.5rem;font-weight:700}.accuracy-message{font-size:1.1rem;color:#ffffffe6}.accuracy-feedback{list-style:none;padding:0;margin:16px 0 0}.accuracy-feedback li{color:#ffffffb3;font-size:14px;padding:8px 0 8px 24px;position:relative}.accuracy-feedback li:before{content:"→";position:absolute;left:0;color:#ffd93d}.sign-info{background:#ffffff14;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:16px;padding:20px;margin-top:24px;border:1px solid rgba(255,255,255,.1)}.sign-info h4{margin:0 0 12px;color:#a8edea;font-size:1rem}.sign-description{color:#ffffffd9;margin-bottom:16px;line-height:1.6}.sign-tips{list-style:none;padding:0;margin:0}.sign-tips li{color:#ffffffb3;font-size:14px;padding:6px 0 6px 24px;position:relative}.sign-tips li:before{content:"💡";position:absolute;left:0}.tracking-section{padding:20px 0}@media(max-width:600px){.tutoring-tabs{flex-direction:column}.tutoring-tabs .tab-btn{text-align:center}.camera-controls{flex-direction:column}.control-btn{width:100%}.word-chips{justify-content:center}.pricing-cards{flex-direction:column;align-items:center}.pricing-card{min-width:100%}}.profile-container{max-width:700px;margin:0 auto}.profile-container h2{font-size:28px;margin-bottom:24px;background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding:20px;background:#ffffff14;border-radius:16px;border:1px solid rgba(255,255,255,.1);flex-wrap:wrap}.avatar-section{display:flex;align-items:center;gap:16px}.avatar{width:72px;height:72px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;border:3px solid rgba(255,255,255,.2)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:28px;font-weight:700;color:#fff}.user-info{display:flex;flex-direction:column;gap:4px}.username{font-size:18px;font-weight:600}.email{font-size:14px;color:#fff9}.verification-badges{display:flex;gap:8px}.badge{padding:8px 16px;border-radius:20px;font-size:13px;font-weight:600;border:none;cursor:pointer;transition:all .3s ease}.badge.verified{background:linear-gradient(135deg,#0f8,#00cc6a);color:#0a2e1a}.badge.unverified{background:#ffffff1a;color:#fffc;border:1px dashed rgba(255,255,255,.3)}.badge.unverified:hover{background:#ffffff26}.save-message{padding:12px 16px;border-radius:12px;margin-bottom:20px;font-size:14px}.save-message.success{background:#00ff8826;border:1px solid rgba(0,255,136,.3);color:#0f8}.save-message.error{background:#ff6b6b26;border:1px solid rgba(255,107,107,.3);color:#ff6b6b}.profile-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#fffc}.form-group input[type=text],.form-group input[type=date],.form-group textarea{padding:14px 16px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:12px;color:#fff;font-size:15px;transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#a8edea80;background:#ffffff1a}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit}.char-count{font-size:12px;color:#ffffff80;text-align:right}.skill-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.skill-option{display:flex;flex-direction:column;gap:4px;padding:16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left}.skill-option:hover{background:#ffffff14}.skill-option.active{background:linear-gradient(135deg,#667eea4d,#764ba24d);border-color:#a8edea80}.skill-label{font-size:15px;font-weight:600;color:#fff}.skill-desc{font-size:12px;color:#fff9}.interests-grid{display:flex;flex-wrap:wrap;gap:10px}.interest-chip{padding:10px 18px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:24px;color:#fffc;font-size:14px;cursor:pointer;transition:all .3s ease}.interest-chip:hover{background:#ffffff1f}.interest-chip.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff}.save-btn{padding:16px 32px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;align-self:flex-start}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #667eea66}.save-btn:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.age-modal{background:#1e1e32e6;border:1px solid rgba(255,255,255,.2);border-radius:28px;padding:32px;max-width:450px;width:100%;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);box-shadow:0 25px 60px #00000080,0 0 40px #667eea1a}.age-modal h3{font-size:22px;margin-bottom:12px;color:#fff}.age-modal p{color:#ffffffb3;font-size:14px;line-height:1.6;margin-bottom:24px}.checkbox-group{display:flex;gap:12px;align-items:flex-start;margin:20px 0}.checkbox-group input[type=checkbox]{width:20px;height:20px;margin-top:2px;cursor:pointer}.checkbox-group label{font-size:14px;color:#fffc;line-height:1.5;cursor:pointer}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.cancel-btn{padding:12px 24px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:14px;cursor:pointer;transition:all .3s ease}.cancel-btn:hover{background:#ffffff26}.verify-btn{padding:12px 24px;background:linear-gradient(135deg,#0f8,#00cc6a);border:none;border-radius:10px;color:#0a2e1a;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.verify-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #0f86}.verify-btn:disabled{opacity:.5;cursor:not-allowed}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px}@media(max-width:600px){.profile-header{flex-direction:column;align-items:flex-start}.skill-options{grid-template-columns:1fr}}.chat-container{display:flex;flex-direction:column;height:calc(100vh - 280px);min-height:500px;max-height:700px}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#ffffff14;border-radius:16px 16px 0 0;border:1px solid rgba(255,255,255,.1);border-bottom:none}.room-info h3{margin:0;font-size:18px;color:#fff}.room-info p{margin:4px 0 0;font-size:13px;color:#fff9}.online-status{display:flex;align-items:center;gap:8px;font-size:13px;color:#ffffffb3}.online-dot{width:8px;height:8px;background:#0f8;border-radius:50%;box-shadow:0 0 8px #0f8}.chat-error{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ff6b6b26;border:1px solid rgba(255,107,107,.3);color:#ff6b6b;font-size:14px}.chat-error button{background:none;border:none;color:inherit;cursor:pointer;text-decoration:underline}.messages-container{flex:1;overflow-y:auto;padding:20px;background:#ffffff08;border-left:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:16px}.empty-chat{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:#ffffff80}.chat-icon{font-size:48px}.message{display:flex;gap:12px;align-items:flex-start;max-width:85%;position:relative}.message.own{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.message-avatar img{width:100%;height:100%;object-fit:cover}.message-avatar span{font-size:16px;font-weight:600;color:#fff}.message-content{background:#ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:18px;padding:12px 16px;border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 15px #0000001a}.message.own .message-content{background:linear-gradient(135deg,#667eea4d,#764ba24d);border-color:#a8edea33}.message-header{display:flex;gap:8px;align-items:baseline;margin-bottom:4px}.sender-name{font-size:13px;font-weight:600;color:#a8edea}.message.own .sender-name{color:#fed6e3}.message-time{font-size:11px;color:#fff6}.message-text{margin:0;font-size:14px;line-height:1.5;color:#ffffffe6;word-wrap:break-word}.report-btn{position:absolute;right:-30px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;opacity:0;transition:opacity .2s ease;font-size:14px;padding:4px}.message:hover .report-btn{opacity:.5}.report-btn:hover{opacity:1!important}.message-composer{display:flex;gap:12px;padding:16px 20px;background:#ffffff14;border-radius:0 0 16px 16px;border:1px solid rgba(255,255,255,.1);border-top:none}.message-composer textarea{flex:1;padding:12px 16px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:24px;color:#fff;font-size:14px;font-family:inherit;resize:none;min-height:20px;max-height:100px}.message-composer textarea:focus{outline:none;border-color:#a8edea80}.message-composer textarea::placeholder{color:#fff6}.send-btn{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;font-size:20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 16px #667eea66}.send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-guidelines{padding:12px 20px;text-align:center}.chat-guidelines small{font-size:12px;color:#fff6}.age-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;gap:16px;text-align:center;padding:40px}.gate-icon{font-size:48px}.age-gate h3{margin:0;font-size:22px;color:#fff}.age-gate p{margin:0;color:#fff9;font-size:14px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;gap:16px}.loading-spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top-color:#a8edea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:600px){.chat-container{height:calc(100vh - 200px)}.message{max-width:90%}.report-btn{display:none}}.communication-container{max-width:900px;margin:0 auto;padding:20px}.communication-container.font-large{font-size:1.15rem}.communication-container.font-xlarge{font-size:1.3rem}.communication-container.high-contrast{--bg-color: rgba(0, 0, 0, .9);--text-color: #ffffff;--border-color: #ffffff;--accent-color: #00ff88}.communication-container.high-contrast .speak-section,.communication-container.high-contrast .listen-section,.communication-container.high-contrast .phrases-section,.communication-container.high-contrast .recent-section,.communication-container.high-contrast .settings-panel{background:var(--bg-color);border:2px solid var(--border-color)}.comm-header{text-align:center;margin-bottom:30px;position:relative}.comm-header h2{font-size:2rem;background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.comm-header p{color:#ffffffb3;font-size:1rem}.settings-toggle{position:absolute;top:0;right:0;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:10px 14px;cursor:pointer;font-size:1.2rem;transition:all .3s ease}.settings-toggle:hover{background:#ffffff26;transform:rotate(90deg)}.settings-panel{background:#ffffff14;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-radius:20px;padding:24px;margin-bottom:24px;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 30px #0003,inset 0 1px #ffffff1a}.settings-panel h3{margin:0 0 20px;color:#fff;font-size:1.1rem}.setting-group{margin-bottom:20px}.setting-group label{display:block;color:#fffc;font-size:.9rem;margin-bottom:8px}.setting-group input[type=range]{width:100%;height:6px;border-radius:3px;background:#fff3;-webkit-appearance:none}.setting-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);cursor:pointer}.setting-group select{width:100%;padding:12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;font-size:.95rem}.setting-group select option{background:#1a1a2e;color:#fff}.size-options{display:flex;gap:10px}.size-options button{flex:1;padding:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;cursor:pointer;transition:all .3s ease}.size-options button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent}.setting-group.toggle label{display:flex;align-items:center;gap:10px;cursor:pointer}.setting-group.toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}.comm-main{display:flex;flex-direction:column;gap:24px}.speak-section,.listen-section,.phrases-section,.recent-section{background:#ffffff0f;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border-radius:24px;padding:24px;border:1px solid rgba(255,255,255,.1);box-shadow:0 12px 40px #0003,inset 0 1px #ffffff1a}.speak-section h3,.listen-section h3,.phrases-section h3,.recent-section h3{margin:0 0 16px;font-size:1.1rem;color:#fff}.input-area textarea{width:100%;padding:16px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:16px;color:#fff;font-size:1.1rem;font-family:inherit;resize:vertical;min-height:80px;transition:all .3s ease}.input-area textarea:focus{outline:none;border-color:#a8edea80;background:#ffffff1a}.input-area textarea::placeholder{color:#ffffff80}.speak-controls{display:flex;gap:12px;margin-top:12px}.speak-btn{flex:1;padding:14px 24px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:14px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #667eea4d}.speak-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.speak-btn:disabled{opacity:.5;cursor:not-allowed}.speak-btn.speaking{background:linear-gradient(135deg,#f093fb,#f5576c);animation:pulse-speak 1s ease-in-out infinite}@keyframes pulse-speak{0%,to{box-shadow:0 6px 20px #f093fb4d}50%{box-shadow:0 6px 30px #f093fb80}}.clear-btn{padding:14px 24px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:14px;color:#fff;font-size:1rem;cursor:pointer;transition:all .3s ease}.clear-btn:hover:not(:disabled){background:#ffffff26}.clear-btn:disabled{opacity:.5;cursor:not-allowed}.warning-message{margin-top:12px;padding:12px;background:#ffc10726;border:1px solid rgba(255,193,7,.3);border-radius:10px;color:#ffc107;font-size:.9rem;text-align:center}.listen-controls{display:flex;align-items:center;gap:16px;margin-bottom:16px}.listen-btn{padding:14px 28px;background:linear-gradient(135deg,#00b09b,#96c93d);border:none;border-radius:14px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #00b09b4d}.listen-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #00b09b66}.listen-btn:disabled{opacity:.5;cursor:not-allowed}.listen-btn.listening{background:linear-gradient(135deg,#f093fb,#f5576c)}.listening-indicator{display:flex;align-items:center;gap:8px;color:#f5576c;font-weight:500}.pulse{width:12px;height:12px;background:#f5576c;border-radius:50%;animation:pulse-indicator 1s ease-in-out infinite}@keyframes pulse-indicator{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.transcript-area{background:#0003;border-radius:16px;overflow:hidden}.transcript-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.transcript-header span{font-weight:600;color:#fffc}.transcript-actions{display:flex;gap:8px}.transcript-actions button{padding:6px 12px;background:#ffffff1a;border:none;border-radius:8px;color:#fff;font-size:.85rem;cursor:pointer;transition:all .3s ease}.transcript-actions button:hover:not(:disabled){background:#ffffff26}.transcript-actions button:disabled{opacity:.4;cursor:not-allowed}.transcript-content{padding:16px;min-height:100px;color:#fff;line-height:1.6;white-space:pre-wrap}.transcript-content .placeholder{color:#fff6;font-style:italic}.category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.category-tab{padding:10px 16px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:20px;color:#fffc;font-size:.9rem;cursor:pointer;transition:all .3s ease}.category-tab:hover{background:#ffffff1f}.category-tab.active{background:linear-gradient(135deg,#667eea99,#764ba299);border-color:#a8edea66;color:#fff}.phrases-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.phrase-btn{padding:14px 16px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:14px;color:#fff;font-size:.95rem;cursor:pointer;transition:all .3s ease;text-align:center}.phrase-btn:hover{background:#ffffff26;transform:translateY(-2px);box-shadow:0 6px 20px #0003}.phrase-btn:active{transform:translateY(0)}.recent-phrases{display:flex;flex-wrap:wrap;gap:10px}.recent-btn{padding:10px 16px;background:#a8edea26;border:1px solid rgba(168,237,234,.3);border-radius:20px;color:#a8edea;font-size:.9rem;cursor:pointer;transition:all .3s ease}.recent-btn:hover{background:#a8edea40}.accessibility-info{margin-top:30px;padding:24px;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.1)}.accessibility-info h4{margin:0 0 16px;color:#fff;font-size:1rem}.accessibility-info ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.accessibility-info li{color:#fffc;font-size:.9rem;line-height:1.5}.accessibility-info strong{color:#a8edea}@media(max-width:600px){.communication-container{padding:15px}.comm-header h2{font-size:1.6rem}.settings-toggle{position:static;margin-top:10px}.speak-section,.listen-section,.phrases-section,.recent-section{padding:18px;border-radius:18px}.speak-controls{flex-direction:column}.listen-controls{flex-direction:column;align-items:stretch}.category-tabs{justify-content:center}.phrases-grid{grid-template-columns:repeat(2,1fr)}.accessibility-info ul{grid-template-columns:1fr}}.about-container{padding:20px;max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.about-hero{text-align:center;padding:40px 20px;background:linear-gradient(135deg,#1a1a2ee6,#0f3460e6);border-radius:24px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a}.brand-logo{font-size:3rem;font-weight:800;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:2px}.brand-unmute{color:#fff}.brand-circle{color:#f5a623;font-size:1.5rem;margin:0 -2px}.accessibility-icon{color:#fffc;font-size:1.8rem;margin-left:8px}.about-tagline{font-size:1.5rem;font-weight:600;background:linear-gradient(90deg,#f5a623,gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 16px;letter-spacing:3px}.about-motto{font-size:1.3rem;color:#ffffffe6;margin:0;font-style:italic}.highlight-equal{color:#f5a623;font-weight:700;font-style:normal}.about-card{background:#ffffff14;border-radius:20px;padding:24px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 4px 16px #0003,inset 0 1px #ffffff0d}.about-card h3{font-size:1.4rem;margin:0 0 16px;background:linear-gradient(90deg,#f5a623,gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-card p{color:#ffffffd9;line-height:1.7;margin:0}.feature-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:20px}.feature-list li{display:flex;align-items:flex-start;gap:16px}.feature-icon{font-size:2rem;flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#f5a62333;border-radius:12px}.feature-list li div{flex:1}.feature-list li strong{color:#fff;font-size:1.1rem;display:block;margin-bottom:4px}.feature-list li p{color:#ffffffb3;font-size:.95rem;margin:0}.accessibility-list{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.accessibility-list li{background:#f5a62326;padding:12px 16px;border-radius:10px;color:#ffffffe6;font-size:.9rem;text-align:center;border:1px solid rgba(245,166,35,.3)}.contact-card{text-align:center}.social-links{margin-top:20px}.version-info{color:#ffffff80;font-size:.85rem}@media(max-width:600px){.about-container{padding:16px}.brand-logo{font-size:2rem}.about-tagline{font-size:1.1rem;letter-spacing:2px}.about-motto{font-size:1.1rem}.feature-list li{flex-direction:column;text-align:center}.feature-icon{margin:0 auto}.accessibility-list{grid-template-columns:1fr}}.offline-banner{position:fixed;top:0;left:0;right:0;padding:12px 20px;display:flex;align-items:center;justify-content:center;gap:12px;z-index:9999;animation:slideDown .3s ease;flex-wrap:wrap}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.offline-banner.offline{background:linear-gradient(135deg,#ff6b6bf2,#ff8e53f2);color:#fff}.offline-banner.online{background:linear-gradient(135deg,#00ff88f2,#00cc6af2);color:#0a2e1a}.status-icon{font-size:18px}.status-text{font-weight:600;font-size:14px}.offline-features{font-size:12px;opacity:.9;width:100%;text-align:center}@media(max-width:600px){.offline-banner{padding:10px 16px;flex-direction:column;gap:6px}}.accessibility-popup-overlay{position:fixed;inset:0;background:linear-gradient(135deg,#1a1a2e,#0f3460,#16213e);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.accessibility-popup-overlay.high-contrast{background:#000}.accessibility-popup{background:#ffffff1a;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-radius:24px;border:1px solid rgba(255,255,255,.2);max-width:480px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0000004d,0 0 80px #f5a6231a,inset 0 1px #ffffff1a;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.high-contrast .accessibility-popup{background:#000;border:3px solid #fff;-webkit-backdrop-filter:none;backdrop-filter:none}.accessibility-popup.large{font-size:18px}.accessibility-popup.xlarge{font-size:22px}.popup-header{text-align:center;padding:32px 24px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.brand-logo{font-size:2.5em;font-weight:800;margin-bottom:12px;display:flex;align-items:center;justify-content:center;gap:2px}.logo-text{background:linear-gradient(135deg,#f5a623,gold,#f5a623);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-dot{color:#f5a623;-webkit-text-fill-color:#f5a623;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.logo-icon{margin-left:8px;font-size:.8em}.popup-title{font-size:1.8em;font-weight:700;color:#fff;margin:0 0 4px}.popup-subtitle{font-size:1.1em;color:#f5a623;margin:0 0 8px;font-weight:500}.popup-tagline{font-size:.9em;color:#ffffffb3;margin:0;text-transform:uppercase;letter-spacing:2px}.popup-content{padding:24px}.section-title{font-size:1.2em;font-weight:600;color:#fff;margin:0 0 8px}.section-description{font-size:.9em;color:#ffffffb3;margin:0 0 20px}.settings-grid{display:flex;flex-direction:column;gap:16px}.setting-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.setting-item:hover{background:#ffffff14;border-color:#f5a6234d}.high-contrast .setting-item{background:#000;border:2px solid #fff}.setting-info{display:flex;align-items:center;gap:12px}.setting-icon{font-size:1.5em}.setting-label{display:block;font-weight:600;color:#fff;font-size:1em}.setting-desc{display:block;font-size:.85em;color:#fff9}.toggle-switch{position:relative;display:inline-block;width:56px;height:30px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:#fff3;transition:.3s;border-radius:30px}.toggle-slider:before{position:absolute;content:"";height:24px;width:24px;left:3px;bottom:3px;background:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background:#f5a623}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px)}.high-contrast .toggle-slider{background:#333;border:2px solid #fff}.high-contrast .toggle-switch input:checked+.toggle-slider{background:#fff}.high-contrast .toggle-slider:before{background:#000}.font-size-buttons{display:flex;gap:8px}.size-btn{width:44px;height:36px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.size-btn:hover{background:#ffffff26}.size-btn.active{background:#f5a623;border-color:#f5a623;color:#000}.high-contrast .size-btn{background:#000;border:2px solid #fff}.high-contrast .size-btn.active{background:#fff;color:#000}.popup-footer{padding:24px;text-align:center;border-top:1px solid rgba(255,255,255,.1)}.motto{font-style:italic;color:#ffffffb3;margin:0 0 20px;font-size:.95em}.continue-btn{width:100%;padding:16px 32px;font-size:1.1em;font-weight:600;background:linear-gradient(135deg,#f5a623,gold);color:#000;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #f5a6234d}.continue-btn:hover{transform:translateY(-2px);box-shadow:0 6px 30px #f5a62366}.continue-btn:active{transform:translateY(0)}.high-contrast .continue-btn{background:#fff;color:#000}@media(max-width:480px){.accessibility-popup{border-radius:20px;max-height:95vh}.popup-header{padding:24px 20px 20px}.brand-logo{font-size:2em}.popup-title{font-size:1.5em}.popup-content{padding:20px}.setting-item{padding:14px}.popup-footer{padding:20px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#0d0d1a,#1a1a3e,#0f3460 60%,#1a1f3a);min-height:100vh;position:relative;overflow-x:hidden;color:#fff}body:before{content:"";position:fixed;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 20% 20%,rgba(120,119,198,.4) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,119,198,.25) 0%,transparent 50%),radial-gradient(circle at 40% 60%,rgba(100,200,255,.3) 0%,transparent 40%),radial-gradient(circle at 60% 30%,rgba(102,126,234,.2) 0%,transparent 60%);animation:gradientShift 20s ease-in-out infinite;z-index:-1;filter:blur(40px)}@keyframes gradientShift{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(2%,2%) rotate(5deg)}}#root{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}
