.theme-toggle{align-items:center;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;display:inline-flex;gap:6px;padding:8px;transition:all .2s ease}.theme-toggle:hover{background:var(--card-hover);border-color:var(--accent)}.theme-toggle:focus{outline:3px solid var(--accent);outline-offset:2px}.theme-toggle-small{font-size:.875rem;padding:4px}.theme-toggle-medium{font-size:1rem;padding:8px}.theme-toggle-large{font-size:1.25rem;padding:12px}.theme-toggle-icon{font-size:1.2em;line-height:1}.theme-toggle-label{font-weight:500}.theme-selector{display:flex;flex-direction:column;gap:8px}.theme-selector-label{color:var(--text-dark);font-weight:600}.theme-selector-options{display:flex;flex-wrap:wrap;gap:8px}.theme-option{align-items:center;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;display:inline-flex;font-size:.9rem;gap:6px;padding:8px 12px;transition:all .2s ease}.theme-option:hover{background:var(--card-hover);border-color:var(--accent)}.theme-option:focus{outline:3px solid var(--accent);outline-offset:2px}.theme-option.active{background:var(--accent);border-color:var(--accent);color:#fff}.sos-overlay{align-items:center;animation:sos-pulse .5s ease-in-out infinite alternate;background:#dc2626f2;display:flex;inset:0;justify-content:center;position:fixed;z-index:99999}.sos-overlay.sent{animation:none;background:#059669f2}@keyframes sos-pulse{0%{background:#dc2626e6}to{background:#b91c1cfa}}.sos-countdown-card{color:#fff;text-align:center}.sos-countdown-number{font-size:8rem;font-weight:900;line-height:1;text-shadow:0 4px 20px #0000004d}.sos-countdown-text{font-size:1.4rem;margin:16px 0 32px;opacity:.9}.sos-cancel-btn{border-radius:12px;box-shadow:0 4px 20px #0003;color:#dc2626;padding:16px 48px}.sos-cancel-btn:active{transform:scale(.95)}.sos-sent-card{color:#fff;text-align:center}.sos-sent-icon{display:block;font-size:5rem;margin-bottom:16px}.sos-sent-card p{font-size:1.5rem;font-weight:600}.sos-shake-progress{animation:shake-appear .2s ease-out;background:#dc2626e6;border-radius:20px;left:50%;padding:8px 16px;position:fixed;top:12px;transform:translateX(-50%);z-index:9998}@keyframes shake-appear{0%{opacity:0;transform:translateX(-50%) translateY(-10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.sos-shake-dots{display:flex;gap:6px}.sos-dot{background:#ffffff4d;border-radius:50%;height:10px;transition:background .15s;width:10px}.sos-dot.active{background:#fff}.sos-badge{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:20px;color:#991b1b;display:inline-flex;font-size:.8rem;font-weight:600;gap:6px;padding:8px 14px}.sos-badge-dot{animation:sos-blink 2s ease-in-out infinite;background:#dc2626;border-radius:50%;height:8px;width:8px}@keyframes sos-blink{0%,to{opacity:1}50%{opacity:.3}}.sos-badge.setup{background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;color:#1e40af;cursor:pointer;font-size:.8rem;font-weight:600;padding:8px 14px}.sos-permission-hint{animation:permission-slide-up .3s ease-out;bottom:80px;left:50%;position:fixed;transform:translateX(-50%);z-index:9997}@keyframes permission-slide-up{0%{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.sos-permission-btn{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:24px;box-shadow:0 4px 15px #dc262666;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:12px 20px;transition:transform .15s,box-shadow .15s}.sos-permission-btn:hover{box-shadow:0 6px 20px #dc262680;transform:scale(1.02)}.sos-permission-btn:active{transform:scale(.98)}.sos-permission-btn:before{content:"📳";font-size:1.1rem}.setup-overlay{align-items:center;background:linear-gradient(135deg,var(--brand-navy) 0,var(--brand-navy-dark) 100%);display:flex;inset:0;justify-content:center;overflow-y:auto;padding:1rem;position:fixed;z-index:10000}.setup-container{background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #00000080;max-height:90vh;max-width:480px;overflow-y:auto;width:100%}.setup-progress{background:var(--brand-gray-200);border-radius:24px 24px 0 0;height:4px;overflow:hidden}.setup-progress-bar{background:linear-gradient(90deg,var(--brand-red) 0,var(--brand-red-light) 100%);height:100%;transition:width .3s ease}.setup-step{padding:2rem;text-align:center}.setup-step h1,.setup-step h2{color:var(--brand-navy);font-weight:700;margin:0 0 .5rem}.setup-step h1{font-size:1.75rem}.setup-step h2{font-size:1.4rem}.setup-subtitle{color:var(--brand-gray-500);font-size:1.1rem;margin:0 0 1rem}.setup-text{color:var(--brand-gray-600);line-height:1.6;margin:1rem 0}.setup-hint{color:var(--brand-gray-500);font-size:.9rem;margin:0 0 1.5rem}.setup-time{align-items:center;color:var(--brand-red);display:flex;font-weight:600;gap:.5rem;justify-content:center;margin:1.5rem 0}.setup-welcome{padding-top:2.5rem}.setup-logo{margin-bottom:1.5rem}.setup-icon.success{animation:bounce .5s ease;font-size:5rem}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.setup-btn{border:none;border-radius:var(--radius-xl);cursor:pointer;display:block;font-size:1rem;font-weight:600;margin:.5rem 0;padding:1rem 1.5rem;transition:all .2s;width:100%}.setup-btn.primary{background:#1e3a7b!important;box-shadow:0 4px 14px #1e3a7b59;color:#fff!important}.setup-btn.primary:hover{background:#152a5c!important;box-shadow:0 6px 20px #1e3a7b73;transform:translateY(-2px)}.setup-btn.primary:active{transform:translateY(0)}.setup-btn.primary.large{font-size:1.1rem;padding:1.25rem 2rem}.setup-btn.secondary{background:var(--brand-gray-100);color:var(--brand-gray-600)}.setup-btn.secondary:hover{background:var(--brand-gray-200)}.setup-btn.text{background:#0000;color:var(--brand-gray-500);text-decoration:underline}.setup-btn:disabled{cursor:not-allowed;opacity:.5}.setup-actions{display:flex;gap:.75rem;margin-top:2rem}.setup-actions .setup-btn{flex:1 1;margin:0}.setup-actions .setup-btn.text{flex:0 0 auto;padding:.5rem 1rem}.language-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr);margin:1.5rem 0}.language-btn{align-items:center;background:#fff;border:2px solid var(--brand-gray-200);border-radius:var(--radius-xl);cursor:pointer;display:flex;gap:.75rem;padding:1rem;transition:all .2s}.language-btn.selected,.language-btn:hover{border-color:var(--brand-navy)}.language-btn.selected{background:#1e3a5f0d}.language-flag{font-size:1.75rem}.language-name{color:var(--brand-gray-800);font-weight:500}.setup-form{text-align:left}.setup-form label{color:var(--brand-gray-700);display:block;font-weight:500;margin-bottom:1rem}.setup-form input,.setup-form select,.setup-form textarea{border:2px solid var(--brand-gray-200);border-radius:var(--radius-lg);box-sizing:border-box;display:block;font-size:1rem;margin-top:.5rem;padding:.875rem 1rem;transition:border-color .2s;width:100%}.setup-form input:focus,.setup-form select:focus,.setup-form textarea:focus{border-color:var(--brand-navy);outline:none}.setup-form textarea{resize:vertical}.setup-chips-section{margin-bottom:1rem}.setup-chips,.setup-chips-section>label{margin-bottom:.75rem}.setup-chips{display:flex;flex-wrap:wrap;gap:.5rem}.setup-chip{background:#fff;border:2px solid var(--brand-gray-200);border-radius:var(--radius-full);cursor:pointer;font-size:.875rem;padding:.5rem .875rem;transition:all .2s}.setup-chip:hover{border-color:var(--brand-navy)}.setup-chip.selected{background:#dc262614;border-color:var(--brand-red);color:var(--brand-red)}.setup-chip-input{display:flex;gap:.5rem}.setup-chip-input input{flex:1 1;margin:0;padding:.625rem .875rem}.setup-chip-input button{background:var(--brand-navy);border:2px solid var(--brand-navy);border-radius:var(--radius-lg);color:#fff;cursor:pointer;font-size:1.25rem;padding:.625rem 1rem;transition:all .2s}.setup-chip-input button:hover{background:var(--brand-navy-dark)}.contacts-list{margin-bottom:1.5rem}.contact-item{align-items:center;background:var(--brand-gray-50);border-radius:var(--radius-lg);display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.875rem}.contact-info{gap:.125rem;text-align:left}.contact-info strong{color:var(--brand-gray-800)}.contact-info span{color:var(--brand-gray-500);font-size:.875rem}.contact-rel{background:#1e3a5f1a;border-radius:var(--radius-sm);color:var(--brand-navy);font-size:.75rem;padding:.125rem .5rem;width:fit-content}.contact-remove{background:none;border:none;color:var(--brand-gray-400);cursor:pointer;font-size:1rem;padding:.5rem}.contact-remove:hover{color:var(--brand-red)}.contact-form{grid-gap:.75rem;display:grid;gap:.75rem}.contact-form input,.contact-form select{margin:0}.add-btn{background:var(--color-success)!important;color:#fff!important}.risk-options{display:flex;flex-direction:column;gap:.75rem;margin:1.5rem 0}.risk-option{align-items:center;background:#fff;border:2px solid var(--brand-gray-200);border-radius:var(--radius-xl);cursor:pointer;display:flex;gap:1rem;padding:1rem;text-align:left;transition:all .2s}.risk-option.selected,.risk-option:hover{border-color:var(--brand-navy)}.risk-option.selected{background:#1e3a5f0d}.risk-icon{font-size:2rem}.risk-option div{display:flex;flex-direction:column;gap:.25rem}.risk-option strong{color:var(--brand-gray-800);font-size:1rem}.risk-option span{color:var(--brand-gray-500);font-size:.875rem}.setup-summary{background:var(--brand-gray-50);border-radius:var(--radius-xl);margin:1.5rem 0;padding:1rem;text-align:left}.setup-summary div{border-bottom:1px solid var(--brand-gray-200);color:var(--brand-gray-600);padding:.5rem 0}.setup-summary div:last-child{border-bottom:none}.setup-done .setup-logo{margin-bottom:1rem}.setup-done h2{color:var(--color-success)}.setup-medical{text-align:left}.setup-medical .setup-hint,.setup-medical h2{text-align:center}@media (max-width:480px){.setup-overlay{padding:0}.setup-container{border-radius:0;display:flex;flex-direction:column;max-height:100vh;min-height:100vh}.setup-step{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:1.5rem}.language-grid{grid-template-columns:1fr}.setup-actions{background:#fff;border-top:1px solid var(--brand-gray-200);bottom:0;flex-direction:column;margin-top:auto;padding:1rem 0;position:sticky}.setup-actions .setup-btn.text{order:-1}.setup-medical{overflow-y:auto}.setup-medical .setup-form{flex:1 1;overflow-y:auto;padding-bottom:1rem}}.menu-overlay{animation:fadeIn .2s ease;background:#00000080;inset:0;position:fixed;z-index:9998}.menu-panel{animation:slideIn .25s ease;background:#fff;box-shadow:4px 0 20px #00000026;display:flex;flex-direction:column;height:100vh;left:0;max-width:85vw;position:fixed;top:0;width:300px;z-index:9999}@keyframes slideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.menu-header{align-items:flex-start;background:linear-gradient(135deg,var(--brand-navy) 0,var(--brand-navy-dark) 100%);color:#fff;display:flex;justify-content:space-between;padding:calc(1.5rem + env(safe-area-inset-top, 0)) 1.5rem 1.5rem}.menu-user{gap:.875rem}.menu-avatar,.menu-user{align-items:center;display:flex}.menu-avatar{background:#fff3;border-radius:50%;font-size:1.25rem;font-weight:600;height:48px;justify-content:center;width:48px}.menu-user-info{display:flex;flex-direction:column;gap:.25rem}.menu-greeting{font-size:1rem;font-weight:600}.menu-setup-btn{background:none;border:none;color:#fffc;cursor:pointer;font-size:.8rem;padding:0;text-align:left}.menu-setup-btn:hover{color:#fff;text-decoration:underline}.menu-close{background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.25rem;height:36px;transition:background .2s;width:36px}.menu-close:hover{background:#fff3}.menu-profile-summary{background:var(--brand-gray-50);border-bottom:1px solid var(--brand-gray-200);display:flex;flex-wrap:wrap;gap:.5rem;padding:.875rem 1.5rem}.profile-badge{background:#fff;border:1px solid var(--brand-gray-200);border-radius:var(--radius-sm);font-size:.75rem;padding:.25rem .5rem}.profile-badge.blood{border-color:#dc26264d;color:var(--brand-red)}.profile-badge.allergy{border-color:#f973164d;color:#ea580c}.profile-badge.contacts{border-color:#1e3a5f4d;color:var(--brand-navy)}.menu-list{flex:1 1;list-style:none;margin:0;overflow-y:auto;padding:.5rem 0}.menu-item{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:1rem;gap:.875rem;padding:1rem 1.5rem;text-align:left;transition:background .15s;width:100%}.menu-item:hover{background:#f1f5f9}.menu-icon{font-size:1.25rem;text-align:center;width:28px}.menu-label{color:#1e293b;flex:1 1}.menu-badge{background:#ef4444;border-radius:10px;color:#fff;font-size:.7rem;padding:.125rem .5rem}.menu-footer{align-items:center;background:var(--brand-gray-50);border-top:1px solid var(--brand-gray-200);display:flex;gap:.75rem;padding:1rem 1.5rem calc(1rem + env(safe-area-inset-bottom, 0))}.menu-footer-text{display:flex;flex-direction:column;gap:.125rem}.menu-footer-tagline{color:var(--brand-navy);font-size:.8rem;font-weight:500}.menu-version{color:var(--brand-gray-400);font-size:.7rem}.akut-simple{background:#f8fafc;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.simple-header{justify-content:space-between;padding:calc(1rem + env(safe-area-inset-top, 0)) 1.25rem 1rem}.header-brand{align-items:center;display:flex}.header-logo-img{border-radius:10px;height:44px;width:auto}.hamburger-btn{align-items:center;background:var(--brand-gray-100);border:none;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:5px;height:44px;justify-content:center;transition:background .2s;width:44px}.hamburger-btn:hover{background:var(--brand-gray-200)}.hamburger-btn span{background:var(--brand-navy);border-radius:1px;display:block;height:2px;width:22px}.header-actions{gap:.5rem}.header-actions,.voice-btn{align-items:center;display:flex}.voice-btn{background:var(--brand-gray-100);border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;height:40px;justify-content:center;transition:all .2s;width:40px}.voice-btn.active{animation:voice-pulse 1.5s ease-in-out infinite;background:#dc2626}@keyframes voice-pulse{0%,to{box-shadow:0 0 0 0 #dc26264d}50%{box-shadow:0 0 0 8px #dc262600}}.simple-content{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;padding:0 1.25rem 2rem}.hero-section{padding:1.5rem 0}.hero-112,.hero-section{align-items:center;display:flex;flex-direction:column}.hero-112{animation:pulse-glow 2s ease-in-out infinite;background:linear-gradient(145deg,var(--brand-red) 0,var(--brand-red-dark) 100%);border:6px solid #ffffff4d;border-radius:50%;box-shadow:0 0 0 8px #dc26264d,0 10px 40px #0006,inset 0 2px 20px #fff3;cursor:pointer;height:180px;justify-content:center;transition:transform .15s,box-shadow .15s;width:180px}.hero-112:hover{transform:scale(1.05)}.hero-112:active{box-shadow:0 0 0 4px #dc262666,0 5px 20px #0000004d,inset 0 2px 10px #0003;transform:scale(.98)}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 8px #dc26264d,0 10px 40px #0006,inset 0 2px 20px #fff3}50%{box-shadow:0 0 0 12px #dc262633,0 10px 50px #dc26264d,inset 0 2px 20px #fff3}}.hero-number{color:#fff;font-size:4rem;font-weight:900;line-height:1;text-shadow:0 2px 4px #0000004d}.hero-label{color:#ffffffe6;font-size:1rem;letter-spacing:3px;margin-top:4px}.hero-location{color:var(--color-success);font-size:.875rem;font-weight:500;gap:.5rem;margin-top:1rem}.location-dot{background:#64748b}.location-dot.active{animation:location-pulse 1.5s ease-in-out infinite;background:#22c55e;box-shadow:0 0 8px #22c55e}@keyframes location-pulse{0%,to{opacity:1}50%{opacity:.5}}.call-prep-btn{background:#dc26261a;border:1.5px solid #dc26264d;border-radius:20px;color:#dc2626;cursor:pointer;font-size:.875rem;font-weight:600;margin-top:.75rem;padding:.5rem 1.25rem;transition:all .2s}.call-prep-btn:hover{background:#dc262626;border-color:#dc2626}.crisis-btn-simple{position:relative}.triage-dot{border:2px solid #fff;border-radius:50%;box-shadow:0 1px 3px #0003;height:10px;position:absolute;right:8px;top:8px;width:10px}.simple-question{color:var(--brand-navy);font-size:1.5rem;font-weight:600;margin:0;text-align:center}.crisis-grid-simple{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.crisis-btn-simple{align-items:center;background:#fff;border:2px solid var(--brand-gray-200);border-radius:16px;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;gap:.75rem;padding:1.25rem 1rem;transition:all .2s}.crisis-btn-simple:hover{background:var(--brand-gray-50);border-color:var(--brand-navy);box-shadow:var(--shadow-md);transform:translateY(-2px)}.crisis-btn-simple:active{transform:translateY(0)}.crisis-icon-simple{align-items:center;background:var(--brand-gray-100);border-radius:50%;color:var(--brand-navy);display:flex;font-size:1.75rem;height:56px;justify-content:center;width:56px}.crisis-label-simple{color:var(--brand-navy);font-size:1rem;font-weight:500;text-align:center}.quick-actions{display:flex;gap:1rem;justify-content:center;margin-top:auto;padding-top:1rem}.quick-action{align-items:center;background:#fff;border:1px solid var(--brand-gray-200);border-radius:12px;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;gap:.375rem;min-width:70px;padding:.75rem 1rem;transition:all .2s}.quick-action:hover{background:var(--brand-gray-50);border-color:var(--brand-navy)}.quick-action span:first-child{font-size:1.5rem}.quick-action span:last-child{color:var(--brand-gray-600);font-size:.75rem;font-weight:500}.akut-panic{align-items:center;background:linear-gradient(180deg,#7f1d1d,#450a0a);display:flex;flex-direction:column;gap:2rem;justify-content:center;min-height:100vh;min-height:100dvh;padding:2rem}.panic-hint{animation:fadeInOut 3s ease-in-out forwards;background:#000c;color:#fff;font-size:.875rem;left:0;padding:1rem;position:fixed;right:0;text-align:center;top:0}@keyframes fadeInOut{0%{opacity:0;transform:translateY(-100%)}15%{opacity:1;transform:translateY(0)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}.panic-112-btn{align-items:center;animation:panic-pulse 1s ease-in-out infinite;background:linear-gradient(145deg,#dc2626,#7f1d1d);border:8px solid #fff6;border-radius:50%;box-shadow:0 0 0 16px #dc262666,0 0 60px #dc262680,inset 0 4px 30px #fff3;cursor:pointer;display:flex;flex-direction:column;height:220px;justify-content:center;width:220px}@keyframes panic-pulse{0%,to{box-shadow:0 0 0 16px #dc262666,0 0 60px #dc262680,inset 0 4px 30px #fff3;transform:scale(1)}50%{box-shadow:0 0 0 24px #dc26264d,0 0 80px #dc262699,inset 0 4px 30px #fff3;transform:scale(1.03)}}.panic-112-number{color:#fff;font-size:5rem;font-weight:900;line-height:1;text-shadow:0 4px 8px #0006}.panic-112-label{color:#ffffffe6;font-size:1.25rem;font-weight:700;letter-spacing:4px}.panic-location{align-items:center;color:#fffc;display:flex;font-size:1rem;gap:.5rem}.panic-actions{display:flex;gap:1.5rem;max-width:400px;width:100%}.panic-action-btn{align-items:center;background:#ffffff26;border:2px solid #ffffff4d;border-radius:16px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:.5rem;padding:1.5rem 1rem;transition:all .2s}.panic-action-btn:active{transform:scale(.95)}.panic-action-btn .action-icon{font-size:2.5rem}.panic-action-btn span:last-child{color:#fff;font-size:1rem;font-weight:600}.panic-action-btn.medical{border-color:#ef444480}.panic-action-btn.accident{border-color:#fb923c80}.panic-exit{background:none;border:1px solid #ffffff4d;border-radius:20px;color:#ffffffb3;cursor:pointer;font-size:.875rem;margin-top:1rem;padding:.75rem 1.5rem}.panic-exit:hover{background:#ffffff1a;color:#fff}.stress-debug{background:#000c;border-radius:8px;bottom:10px;color:#22c55e;font-family:monospace;font-size:.75rem;padding:.5rem 1rem;position:fixed;right:10px}@media (max-width:360px){.hero-112{height:150px;width:150px}.hero-number{font-size:3.5rem}.crisis-grid-simple{gap:.75rem}.crisis-btn-simple{padding:1rem .75rem}.crisis-icon-simple{height:48px;width:48px}}@media (min-width:768px){.simple-content{margin:0 auto;max-width:500px}.hero-112{height:200px;width:200px}.hero-number{font-size:4.5rem}}.cookie-consent-overlay{background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:16px;position:fixed;right:0;z-index:9999}.cookie-consent-banner{animation:slideUp .3s ease-out;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-lg);max-width:600px;padding:24px;width:100%}.cookie-consent-banner h2{color:var(--text-dark);font-size:1.25rem;margin:0 0 12px}.cookie-description{color:var(--text-light);font-size:.9rem;line-height:1.5;margin-bottom:20px}.cookie-options{margin-bottom:16px}.cookie-option{background:var(--bg-soft);border-radius:var(--radius-sm);cursor:pointer;display:block;margin-bottom:8px;padding:12px;transition:background .2s}.cookie-option:hover:not(.disabled){background:var(--card-hover)}.cookie-option.disabled{cursor:default;opacity:.7}.option-header{align-items:center;display:flex;gap:10px}.option-header input[type=checkbox]{accent-color:var(--accent);height:18px;width:18px}.option-name{color:var(--text-dark);font-weight:600}.option-desc{color:var(--text-light);font-size:.85rem;margin:4px 0 0 28px}.cookie-buttons{display:flex;flex-wrap:wrap;gap:10px}.cookie-btn{border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.95rem;font-weight:500;padding:12px 20px;transition:all .2s}.cookie-btn.primary{background:var(--accent);color:#fff;flex:1 1}.cookie-btn.primary:hover{background:#0284c7}.cookie-btn.secondary{background:var(--bg-soft);border:1px solid var(--border);color:var(--text)}.cookie-btn.secondary:hover{background:var(--card-hover)}.cookie-btn.text{background:none;color:var(--accent);padding:12px}.cookie-btn.text:hover{text-decoration:underline}.cookie-policy-link{font-size:.85rem;margin-top:16px;text-align:center}.cookie-policy-link a{color:var(--accent);text-decoration:none}.cookie-policy-link a:hover{text-decoration:underline}@media (max-width:500px){.cookie-consent-banner{padding:20px}.cookie-buttons{flex-direction:column}.cookie-btn{text-align:center;width:100%}}.app-footer{border-top:1px solid var(--border);color:var(--text-light);font-size:.85rem;margin-top:40px;padding:20px;text-align:center}.footer-links{margin-bottom:8px}.footer-links a{color:var(--text-light);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--accent)}.footer-separator{margin:0 10px;opacity:.5}.footer-copyright{font-size:.8rem;opacity:.7}:root{--bg:#fff;--bg-soft:#f8fafc;--card:#fff;--card-hover:#f1f5f9;--text:#334155;--text-light:#64748b;--text-dark:#1e293b;--accent:#0ea5e9;--accent-soft:#e0f2fe;--success:#10b981;--success-soft:#d1fae5;--warning:#f59e0b;--warning-soft:#fef3c7;--danger:#ef4444;--danger-soft:#fee2e2;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--radius:12px;--radius-sm:8px;--border:#e2e8f0;--border-light:#f1f5f9;--input-bg:#fff;--input-border:#e2e8f0}[data-theme=dark]{--bg:#0f172a;--bg-soft:#1e293b;--card:#1e293b;--card-hover:#334155;--text:#e2e8f0;--text-light:#94a3b8;--text-dark:#f8fafc;--accent:#38bdf8;--accent-soft:#0c4a6e;--success:#34d399;--success-soft:#064e3b;--warning:#fbbf24;--warning-soft:#78350f;--danger:#f87171;--danger-soft:#7f1d1d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #00000080;--border:#334155;--border-light:#475569;--input-bg:#1e293b;--input-border:#475569}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f172a;--bg-soft:#1e293b;--card:#1e293b;--card-hover:#334155;--text:#e2e8f0;--text-light:#94a3b8;--text-dark:#f8fafc;--accent:#38bdf8;--accent-soft:#0c4a6e;--success:#34d399;--success-soft:#064e3b;--warning:#fbbf24;--warning-soft:#78350f;--danger:#f87171;--danger-soft:#7f1d1d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #00000080;--border:#334155;--border-light:#475569;--input-bg:#1e293b;--input-border:#475569}}#root,body,html{height:100%}body{background:#fff;background:var(--bg);color:#334155;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:18px;line-height:1.6;margin:0}body.large-text{font-size:20px}body.xlarge-text{font-size:24px}body.high-contrast{--text-light:#1f2937;--accent:#0369a1}.container{margin:0 auto;padding:20px;width:min(900px,100%)}.nav{align-items:center;background:#fff;background:var(--bg);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);display:flex;gap:12px;justify-content:space-between;padding:16px 20px;position:sticky;top:0;z-index:100}.nav .brand{color:#0ea5e9;color:var(--accent);font-size:1.25rem;font-weight:800;letter-spacing:-.02em}.nav .links{display:flex;gap:8px}.nav .link{border-radius:8px;border-radius:var(--radius-sm);color:#334155;color:var(--text);font-weight:500;padding:8px 16px;text-decoration:none;transition:all .2s}.nav .link:hover{background:#f8fafc;background:var(--bg-soft)}.nav .link.active{background:#e0f2fe;background:var(--accent-soft);color:#0ea5e9;color:var(--accent)}.list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.card{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);cursor:pointer;padding:20px;transition:all .2s ease}.card:hover{border-color:#0ea5e9;border-color:var(--accent);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.card:focus{outline:3px solid #0ea5e9;outline:3px solid var(--accent);outline-offset:2px}.card.urgent{background:#fee2e2;background:var(--danger-soft);border-left:4px solid #ef4444;border-left:4px solid var(--danger)}.card-title{color:#1e293b;color:var(--text-dark);font-size:1.1rem;font-weight:700;margin-bottom:8px}.card-desc{color:#64748b;color:var(--text-light);font-size:.95rem}.btn{align-items:center;background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#334155;color:var(--text);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.btn:hover{background:#f1f5f9;background:var(--card-hover);border-color:#cbd5e1}.btn:focus{outline:3px solid #0ea5e9;outline:3px solid var(--accent);outline-offset:2px}.btn.primary{background:#0ea5e9;background:var(--accent);border:none;color:#fff;font-weight:600}.btn.primary:hover{background:#0284c7}.btn.danger{background:#ef4444;background:var(--danger);border:none;color:#fff;font-size:1.1rem;font-weight:700;padding:16px 24px}.btn.danger:hover{background:#dc2626}.chip{align-items:center;background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:999px;color:#334155;color:var(--text);display:inline-flex;font-size:.875rem;font-weight:500;padding:6px 12px}.chat-container,.chat-list{display:flex;flex-direction:column;gap:12px}.chat-list{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);max-height:50vh;min-height:300px;overflow-y:auto;padding:16px}.msg{display:flex;flex-direction:column;max-width:85%}.msg.user{align-self:flex-end}.msg.assistant{align-self:flex-start}.msg.user .bubble{background:#0ea5e9;background:var(--accent);border-radius:16px 16px 4px 16px;color:#fff}.msg.assistant .bubble{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px 16px 16px 4px;box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);color:#334155;color:var(--text)}.bubble{font-size:1rem;line-height:1.5;padding:12px 16px}.composer{background:#fff;border-radius:12px;border-radius:var(--radius);box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);display:flex;gap:12px;padding:12px}.composer,input,textarea{border:1px solid #e2e8f0;border:1px solid var(--border)}input,textarea{background:#f8fafc;background:var(--bg-soft);border-radius:8px;border-radius:var(--radius-sm);color:#334155;color:var(--text);font-size:1rem;padding:12px 16px;transition:all .2s;width:100%}input:focus,textarea:focus{border-color:#0ea5e9;border-color:var(--accent);box-shadow:0 0 0 3px #e0f2fe;box-shadow:0 0 0 3px var(--accent-soft);outline:none}input::placeholder,textarea::placeholder{color:#64748b;color:var(--text-light)}.sos-button{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 14px #ef444466;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;font-weight:700;gap:12px;justify-content:center;padding:20px 32px;transition:all .2s;width:100%}.sos-button:hover{box-shadow:0 6px 20px #ef444480;transform:translateY(-2px)}.emergency-hint{background:#fef3c7;background:var(--warning-soft);border:1px solid #fbbf24;border-radius:12px;border-radius:var(--radius);margin:16px 0;padding:16px 20px}.emergency-hint strong{color:#b45309}.offline-banner{background:var(--warning-soft);border-radius:12px;border-radius:var(--radius);gap:12px;margin-bottom:16px}.offline-banner .icon{font-size:1.5rem}.status-online{background:var(--success-soft);color:#059669}.status-offline,.status-online{border-radius:999px;font-size:.85rem;font-weight:500;padding:4px 12px}.status-offline{background:var(--danger-soft);color:#dc2626}.steps-list{counter-reset:step;list-style:none;padding:0}.steps-list li{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);gap:16px;padding:16px 0}.steps-list li:last-child{border-bottom:none}.steps-list li:before{align-items:center;background:#0ea5e9;background:var(--accent);border-radius:50%;color:#fff;content:counter(step);counter-increment:step;display:flex;font-size:.9rem;font-weight:700;height:32px;justify-content:center;min-width:32px}.info-box{background:#e0f2fe;background:var(--accent-soft);border-left:4px solid #0ea5e9;border-left:4px solid var(--accent);border-radius:0 8px 8px 0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:16px 0;padding:16px 20px}.info-box.warning{background:#fef3c7;background:var(--warning-soft);border-left-color:#f59e0b;border-left-color:var(--warning)}.info-box.danger{background:#fee2e2;background:var(--danger-soft);border-left-color:#ef4444;border-left-color:var(--danger)}.info-box.success{background:#d1fae5;background:var(--success-soft);border-left-color:#10b981;border-left-color:var(--success)}.loading{align-items:center;color:#64748b;color:var(--text-light);display:flex;gap:8px;justify-content:center;padding:20px}.loading:after{animation:spin .8s linear infinite;border:2px solid #e0f2fe;border-top-color:#0ea5e9;border:2px solid var(--accent-soft);border-radius:50%;border-top-color:var(--accent);content:"";height:20px;width:20px}@media (max-width:640px){body{font-size:16px}.container{padding:16px}.nav{flex-wrap:wrap;padding:12px 16px}.nav .links{justify-content:center;width:100%}.list{grid-template-columns:1fr}.chat-list{max-height:40vh}.msg{max-width:95%}}@media (prefers-reduced-motion:no-preference){.btn,.bubble,.card{transition:all .2s ease}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.emergency-home{background:linear-gradient(180deg,#fff,#f0f9ff);min-height:100vh;padding:16px 16px 100px}.panic-section{margin-bottom:24px}.panic-button,.panic-section{align-items:center;display:flex;flex-direction:column}.panic-button{animation:pulse-emergency 2s infinite;background:linear-gradient(145deg,#ef4444,#b91c1c);border:none;border-radius:50%;box-shadow:0 8px 32px #ef444480,0 0 0 8px #ef444433;cursor:pointer;height:160px;justify-content:center;transition:all .2s;width:160px}.panic-button:focus,.panic-button:hover{box-shadow:0 12px 40px #ef444499,0 0 0 12px #ef44444d;transform:scale(1.05)}.panic-button:active{transform:scale(.98)}.panic-icon,.panic-text{font-size:2.5rem}.panic-text{color:#fff;font-weight:900;letter-spacing:2px}.panic-subtitle{color:#ffffffe6;font-size:.875rem;font-weight:600;letter-spacing:3px}.location-info{align-items:center;color:#10b981;color:var(--success);display:flex;font-size:.875rem;gap:4px;margin-top:12px}.question-section{margin-bottom:20px;text-align:center}.main-question{color:#1e293b;color:var(--text-dark);font-size:1.5rem;font-weight:700;margin:0}.category-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.category-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:100px;padding:16px 8px;transition:all .2s}.category-card:focus,.category-card:hover{border-color:#0ea5e9;border-color:var(--cat-color,var(--accent));box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.category-card.urgent{background:linear-gradient(180deg,#fff,#fef2f2);border-color:#fca5a5}.category-card.urgent:hover{border-color:#ef4444}.category-icon{font-size:2.5rem;line-height:1;margin-bottom:8px}.category-title{color:#334155;color:var(--text);font-size:.8rem;font-weight:600;text-align:center}.photo-section{margin-bottom:16px}.photo-button{align-items:center;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:16px;box-shadow:0 4px 16px #6366f14d;color:#fff;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:20px;transition:all .2s;width:100%}.photo-button:hover{box-shadow:0 8px 24px #6366f166;transform:translateY(-2px)}.photo-icon{font-size:2rem;margin-bottom:4px}.photo-text{font-size:1.125rem;font-weight:700}.photo-subtitle{font-size:.75rem;opacity:.9}.voice-section{margin-bottom:24px}.voice-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:16px;color:#334155;color:var(--text);cursor:pointer;display:flex;gap:12px;justify-content:center;padding:16px;transition:all .2s;width:100%}.voice-button:hover{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.voice-text{font-size:1rem;font-weight:600}.language-bar{background:#fff;border-top:1px solid #e2e8f0;bottom:0;box-shadow:0 -4px 12px #0000000d;gap:8px;left:0;padding:12px;position:fixed;right:0}.lang-btn,.language-bar{display:flex;justify-content:center}.lang-btn{align-items:center;background:#f8fafc;background:var(--bg-soft);border:2px solid #0000;border-radius:50%;cursor:pointer;font-size:1.5rem;height:44px;transition:all .2s;width:44px}.lang-btn.active,.lang-btn:focus,.lang-btn:hover{border-color:#0ea5e9;border-color:var(--accent)}.lang-btn.active{background:#e0f2fe;background:var(--accent-soft)}@media (max-width:380px){.category-grid{grid-template-columns:repeat(2,1fr)}.panic-button{height:140px;width:140px}.category-icon,.panic-text{font-size:2rem}}@media (min-width:640px){.emergency-home{margin:0 auto;max-width:500px}.category-grid{gap:16px;grid-template-columns:repeat(3,1fr)}.category-card{min-height:120px}.category-icon{font-size:3rem}}.photo-analysis-page{background:#fff;background:var(--bg);min-height:100vh;padding:16px}.photo-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.photo-header h1{font-size:1.5rem;margin:0}.back-btn{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;padding:8px 16px}.instructions{color:#64748b;color:var(--text-light);line-height:1.6;margin-bottom:24px;text-align:center}.capture-options{display:flex;flex-direction:column;gap:16px}.capture-btn{align-items:center;border:none;border-radius:16px;cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;gap:12px;justify-content:center;padding:20px;transition:all .2s}.capture-btn.camera{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.capture-btn.upload{background:#fff;border:2px solid #e2e8f0;color:#334155;color:var(--text)}.capture-btn:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-2px)}.btn-icon{font-size:1.5rem}.camera-view{border-radius:16px;overflow:hidden;position:relative}.camera-preview{border-radius:16px;width:100%}.shutter-btn{background:#fff;border:4px solid #e2e8f0;border-radius:50%;bottom:20px;box-shadow:0 4px 16px #0003;cursor:pointer;font-size:2rem;height:72px;left:50%;position:absolute;transform:translateX(-50%);width:72px}.preview-section{display:flex;flex-direction:column;gap:16px}.preview-image{border-radius:16px;box-shadow:0 4px 16px #0000001a;width:100%}.action-buttons{display:flex;flex-direction:column;gap:12px}.analyze-btn{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;gap:8px;justify-content:center;padding:16px}.analyze-btn:disabled{cursor:not-allowed;opacity:.7}.retry-btn{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;font-size:1rem;padding:12px}.loading-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-top-color:#fff;height:20px;width:20px}.result-section{display:flex;flex-direction:column;gap:16px}.severity-badge{border-radius:12px;color:#fff;font-size:1.125rem;font-weight:700;padding:12px 20px;text-align:center}.situation-box{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;padding:16px}.situation-box h3{color:#64748b;color:var(--text-light);font-size:.9rem;margin:0 0 8px}.situation-box p{font-size:1.125rem;margin:0}.emergency-call-btn{align-items:center;animation:pulse-emergency 2s infinite;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:12px;color:#fff;display:flex;font-size:1.25rem;font-weight:700;gap:8px;justify-content:center;padding:20px;text-decoration:none}.steps-box{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;padding:16px}.steps-box h3{color:#64748b;color:var(--text-light);font-size:.9rem;margin:0 0 12px}.assistant-btn{align-items:center;background:#0ea5e9;background:var(--accent);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:16px}.error-message{background:#fee2e2;background:var(--danger-soft);border-radius:12px;color:#b91c1c;padding:12px 16px;text-align:center}.crisis-header{margin-bottom:16px}.back-button{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:1rem;margin-bottom:12px;padding:8px 16px}.crisis-title-row{align-items:center;display:flex;gap:12px}.crisis-icon-large{font-size:2.5rem}.crisis-title-row h1{font-size:1.5rem;margin:0}.emergency-call-section{align-items:center;display:flex;gap:12px;margin-bottom:20px}.call-112-button{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:12px;box-shadow:0 4px 12px #ef444466;color:#fff;display:flex;flex:1 1;font-size:1.25rem;font-weight:700;gap:8px;justify-content:center;padding:16px 24px;text-decoration:none}.location-badge{background:#d1fae5;background:var(--success-soft);border-radius:8px;color:#059669;font-size:.875rem;font-weight:500;padding:8px 12px}.first-steps-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000d;margin-bottom:20px;padding:20px}.first-steps-section h2{color:#1e293b;color:var(--text-dark);font-size:1.125rem;margin:0 0 16px}.first-steps-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.first-step-item{align-items:flex-start;background:#f8fafc;background:var(--bg-soft);border-left:4px solid #0ea5e9;border-left:4px solid var(--accent);border-radius:12px;display:flex;gap:12px;padding:12px}.step-number{background:#0ea5e9;background:var(--accent);border-radius:50%;color:#fff;font-size:1rem;font-weight:700;height:32px;min-width:32px}.step-text{color:#1e293b;color:var(--text-dark);font-size:1.1rem;font-weight:500;line-height:1.4;padding-top:4px}.infrastructure-section{margin-top:20px}.infrastructure-section h2{color:#64748b;color:var(--text-light);font-size:1rem;font-weight:600;margin-bottom:12px}.infrastructure-buttons{display:flex;flex-wrap:wrap;gap:10px}.infrastructure-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#334155;color:var(--text);cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:500;gap:8px;justify-content:center;min-width:140px;padding:12px 16px;transition:all .2s}.infrastructure-btn:hover{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.infrastructure-btn:active{transform:scale(.98)}.infra-icon{font-size:1.25rem}.infra-label{font-weight:500}.continue-section{display:flex;flex-direction:column;gap:12px}.continue-button{align-items:center;background:#0ea5e9;background:var(--accent);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;gap:8px;justify-content:center;padding:16px}.photo-button-small{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#334155;color:var(--text);cursor:pointer;font-size:1rem;padding:12px}.sub-question{color:#64748b;color:var(--text-light);font-size:.95rem;margin:4px 0 0;text-align:center}.alternative-actions{display:flex;gap:12px;margin-bottom:24px}.alt-button{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#334155;color:var(--text);cursor:pointer;flex:1 1;font-size:.95rem;font-weight:500;padding:14px;transition:all .2s}.alt-button:hover{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.offline-banner{align-items:center;animation:slideDown .3s ease-out;display:flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;left:0;padding:12px 16px;position:fixed;right:0;top:0;z-index:9999}.offline-banner.offline{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f}.offline-banner.online{background:linear-gradient(135deg,#34d399,#10b981);color:#fff}.offline-icon{font-size:1.1rem}.install-prompt{animation:slideUp .4s ease-out;background:#fff;border-radius:16px;bottom:20px;box-shadow:0 10px 40px #00000026,0 0 0 1px #0000000d;left:20px;margin:0 auto;max-width:400px;padding:16px;position:fixed;right:20px;z-index:9998}.install-content{align-items:center;display:flex;gap:12px;margin-bottom:12px}.install-icon{font-size:2rem}.install-text strong{color:#1e293b;color:var(--text-dark);display:block;font-size:1.1rem}.install-text p{color:#64748b;color:var(--text-light);font-size:.9rem;margin:2px 0 0}.install-actions{display:flex;gap:10px}.install-btn{background:#0ea5e9;background:var(--accent);border:none;border-radius:10px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:12px 20px;transition:all .2s}.install-btn:hover{background:#0284c7;transform:translateY(-1px)}.install-dismiss{background:#0000;border:none;border-radius:10px;color:#64748b;color:var(--text-light);cursor:pointer;font-weight:500;padding:12px 16px}.install-dismiss:hover{background:#f8fafc;background:var(--bg-soft);color:#334155;color:var(--text)}.route-overlay{align-items:flex-end;animation:fadeIn .2s ease-out;background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:10000}.route-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:24px 24px 0 0;max-height:85vh;max-width:500px;overflow-y:auto;padding:24px;width:100%}.route-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:20px}.route-dest-icon{flex-shrink:0;font-size:2.5rem}.route-header h2{color:#1e293b;color:var(--text-dark);flex:1 1;font-size:1.25rem;font-weight:700;margin:0}.route-address{font-size:.9rem;margin:4px 0 0}.route-address,.route-close{color:#64748b;color:var(--text-light)}.route-close{background:#f8fafc;background:var(--bg-soft);border:none;border-radius:50%;cursor:pointer;flex-shrink:0;font-size:1.25rem;height:36px;width:36px}.route-loading{padding:40px 20px;text-align:center}.route-spinner{animation:pulse 1s ease-in-out infinite;font-size:3rem}.route-loading p{color:#64748b;color:var(--text-light);margin-top:12px}.route-error{padding:20px;text-align:center}.route-error p{color:#64748b;color:var(--text-light);margin-bottom:16px}.route-visual{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:16px;display:flex;gap:30px;justify-content:center;margin-bottom:20px;padding:24px}.route-arrow{color:#0ea5e9;color:var(--accent);font-size:4rem;transition:transform .3s ease}.route-distance{text-align:center}.distance-value{color:#1e293b;color:var(--text-dark);display:block;font-size:2rem;font-weight:800}.distance-time{color:#64748b;color:var(--text-light);display:block;font-size:1.1rem;margin-top:4px}.route-direction{align-items:center;background:#f8fafc;background:var(--bg-soft);border-radius:12px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.direction-arrow{font-size:2rem}.direction-text{color:#1e293b;color:var(--text-dark);font-size:1.1rem;font-weight:600}.route-steps{justify-content:space-between;margin-bottom:20px;padding:16px 0}.route-steps,.step-visual{align-items:center;display:flex}.step-visual{flex-direction:column;gap:6px}.step-visual .step-icon{align-items:center;background:#f8fafc;background:var(--bg-soft);border-radius:50%;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.step-visual.destination .step-icon{background:#d1fae5;background:var(--success-soft)}.step-visual .step-label{color:#64748b;color:var(--text-light);font-size:.85rem;font-weight:500;max-width:80px;text-align:center}.step-line{align-items:center;color:#0ea5e9;color:var(--accent);display:flex;flex:1 1;font-size:1.5rem;justify-content:center;position:relative}.step-line:before{background:linear-gradient(90deg,#f8fafc,#0ea5e9,#10b981);background:linear-gradient(90deg,var(--bg-soft),var(--accent),var(--success));border-radius:2px;content:"";height:3px;left:10px;position:absolute;right:10px;top:50%;z-index:-1}.route-actions{display:flex;gap:12px}.route-open-maps{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-size:1.1rem;font-weight:600;gap:8px;justify-content:center;padding:16px;transition:all .2s}.route-open-maps.primary{background:#10b981;background:var(--success);color:#fff}.route-open-maps.primary:hover{background:#059669;transform:translateY(-2px)}.route-open-maps:not(.primary){color:#334155;color:var(--text)}.mode-toggle,.route-open-maps:not(.primary){background:#f8fafc;background:var(--bg-soft)}.mode-toggle{border-radius:12px;display:flex;margin-bottom:16px;padding:4px}.mode-btn{align-items:center;background:#0000;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:2px;padding:10px 8px;transition:all .2s}.mode-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a}.mode-btn .mode-icon{font-size:1.5rem}.mode-btn .mode-label{color:#64748b;color:var(--text-light);font-size:.75rem;font-weight:600}.mode-btn.active .mode-label{color:#1e293b;color:var(--text-dark)}.simple-steps-container{background:linear-gradient(180deg,#f0f9ff,#fff);display:flex;flex-direction:column;min-height:calc(100vh - 60px);padding:20px}.simple-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.simple-crisis-icon{font-size:2rem}.simple-crisis-title{color:#1e293b;color:var(--text-dark);font-size:1.25rem;font-weight:700}.simple-progress{display:flex;gap:8px;justify-content:center;margin-bottom:24px}.progress-dot{background:#e2e8f0;border-radius:50%;height:12px;transition:all .3s;width:12px}.progress-dot.active{background:#0ea5e9;background:var(--accent);transform:scale(1.3)}.progress-dot.done{background:#10b981;background:var(--success)}.simple-step-display{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.step-icon-large{filter:drop-shadow(0 8px 16px rgba(0,0,0,.1));font-size:8rem;margin-bottom:24px}.step-text-large{color:#1e293b;color:var(--text-dark);font-size:2.5rem;font-weight:900;letter-spacing:-.02em;line-height:1.2}.animate-bounce{animation:stepBounce .6s ease-out}.animate-fade{animation:stepFade .5s ease-out}@keyframes stepBounce{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes stepFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.speak-button{align-items:center;background:#fff;border:2px solid #0ea5e9;border:2px solid var(--accent);border-radius:50px;color:#0ea5e9;color:var(--accent);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;margin:0 auto 24px;padding:12px 24px;transition:all .2s}.speak-button:hover{background:#0ea5e9;background:var(--accent);color:#fff}.speak-button:active{transform:scale(.95)}.simple-nav{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.nav-btn{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 20px;transition:all .2s}.nav-btn.prev{background:#f8fafc;background:var(--bg-soft);color:#334155;color:var(--text)}.nav-btn.next{background:#0ea5e9;background:var(--accent);color:#fff}.nav-btn:hover{transform:translateY(-2px)}.nav-btn:active{transform:translateY(0)}.step-counter{color:#64748b;color:var(--text-light);font-size:1rem;font-weight:600}.simple-emergency-btn{background:#dc2626;border-radius:12px;color:#fff;display:block;font-size:1.25rem;font-weight:700;margin-top:auto;padding:18px;text-align:center;text-decoration:none}.simple-emergency-btn:hover{background:#b91c1c}.cpr-overlay{align-items:center;background:#000c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:10001}.cpr-modal{background:#fff;border-radius:20px;max-width:400px;padding:24px;text-align:center;width:100%}.cpr-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.cpr-header h2{font-size:1.25rem;font-weight:700;margin:0}.cpr-close{border:none;border-radius:50%;color:#64748b;color:var(--text-light);cursor:pointer;font-size:1.25rem;height:36px;width:36px}.cpr-close,.cpr-instructions{background:#f8fafc;background:var(--bg-soft)}.cpr-instructions{border-radius:12px;margin-bottom:20px;padding:16px}.cpr-instructions p{color:#334155;color:var(--text);margin:4px 0}.cpr-instructions .cpr-detail{color:#64748b;color:var(--text-light);font-size:.9rem}.cpr-display{align-items:center;border-radius:20px;display:flex;flex-direction:column;justify-content:center;margin-bottom:16px;padding:40px 20px;transition:all .1s}.cpr-display.ready{background:#f8fafc;background:var(--bg-soft)}.cpr-display.compressions{background:linear-gradient(135deg,#fee2e2,#fecaca)}.cpr-display.breaths{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.cpr-display.beat{transform:scale(1.02)}.cpr-display.beat.compressions{box-shadow:0 0 40px #dc26264d}.cpr-display.beat.breaths{box-shadow:0 0 40px #3b82f64d}.cpr-icon{font-size:4rem;margin-bottom:8px}.cpr-count{font-size:5rem;font-weight:900;line-height:1}.cpr-count,.cpr-text{color:#1e293b;color:var(--text-dark)}.cpr-text{font-size:1.5rem;font-weight:700;margin-top:8px}.cpr-progress{background:#e2e8f0;border-radius:4px;height:8px;margin-bottom:12px;overflow:hidden}.cpr-progress-bar{background:linear-gradient(90deg,#dc2626,#ef4444);border-radius:4px;height:100%;transition:width .2s}.cpr-display.breaths+.cpr-progress .cpr-progress-bar{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.cpr-cycles{color:#64748b;color:var(--text-light);font-size:1rem;font-weight:600}.cpr-controls,.cpr-cycles{margin-bottom:16px}.cpr-start,.cpr-stop{border:none;border-radius:12px;cursor:pointer;font-size:1.5rem;font-weight:700;padding:18px;transition:all .2s;width:100%}.cpr-start{background:#22c55e;color:#fff}.cpr-start:hover{background:#16a34a}.cpr-stop{background:#dc2626;color:#fff}.cpr-stop:hover{background:#b91c1c}.cpr-emergency{background:#f8fafc;background:var(--bg-soft);border-radius:10px;color:#dc2626;display:block;font-weight:600;margin-bottom:12px;padding:12px;text-decoration:none}.cpr-reminder{color:#64748b;color:var(--text-light);font-size:.9rem;margin:0}.cpr-section{margin-bottom:20px}.cpr-trigger-btn{align-items:center;animation:pulse-subtle 2s ease-in-out infinite;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:700;gap:8px;justify-content:center;padding:16px;transition:all .2s;width:100%}.cpr-trigger-btn:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-2px)}@keyframes pulse-subtle{0%,to{box-shadow:0 0 0 0 #dc262666}50%{box-shadow:0 0 0 8px #dc262600}}.emergency-prep-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.emergency-prep-modal{background:var(--bg-white);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:85vh;max-width:480px;overflow-y:auto;padding:24px;width:100%}.emergency-prep-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.emergency-prep-header h2{color:#dc2626;font-size:1.3rem;margin:0}.emergency-prep-close{background:none;border:none;color:#64748b;color:var(--text-light);cursor:pointer;font-size:1.5rem;padding:4px 8px}.emergency-prep-subtitle{color:#64748b;color:var(--text-light);font-size:.9rem;margin:0 0 16px}.emergency-prep-5w{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:.85rem;margin-bottom:16px;padding:12px 16px}.emergency-prep-5w strong{color:#dc2626}.emergency-prep-5w ol{margin:8px 0 0;padding-left:20px}.emergency-prep-5w li{margin-bottom:2px}.emergency-prep-section{margin-bottom:14px}.emergency-prep-section label{color:#1e293b;color:var(--text-dark);display:block;font-size:.85rem;font-weight:600;margin-bottom:6px}.emergency-prep-location{background:#f8fafc;background:var(--bg-soft);border-radius:8px;font-size:.85rem;padding:8px 12px}.location-ready{color:#16a34a}.location-pending{color:#64748b;color:var(--text-light)}.emergency-prep-input{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;box-sizing:border-box;font-size:.95rem;padding:10px 12px;width:100%}.emergency-prep-triage{border:2px solid;border-radius:10px;margin-bottom:14px;padding:12px}.emergency-prep-triage ul{font-size:.85rem;margin:8px 0 0;padding-left:18px}.emergency-prep-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr 1fr;margin-bottom:14px}.emergency-prep-field label{display:block;font-size:.75rem;font-weight:600;margin-bottom:4px}.emergency-prep-field select{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:6px;padding:6px;width:100%}.emergency-prep-buttons{display:flex;gap:4px}.emergency-prep-buttons button{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:6px;cursor:pointer;flex:1 1;font-size:.75rem;padding:6px}.emergency-prep-buttons button.active{background:#dc2626;border-color:#dc2626;color:#fff}.emergency-prep-profile{margin-bottom:14px}.emergency-prep-profile label{display:block;font-size:.85rem;font-weight:600;margin-bottom:6px}.emergency-prep-badges{display:flex;flex-wrap:wrap;gap:6px}.emergency-prep-badges .badge{background:#f8fafc;background:var(--bg-soft);border-radius:6px;font-size:.8rem;padding:4px 8px}.emergency-prep-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px}.emergency-prep-call{animation:pulse-subtle 2s ease-in-out infinite;background:#dc2626;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1.3rem;font-weight:700;padding:16px;text-align:center}.emergency-prep-copy{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:.9rem;padding:10px;text-align:center}.profile-page{margin:0 auto;max-width:600px;padding:20px}.profile-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.profile-header h1{color:#1e293b;color:var(--text-dark);font-size:1.5rem;font-weight:700;margin:0}.profile-section{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);margin-bottom:20px;padding:20px}.profile-section h2{color:#1e293b;color:var(--text-dark);font-size:1.25rem;font-weight:700;margin:0 0 16px}.contact-list{margin-bottom:20px}.no-contacts{color:#64748b;color:var(--text-light);padding:20px;text-align:center}.contact-card{align-items:center;background:#f8fafc;background:var(--bg-soft);border-radius:12px;display:flex;justify-content:space-between;margin-bottom:10px;padding:12px}.contact-info{display:flex;flex-direction:column}.contact-name{color:#1e293b;color:var(--text-dark)}.contact-relation{color:#64748b;color:var(--text-light);font-size:.85rem}.contact-phone{color:#0ea5e9;color:var(--accent);font-size:.9rem}.contact-call-btn,.contact-delete-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:1.25rem;height:40px;justify-content:center;width:40px}.contact-call-btn{background:#10b981;background:var(--success);color:#fff}.add-contact-form,.contact-delete-btn{background:#f8fafc;background:var(--bg-soft)}.add-contact-form{border-radius:12px;margin-bottom:16px;padding:16px}.add-contact-form h3{font-size:1rem;font-weight:600;margin:0 0 12px}.add-contact-form input{border:2px solid #e2e8f0;border-radius:10px;box-sizing:border-box;font-size:1rem;margin-bottom:10px;padding:12px;width:100%}.add-contact-form input:focus{border-color:#0ea5e9;border-color:var(--accent);outline:none}.add-btn{background:#0ea5e9;background:var(--accent);border:none;border-radius:10px;font-size:1rem;font-weight:600;padding:14px}.add-btn,.sos-btn{color:#fff;cursor:pointer;width:100%}.sos-btn{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:12px;display:flex;flex-direction:column;font-size:1.25rem;font-weight:700;gap:4px;padding:18px}.sos-btn .sos-description{font-size:.85rem;font-weight:400;opacity:.9}.medical-section h2{margin-bottom:20px}.medical-form{gap:16px}.medical-form,.medical-form label{display:flex;flex-direction:column}.medical-form label{gap:6px}.medical-form label span{color:#334155;color:var(--text);font-weight:600}.medical-form select,.medical-form textarea{border:2px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:1rem;padding:12px}.medical-form textarea{min-height:80px;resize:vertical}.medical-form select:focus,.medical-form textarea:focus{border-color:#0ea5e9;border-color:var(--accent);outline:none}.medical-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:16px;margin-top:20px;padding:20px}.medical-card h3{color:#78350f;font-size:1.1rem;font-weight:700;margin:0 0 12px}.medical-row{color:#78350f;font-size:.95rem;margin-bottom:8px}.blood-type-badge{background:#dc2626;border-radius:8px;color:#fff;display:inline-block;font-size:1.5rem;font-weight:800;padding:8px 16px}.dgs-mode{background:linear-gradient(180deg,#1e1b4b,#312e81);min-height:100vh}.dgs-mode .crisis-header{color:#fff}.dgs-mode .back-button{border-color:#c7d2fe4d;color:#c7d2fe}.dgs-placeholder{color:#fff;padding:20px;text-align:center}.dgs-icon-large{animation:dgsWave 2s ease-in-out infinite;font-size:6rem;margin-bottom:16px}@keyframes dgsWave{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}.dgs-placeholder h2{color:#fff;font-size:2rem;font-weight:800;margin:0 0 12px}.dgs-coming-soon{color:#a5b4fc;font-size:1.2rem;font-weight:600;margin:0 0 24px}.dgs-info-box{background:#ffffff1a;border:2px solid #fff3;border-radius:16px;margin:0 0 24px;padding:16px 20px}.dgs-info-box p{color:#e0e7ff;font-size:.95rem;line-height:1.6;margin:0}.dgs-steps-fallback{background:#ffffff1a;border-radius:16px;margin:0 0 24px;padding:20px;text-align:left}.dgs-steps-fallback h3{color:#a5b4fc;font-size:1.1rem;font-weight:700;margin:0 0 16px}.dgs-steps-fallback .first-steps-list{background:#0000;padding:0}.dgs-steps-fallback .first-step-item{background:#ffffff0d;border-color:#ffffff1a}.dgs-steps-fallback .step-number{background:#6366f1;color:#fff}.dgs-steps-fallback .step-text{color:#fff}.dgs-video-placeholder{margin:24px 0}.video-preview{align-items:center;background:#0000004d;border:3px dashed #ffffff4d;border-radius:20px;color:#a5b4fc;display:flex;flex-direction:column;font-size:1rem;font-weight:500;gap:16px;justify-content:center;padding:40px 20px}.video-icon{font-size:4rem;opacity:.6}.dgs-mode .continue-section{padding-bottom:100px}.dgs-mode .continue-button{background:#4f46e5;border-color:#6366f1}.voice-input-container{flex-direction:column;margin:16px 0;padding:16px}.voice-input-btn,.voice-input-container{align-items:center;display:flex;gap:12px}.voice-input-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:50px;box-shadow:0 4px 15px #6366f166;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;justify-content:center;padding:16px 32px;transition:all .3s ease}.voice-input-btn:hover{box-shadow:0 6px 20px #6366f180;transform:scale(1.05)}.voice-input-btn.listening{animation:voicePulse 1.5s ease-in-out infinite;background:linear-gradient(135deg,#dc2626,#ef4444);box-shadow:0 4px 15px #dc262680}@keyframes voicePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.voice-icon{font-size:1.5rem}.voice-hint{color:#64748b;font-size:.9rem;margin:0;text-align:center}.voice-transcript{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:12px 20px}.transcript-text{color:#334155;font-size:1rem;font-style:italic}.voice-detected{align-items:center;animation:detectPop .4s ease-out;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:2px solid #22c55e;border-radius:16px;display:flex;flex-direction:column;gap:4px;padding:16px 24px}@keyframes detectPop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.detected-label{color:#15803d;font-size:.85rem;font-weight:600}.detected-crisis{color:#166534;font-size:1.3rem;font-weight:800}.voice-input-unavailable{align-items:center;background:#f1f5f9;border-radius:12px;color:#64748b;display:flex;font-size:.9rem;gap:8px;padding:12px 20px}.warning-banner-container{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding:0 16px}.warning-banner{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-left:5px solid #dc2626;border-radius:16px;box-shadow:0 2px 8px #0000001a;padding:16px}.warning-banner.severity-extreme{background:linear-gradient(135deg,#450a0a,#7f1d1d);color:#fff}.warning-banner.severity-severe{background:linear-gradient(135deg,#fef2f2,#fecaca)}.warning-banner.severity-moderate{background:linear-gradient(135deg,#fff7ed,#fed7aa);border-left-color:#ea580c}.warning-banner.severity-minor{background:linear-gradient(135deg,#fefce8,#fef08a);border-left-color:#ca8a04}.warning-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:8px}.warning-icon{flex-shrink:0;font-size:1.8rem}.warning-title{flex:1 1}.warning-label{color:#991b1b;display:block;font-size:.75rem;font-weight:700;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.severity-extreme .warning-label{color:#fca5a5}.warning-headline{color:#7f1d1d;font-size:1.1rem;font-weight:700;margin:0}.severity-extreme .warning-headline{color:#fff}.warning-dismiss{background:none;border:none;color:#991b1b;cursor:pointer;font-size:1.2rem;opacity:.7;padding:4px}.warning-dismiss:hover{opacity:1}.warning-description{color:#7f1d1d;font-size:.95rem;line-height:1.5;margin:0 0 12px}.severity-extreme .warning-description{color:#fecaca}.warning-details{border-top:1px solid #0000001a;padding-top:12px}.warning-instruction{margin-bottom:12px}.warning-instruction strong{color:#991b1b;display:block;font-size:.85rem;margin-bottom:4px}.warning-instruction p{color:#7f1d1d;font-size:.9rem;margin:0}.warning-meta{color:#991b1b;display:flex;flex-wrap:wrap;font-size:.8rem;gap:16px}.warning-expand{background:none;border:none;color:#991b1b;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 0;text-decoration:underline}.quiz-container{background:linear-gradient(180deg,#1e1b4b,#312e81);color:#fff;display:flex;flex-direction:column;inset:0;overflow-y:auto;padding:20px;position:fixed;z-index:1000}.quiz-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.quiz-header h2{font-size:1.5rem;font-weight:800;margin:0}.quiz-progress{flex:1 1;margin:0 20px;max-width:200px}.quiz-progress span{color:#a5b4fc;display:block;font-size:.85rem;margin-bottom:6px;text-align:center}.progress-bar{background:#fff3;border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#22c55e,#4ade80);height:100%;transition:width .3s ease}.quiz-close{background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5rem;height:40px;width:40px}.quiz-question{margin-bottom:32px;text-align:center}.question-icon{display:block;font-size:4rem;margin-bottom:16px}.question-text{font-size:1.4rem;font-weight:700;line-height:1.4;margin:0}.quiz-options{gap:12px;margin-bottom:24px}.quiz-option{background:#ffffff1a;border:2px solid #fff3;border-radius:16px;color:#fff;font-size:1.1rem;font-weight:600;gap:16px;padding:16px 20px}.quiz-option:hover:not(:disabled){background:#fff3;border-color:#fff6}.quiz-option.correct{background:#22c55e4d;border-color:#22c55e}.quiz-option.incorrect{background:#ef44444d;border-color:#ef4444}.option-letter{background:#fff3;font-weight:800;height:36px;width:36px}.option-check{color:#22c55e;font-size:1.5rem}.quiz-feedback{animation:feedbackSlide .3s ease-out;border-radius:16px;margin-bottom:24px;padding:20px;text-align:center}@keyframes feedbackSlide{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.quiz-feedback.correct{background:linear-gradient(135deg,#22c55e33,#4ade8033);border:2px solid #22c55e}.quiz-feedback.incorrect{background:linear-gradient(135deg,#ef444433,#f8717133);border:2px solid #ef4444}.feedback-status{font-size:1.3rem;font-weight:800;margin:0 0 12px}.feedback-explanation{color:#e0e7ff;font-size:1rem;line-height:1.5;margin:0 0 20px}.quiz-btn{border-radius:50px;font-size:1.1rem;font-weight:700;padding:14px 32px;transition:all .2s}.quiz-btn.primary{background:linear-gradient(135deg,#22c55e,#16a34a)}.quiz-btn.primary:hover{transform:scale(1.05)}.quiz-btn.secondary{background:#ffffff1a;border:2px solid #ffffff4d;color:#fff}.quiz-score{color:#a5b4fc;font-size:1rem;margin-top:auto;padding-top:20px;text-align:center}.quiz-results{align-items:center;flex:1 1;flex-direction:column;padding:40px 20px;text-align:center}.quiz-results,.results-score{display:flex;justify-content:center}.results-score{align-items:baseline;gap:8px;margin-bottom:24px}.score-number{color:#22c55e;font-size:5rem;font-weight:900}.score-divider,.score-total{color:#a5b4fc;font-size:3rem}.score-total{font-weight:700}.results-message{font-size:1.4rem;font-weight:700;line-height:1.4;margin:0 0 32px}.quiz-badge{align-items:center;animation:badgePop .5s ease-out;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:20px;display:flex;flex-direction:column;gap:8px;margin-bottom:32px;padding:24px 40px}@keyframes badgePop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.badge-icon{font-size:4rem}.badge-text{color:#78350f;font-size:1.2rem;font-weight:800}.results-actions{display:flex;flex-direction:column;gap:12px;max-width:300px;width:100%}.quick-actions-bar{-webkit-overflow-scrolling:touch;display:flex;gap:8px;overflow-x:auto;padding:12px 16px}.quick-action-btn{border-radius:12px;padding:12px 16px;transition:all .2s;white-space:nowrap}.quick-action-btn:hover{background:#fef2f2;border-color:#0ea5e9;border-color:var(--accent)}.quick-action-btn .action-icon{font-size:1.5rem}.quick-action-btn .action-label{color:#475569;font-size:.75rem;font-weight:600}.silent-sos-overlay{align-items:center;animation:sosFlash .5s ease-in-out infinite alternate;background:#7f1d1df2;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}@keyframes sosFlash{0%{background-color:#7f1d1df2}to{background-color:#b91c1cf2}}.sos-alert{color:#fff;padding:40px;text-align:center}.sos-icon-pulse{animation:sosPulse .5s ease-in-out infinite;font-size:6rem}@keyframes sosPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.sos-alert h2{font-size:2rem;font-weight:900;margin:20px 0 10px}.sos-countdown{font-size:1.5rem;margin-bottom:30px}.countdown-number{display:block;font-size:4rem;font-weight:900;margin-top:10px}.sos-cancel-btn{background:#fff;border:none;border-radius:50px;color:#991b1b;cursor:pointer;font-size:1.2rem;font-weight:700;padding:16px 40px}.silent-sos-setup{background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000026;margin:16px;padding:24px}.setup-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.setup-header h3{font-size:1.2rem;font-weight:700;margin:0}.setup-description{color:#64748b;font-size:.9rem;line-height:1.5;margin:0 0 20px}.setup-toggle{align-items:center;background:#f8fafc;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px}.toggle-btn{background:#fff;border:2px solid #e2e8f0;border-radius:20px;cursor:pointer;font-weight:600;padding:10px 20px}.toggle-btn.enabled{background:#dc2626;border-color:#dc2626;color:#fff}.setup-instructions{margin-bottom:20px}.setup-instructions h4{color:#64748b;font-size:.9rem;margin:0 0 12px}.instruction-item{align-items:center;background:#fef2f2;border-radius:10px;display:flex;gap:12px;margin-bottom:8px;padding:12px}.instruction-icon{font-size:1.5rem}.shake-indicator{background:#fef3c7;border-radius:10px;color:#92400e;font-weight:600;margin-bottom:16px;padding:12px;text-align:center}.test-btn{background:#f1f5f9;font-weight:600;padding:14px;width:100%}.silent-sos-trigger,.test-btn{border:2px solid #e2e8f0;border-radius:12px;cursor:pointer}.silent-sos-trigger{align-items:center;background:#fff;display:flex;gap:8px;padding:10px 16px;position:relative}.trigger-active{color:#22c55e;font-size:.8rem}.aed-finder-modal{background:#fff;inset:0;overflow-y:auto;position:fixed;z-index:1000}.aed-finder-content{margin:0 auto;max-width:500px;padding:20px}.aed-header{align-items:center;display:flex;gap:16px;margin-bottom:20px}.aed-header h2{font-size:1.2rem;font-weight:700;margin:0}.aed-critical-banner{align-items:center;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:2px solid #dc2626;border-radius:12px;display:flex;gap:8px;justify-content:center;margin-bottom:20px;padding:12px}.critical-icon{animation:criticalPulse 1s ease-in-out infinite;font-size:1.5rem}@keyframes criticalPulse{0%,to{opacity:1}50%{opacity:.5}}.critical-text{color:#991b1b;font-size:1rem;font-weight:800}.aed-loading{padding:60px 20px;text-align:center}.loading-spinner{font-size:3rem}.aed-featured{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:3px solid #22c55e;border-radius:20px;margin-bottom:20px;padding:24px;text-align:center}.featured-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.featured-label{color:#166534;font-size:.85rem;font-weight:600;text-transform:uppercase}.featured-distance{color:#166534;font-size:1.5rem;font-weight:800}.featured-direction{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:12px}.direction-arrow{font-size:3rem}.direction-text{color:#166534;font-size:1.3rem;font-weight:700}.featured-time{color:#15803d;font-size:1.1rem;margin-bottom:12px}.featured-location{color:#166534;font-size:.9rem;margin:0 0 12px}.featured-access{font-size:.85rem;font-weight:600;margin-bottom:16px}.navigate-btn{align-items:center;background:#22c55e;border:none;border-radius:50px;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:700;gap:8px;padding:14px 28px}.aed-list{margin-top:20px}.aed-list h3{color:#64748b;font-size:.9rem;margin:0 0 12px}.aed-item{align-items:center;background:#f8fafc;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:8px;padding:14px}.aed-item-info{display:flex;gap:12px}.aed-item-distance{color:#334155;font-weight:700}.aed-item-direction{color:#64748b}.aed-item-nav{background:#e0f2fe;border:none;border-radius:8px;cursor:pointer;padding:8px 12px}.aed-empty{padding:60px 20px;text-align:center}.empty-icon{display:block;font-size:4rem;margin-bottom:16px}.call-112-btn{background:#dc2626;border-radius:50px;color:#fff;display:inline-block;font-weight:700;margin-top:20px;padding:14px 28px;text-decoration:none}.live-location-modal{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.live-location-content{background:#fff;border-radius:24px;max-height:90vh;max-width:400px;overflow-y:auto;padding:24px;width:100%}.live-location-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.live-location-header h2{font-size:1.3rem;font-weight:700;margin:0}.live-location-start .description{color:#64748b;line-height:1.6;margin:0 0 20px}.contacts-preview{margin-bottom:20px}.contacts-preview p{color:#64748b;font-size:.85rem;margin:0 0 8px}.contact-chip{background:#f1f5f9;border-radius:20px;display:inline-block;font-size:.85rem;margin-bottom:6px;margin-right:6px;padding:6px 12px}.start-sharing-btn{align-items:center;background:linear-gradient(135deg,#dc2626,#ef4444);border:none;border-radius:16px;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:12px;justify-content:center;padding:16px;width:100%}.btn-icon{animation:recordPulse 1.5s ease-in-out infinite;font-size:1.3rem}@keyframes recordPulse{0%,to{opacity:1}50%{opacity:.5}}.live-location-active{text-align:center}.sharing-indicator{height:100px;margin:0 auto 20px;position:relative;width:100px}.pulse-ring{animation:pulseRing 1.5s ease-out infinite;border:3px solid #dc2626;border-radius:50%;inset:0;position:absolute}@keyframes pulseRing{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}.pulse-dot{align-items:center;display:flex;font-size:3rem;inset:0;justify-content:center;position:absolute}.sharing-status{color:#dc2626;font-size:1rem;font-weight:600;margin:0 0 16px}.sharing-timer{margin-bottom:16px}.timer-label{color:#64748b;display:block;font-size:.85rem;margin-bottom:4px}.timer-value{font-feature-settings:"tnum";color:#dc2626;font-size:2.5rem;font-variant-numeric:tabular-nums;font-weight:800}.current-coords{margin-bottom:20px}.current-coords code{background:#f1f5f9;border-radius:8px;color:#64748b;font-size:.8rem;padding:6px 12px}.share-buttons{display:flex;gap:12px;justify-content:center;margin-bottom:20px}.share-btn{border:none;border-radius:10px;cursor:pointer;font-weight:600;padding:10px 20px}.share-btn.copy{background:#f1f5f9;color:#334155}.contact-share-list{margin-bottom:20px;text-align:left}.share-via-label{color:#64748b;font-size:.85rem;margin:0 0 12px}.contact-share-item{align-items:center;background:#f8fafc;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px}.contact-name{font-weight:600}.contact-actions{display:flex;gap:8px}.contact-sms-btn,.contact-wa-btn{border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 12px}.contact-sms-btn{background:#e0f2fe;color:#0369a1}.contact-wa-btn{background:#dcfce7;color:#166534}.stop-sharing-btn{background:#f1f5f9;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;font-weight:600;padding:14px;width:100%}.heart-rate-modal{align-items:center;background:linear-gradient(180deg,#fef2f2,#fee2e2);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.heart-rate-content{background:#fff;border-radius:24px;box-shadow:0 10px 40px #0000001a;max-width:350px;padding:24px;width:100%}.hr-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.hr-header h2{font-size:1.2rem;font-weight:700;margin:0}.hr-error,.hr-idle,.hr-measuring,.hr-result{text-align:center}.hr-icon-container{margin-bottom:20px}.hr-icon{display:block;font-size:5rem}.hr-instructions{color:#64748b;line-height:1.5;margin:0 0 24px}.hr-start-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:16px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:16px;width:100%}.hr-visual{margin-bottom:20px}.finger-indicator{align-items:center;display:flex;font-size:3rem;gap:8px;justify-content:center}.hr-status{color:#dc2626;font-size:1rem;font-weight:600;margin:0 0 20px}.hr-progress-container{height:120px;margin:0 auto 20px;position:relative;width:120px}.hr-progress-ring{transform:rotate(-90deg)}.progress-bg{fill:none;stroke:#fee2e2;stroke-width:8}.hr-progress-ring .progress-fill{fill:none;stroke:#dc2626;stroke-width:8;stroke-linecap:round;transition:stroke-dasharray .3s}.progress-text{color:#dc2626;font-size:1.5rem;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.signal-quality{align-items:center;color:#64748b;display:flex;font-size:.85rem;gap:8px;justify-content:center;margin-bottom:20px}.quality-dot{background:#22c55e;border-radius:50%;height:10px;width:10px}.quality-fair .quality-dot{background:#f59e0b}.quality-poor .quality-dot{background:#ef4444}.ios-hint{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;color:#92400e;display:flex;font-size:.85rem;gap:6px;justify-content:center;margin-bottom:16px;padding:8px 16px}.ios-hint-icon{font-size:1rem}.hr-stop-btn{background:#f1f5f9;border:none;border-radius:10px;cursor:pointer;font-weight:600;padding:12px 24px}.bpm-display{align-items:center;animation:bpmPop .5s ease-out;border:6px solid #22c55e;border-radius:50%;display:flex;flex-direction:column;height:150px;justify-content:center;margin:0 auto 20px;width:150px}@keyframes bpmPop{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.bpm-value{color:#1f2937;font-size:3rem;font-weight:900}.bpm-label{color:#64748b;font-size:.9rem;font-weight:600}.bpm-status{font-size:1.2rem;font-weight:700;margin-bottom:20px}.hr-warning{background:#fef3c7;border:2px solid #f59e0b;border-radius:12px;margin-bottom:20px;padding:16px}.hr-warning .warning-icon{font-size:1.5rem}.hr-warning span{color:#92400e;display:block;font-weight:700;margin-top:4px}.warning-hint{color:#92400e;font-size:.85rem;margin:8px 0 0}.hr-actions{display:flex;gap:12px}.hr-retry-btn{background:#f1f5f9}.hr-done-btn,.hr-retry-btn{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-weight:600;padding:14px}.hr-done-btn{background:#22c55e;color:#fff}.hr-error{padding:40px 20px}.error-icon{display:block;font-size:4rem;margin-bottom:16px}.aed-trigger-btn{align-items:center;background:linear-gradient(135deg,#f43f5e,#e11d48);border:none;border-radius:12px;box-shadow:0 4px 12px #f43f5e4d;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:8px;justify-content:center;margin-top:12px;padding:16px;transition:all .2s ease;width:100%}.aed-trigger-btn:hover{box-shadow:0 6px 16px #f43f5e66;transform:translateY(-2px)}.aed-trigger-btn:active{transform:translateY(0)}.live-location-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;box-shadow:0 4px 12px #3b82f64d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:12px;padding:14px;transition:all .2s ease;width:100%}.live-location-btn:hover{box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.cpr-section{display:flex;flex-direction:column;gap:12px;margin:16px 0}.offline-videos-modal{align-items:flex-end;background:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.offline-videos-content{background:#fff;border-radius:24px 24px 0 0;max-height:90vh;max-width:500px;overflow-y:auto;padding:20px;width:100%}.ov-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.ov-header h2{flex:1 1;font-size:1.3rem;margin:0}.ov-description{color:#64748b;font-size:.9rem;margin-bottom:20px}.download-all-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:24px;padding:14px;width:100%}.video-category{margin-bottom:20px}.category-title{color:#64748b;font-size:.85rem;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.video-list{display:flex;flex-direction:column;gap:8px}.video-item{background:#f8fafc;border-radius:12px;justify-content:space-between;padding:12px}.video-item,.video-item-info{align-items:center;display:flex;gap:12px}.video-item-info{flex:1 1}.video-icon{font-size:1.5rem}.video-details{display:flex;flex-direction:column}.video-title{font-size:.95rem;font-weight:600}.video-meta{color:#64748b;font-size:.8rem}.video-actions{align-items:center;display:flex;gap:8px}.downloaded-badge{color:#22c55e;font-weight:700}.play-btn{background:#22c55e;color:#fff}.download-btn,.play-btn{border:none;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 12px}.download-btn{background:#e2e8f0;color:#1f2937}.video-player-placeholder{align-items:center;aspect-ratio:16/9;background:#1f2937;border-radius:16px;display:flex;justify-content:center;margin-bottom:16px}.placeholder-content{color:#fff;text-align:center}.placeholder-icon{display:block;font-size:4rem;margin-bottom:12px}.placeholder-text{color:#94a3b8;font-size:.9rem}.video-info{color:#64748b;text-align:center}.offline-status{background:#dcfce7;border-radius:12px;color:#166534;font-weight:600;margin-top:20px;padding:12px;text-align:center}.push-notifications-modal{align-items:flex-end;background:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.push-notifications-content{background:#fff;border-radius:24px 24px 0 0;max-height:90vh;max-width:500px;overflow-y:auto;padding:20px;width:100%}.pn-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.pn-header h2{flex:1 1;font-size:1.3rem;margin:0}.pn-description{color:#64748b;font-size:.9rem;margin-bottom:20px}.pn-not-supported{padding:40px 20px;text-align:center}.not-supported-icon{display:block;font-size:4rem;margin-bottom:16px}.permission-status{align-items:center;border-radius:12px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.permission-status.denied{background:#fef2f2;color:#991b1b}.permission-status.granted{background:#dcfce7;color:#166534}.permission-status.default{background:#f1f5f9;justify-content:center}.status-icon{font-size:1.5rem}.request-permission-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:16px;width:100%}.settings-title{color:#64748b;font-size:.9rem;font-weight:700;margin-bottom:16px;text-transform:uppercase}.notification-toggles{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.toggle-item{align-items:center;background:#f8fafc;border-radius:12px;display:flex;gap:12px;justify-content:space-between;padding:16px}.toggle-info{align-items:flex-start;display:flex;flex:1 1;gap:12px}.toggle-icon{font-size:1.5rem}.toggle-info>div{display:flex;flex-direction:column}.toggle-label{font-size:.95rem;font-weight:600}.toggle-description{color:#64748b;font-size:.8rem;margin-top:2px}.toggle-switch{background:#cbd5e1;border:none;border-radius:14px;cursor:pointer;flex-shrink:0;height:28px;position:relative;transition:background .2s ease;width:52px}.toggle-switch.active{background:#22c55e}.toggle-knob{background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;height:24px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:24px}.toggle-switch.active .toggle-knob{transform:translateX(24px)}.test-notification-btn{background:#f1f5f9;border:2px dashed #cbd5e1;border-radius:12px;color:#64748b;cursor:pointer;font-size:1rem;font-weight:600;padding:14px;width:100%}.settings-section{margin-top:24px}.settings-buttons{display:flex;flex-direction:column;gap:12px}.setting-btn{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;padding:16px;text-align:left;transition:all .2s ease;width:100%}.setting-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.emergency-home-clean{background:#fff;display:flex;flex-direction:column;min-height:100vh;padding-bottom:140px}.hero-emergency{align-items:center;background:linear-gradient(180deg,#f8fafc,#fff);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:16px;padding:32px 20px 24px}.hero-call-btn{background:#dc2626;border:none;border-radius:50%;box-shadow:0 4px 16px #dc262640;cursor:pointer;height:120px;transition:all .2s ease;width:120px}@keyframes pulse-gentle{0%,to{box-shadow:0 8px 32px #dc262666,0 0 0 8px #ef444426,inset 0 -4px 12px #0003}50%{box-shadow:0 8px 32px #dc262680,0 0 0 12px #ef44441a,inset 0 -4px 12px #0003}}.hero-call-btn:hover{transform:scale(1.05)}.hero-call-btn:active{transform:scale(.98)}.hero-call-inner{align-items:center;display:flex;flex-direction:column;gap:2px}.hero-112{color:#fff;font-size:3rem;font-weight:900;line-height:1;text-shadow:0 2px 4px #0003}.hero-label{color:#fffffff2;font-size:.9rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}.hero-location{align-items:center;color:#10b981;color:var(--success);display:flex;font-size:.85rem;font-weight:600;gap:8px}.location-dot{animation:blink 1.5s infinite;background:#10b981;background:var(--success);border-radius:50%;height:8px;width:8px}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}.voice-section{padding:0 20px}.question-section-clean{padding:16px 20px 8px;text-align:center}.question-section-clean h1{color:#1e293b;color:var(--text-dark);font-size:1.4rem;font-weight:700;margin:0}.crisis-grid-primary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);padding:24px 20px}.crisis-card-new{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:110px;padding:24px 16px;transition:all .15s ease}.crisis-card-new:hover{background:#f1f5f9;border-color:#cbd5e1;box-shadow:0 2px 8px #0000000f}.crisis-card-new:active{background:#e2e8f0}.crisis-card-icon{align-items:center;display:flex;justify-content:center}.crisis-card-label{color:#334155;font-size:.9rem;font-weight:500;line-height:1.3;text-align:center}.more-options-section{padding:0 20px 20px}.more-toggle-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:8px;justify-content:center;padding:14px;transition:all .15s ease;width:100%}.more-toggle-btn:hover{background:#f1f5f9;color:#475569}.chevron{font-size:.75rem;transition:transform .2s ease}.chevron.up{transform:rotate(180deg)}.crisis-grid-secondary{grid-gap:12px;animation:slideDown .15s ease-out;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:16px}.crisis-card-secondary{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:16px 10px;transition:all .15s ease}.crisis-card-secondary:hover{background:#f1f5f9;border-color:#cbd5e1}.crisis-card-icon-sm{align-items:center;display:flex;justify-content:center}.crisis-card-label-sm{color:#475569;font-size:.75rem;font-weight:500;line-height:1.2;text-align:center}.alt-inputs{display:flex;gap:12px;padding:0 20px 24px}.alt-input-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;color:#334155;cursor:pointer;display:flex;flex:1 1;font-size:.875rem;font-weight:500;gap:8px;justify-content:center;padding:16px;transition:all .15s ease}.alt-input-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.alt-icon{font-size:1.1rem}.bottom-nav{background:#fff;border-top:1px solid #e2e8f0;bottom:60px;display:flex;justify-content:space-around;left:0;padding:12px 20px;position:fixed;right:0;z-index:100}.nav-item{align-items:center;background:#0000;border:none;color:#64748b;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:8px 16px;transition:all .15s ease}.nav-item:hover{color:#1e293b}.nav-icon{font-size:1.3rem}.nav-label{font-size:.7rem;font-weight:500;letter-spacing:.3px}.emergency-home-clean .language-bar{background:#f8fafc;border-top:1px solid #e2e8f0;bottom:0;left:0;position:fixed;right:0;z-index:100}.clay-video-modal{align-items:flex-end;background:#000c;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.clay-video-content{background:#fff;border-radius:20px 20px 0 0;max-height:95vh;max-width:500px;overflow-y:auto;padding:24px;width:100%}.cv-header{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.cv-back-btn{align-self:flex-start;background:#0000;border:none;color:#92400e;cursor:pointer;font-size:1rem;font-weight:600;padding:8px 16px}.cv-title{text-align:center}.cv-badge{background:#fbbf24;border-radius:20px;color:#78350f;display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.5px;margin-bottom:8px;padding:4px 12px;text-transform:uppercase}.cv-title h2{color:#78350f;font-size:1.3rem;margin:0}.cv-player{background:#fef3c7;border-radius:16px;margin-bottom:20px;overflow:hidden}.cv-video-placeholder{align-items:center;aspect-ratio:16/9;background:linear-gradient(135deg,#fde68a,#fcd34d);display:flex;justify-content:center;position:relative}.clay-scene{animation:clay-idle 2s ease-in-out infinite;position:relative;width:60%}.clay-scene.playing{animation:clay-bounce .5s ease-in-out infinite}@keyframes clay-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes clay-bounce{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.05) rotate(-3deg)}75%{transform:scale(1.05) rotate(3deg)}}.clay-figure{filter:drop-shadow(0 8px 16px rgba(0,0,0,.15));height:auto;width:100%}.clay-overlay{align-items:center;background:#0000004d;display:flex;inset:0;justify-content:center;position:absolute}.coming-soon-badge{background:#fff;border-radius:30px;box-shadow:0 4px 12px #0003;color:#78350f;font-size:.9rem;font-weight:700;padding:12px 24px}.cv-progress-bar{background:#fde68a;height:6px}.cv-progress-fill{background:linear-gradient(90deg,#f59e0b,#d97706);height:100%;transition:width .1s linear}.cv-duration{color:#92400e;font-size:.85rem;font-weight:600;padding:8px 16px;text-align:right}.cv-step-display{margin-bottom:16px;text-align:center}.cv-step-indicator{color:#92400e;font-size:.8rem;font-weight:600;margin-bottom:8px}.cv-step-text{color:#78350f;font-size:1.5rem;font-weight:800}.cv-step-dots{display:flex;gap:8px;justify-content:center;margin-bottom:20px}.cv-dot{background:#fde68a;border-radius:50%;height:12px;transition:all .3s ease;width:12px}.cv-dot.active{background:#f59e0b;transform:scale(1.3)}.cv-dot.completed{background:#22c55e}.cv-controls{display:flex;justify-content:center;margin-bottom:16px}.cv-pause-btn,.cv-play-btn{align-items:center;border:none;border-radius:30px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s ease}.cv-play-btn{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 12px #22c55e66;color:#fff}.cv-play-btn:hover{transform:scale(1.05)}.cv-pause-btn{background:#fbbf24;color:#78350f}.cv-info-badge{align-items:center;background:#ecfdf5;border-radius:12px;color:#065f46;display:flex;font-size:.85rem;font-weight:600;gap:8px;justify-content:center;margin-bottom:20px;padding:12px}.cv-step-list{display:flex;flex-direction:column;gap:8px}.cv-step-item{align-items:center;background:#fff;border:2px solid #fde68a;border-radius:12px;display:flex;gap:12px;padding:12px 16px;transition:all .2s ease}.cv-step-item.active{background:#fffbeb;border-color:#f59e0b}.cv-step-item.completed{background:#f0fdf4;border-color:#22c55e}.cv-step-item .step-num{align-items:center;background:#fde68a;border-radius:50%;color:#78350f;display:flex;font-size:.85rem;font-weight:700;height:28px;justify-content:center;width:28px}.cv-step-item.active .step-num{background:#f59e0b;color:#fff}.cv-step-item.completed .step-num{background:#22c55e;color:#fff}.cv-step-item .step-text{color:#78350f;flex:1 1;font-weight:600}.cv-step-item .step-check{color:#22c55e;font-weight:700}.skip-link{background:#0ea5e9;background:var(--accent);border-radius:0 0 8px 8px;color:#fff;font-weight:700;left:50%;padding:12px 24px;position:absolute;text-decoration:none;top:-100px;transform:translateX(-50%);transition:top .2s ease;z-index:9999}.skip-link:focus{top:0}:focus-visible{outline:3px solid #0ea5e9;outline:3px solid var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 6px #0ea5e933;outline:3px solid #0ea5e9;outline:3px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce),.reduced-motion{*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body.reduced-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}body.high-contrast{--bg:#fff;--text:#000;--text-light:#333;--accent:#06c}body.high-contrast a,body.high-contrast button{border:2px solid}body.high-contrast .hero-call-btn{border:4px solid #fff}body.large-text{font-size:22px}body.large-text h1{font-size:2rem}body.large-text h2{font-size:1.6rem}body.large-text h3{font-size:1.3rem}a,button,input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px}[role=dialog]{position:relative}.text-light,.text-muted,.text-secondary{color:#4b5563!important}body.high-contrast .text-light,body.high-contrast .text-muted,body.high-contrast .text-secondary{color:#1f2937!important}label{display:block;font-weight:500;margin-bottom:4px}label[for]{cursor:pointer}label .required:after{color:#ef4444;color:var(--danger,#dc2626);content:" *"}input:invalid:not(:placeholder-shown),select:invalid:not(:placeholder-shown),textarea:invalid:not(:placeholder-shown){border-color:#ef4444;border-color:var(--danger,#dc2626)}.error-message{color:#ef4444;color:var(--danger,#dc2626);font-size:.875rem;margin-top:4px}.btn+.btn,.nav-item+.nav-item{margin-left:8px}.feedback-fab{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:50%;bottom:130px;box-shadow:0 2px 8px #00000014;color:#64748b;cursor:pointer;font-size:1.25rem;height:48px;position:fixed;right:20px;transition:all .15s ease;width:48px;z-index:90}.feedback-fab:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.feedback-modal{align-items:flex-end;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.feedback-content{background:#fff;border-radius:24px 24px 0 0;max-width:400px;padding:24px;width:100%}.feedback-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.feedback-header h3{font-size:1.2rem;margin:0}.feedback-close{background:#f1f5f9;border:none;border-radius:50%;cursor:pointer;font-size:1.1rem;height:36px;width:36px}.feedback-types{display:flex;gap:8px;margin-bottom:16px}.feedback-type-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;color:#64748b;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:.75rem;font-weight:500;gap:4px;padding:12px 8px;transition:all .15s ease}.feedback-type-btn.active{background:#f1f5f9;border-color:#1e293b;color:#1e293b}.feedback-textarea{border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:1rem;margin-bottom:16px;padding:14px;resize:none;width:100%}.feedback-textarea:focus{border-color:#8b5cf6;outline:none}.feedback-submit{background:#1e293b;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:14px;transition:background .15s ease;width:100%}.feedback-submit:hover{background:#334155}.feedback-submit:disabled{background:#94a3b8;cursor:not-allowed}.feedback-thanks{padding:40px 20px;text-align:center}.thanks-icon{align-items:center;background:#f1f5f9;border-radius:50%;color:#1e293b;display:inline-flex;font-size:1.75rem;height:56px;justify-content:center;margin-bottom:16px;width:56px}.feedback-thanks p{color:#334155;color:var(--text);font-size:1.1rem;font-weight:600}.onboarding-overlay{align-items:center;background:#fffffffa;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.onboarding-container{align-items:center;display:flex;flex-direction:column;max-width:400px;padding:40px 24px;text-align:center;width:100%}.onboarding-skip{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;position:absolute;right:20px;top:20px;transition:color .15s ease}.onboarding-skip:hover{color:#1e293b}.onboarding-slide{align-items:center;display:flex;flex-direction:column;gap:24px;margin-bottom:40px}.onboarding-icon{align-items:center;background:#f8fafc;border-radius:50%;display:flex;height:120px;justify-content:center;width:120px}.onboarding-title{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0}.onboarding-description{color:#64748b;font-size:1rem;line-height:1.6;margin:0;max-width:300px}.onboarding-dots{display:flex;gap:8px;margin-bottom:32px}.onboarding-dot{background:#e2e8f0;border-radius:50%;cursor:pointer;height:8px;transition:all .2s ease;width:8px}.onboarding-dot.active{background:#1e293b;border-radius:4px;width:24px}.onboarding-next{background:#1e293b;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;max-width:280px;padding:16px 32px;transition:background .15s ease;width:100%}.onboarding-next:hover{background:#334155}.triage-modal{align-items:flex-end;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.triage-content{background:#fff;border-radius:20px 20px 0 0;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.triage-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:20px 20px 16px}.triage-title-group h2{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0}.triage-subtitle{color:#64748b;font-size:.875rem}.triage-close{background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;font-size:1rem;height:32px;width:32px}.triage-progress{gap:8px;padding:16px 20px}.triage-progress,.triage-step{align-items:center;display:flex;justify-content:center}.triage-step{background:#e2e8f0;border-radius:50%;color:#64748b;font-size:.75rem;font-weight:600;height:28px;transition:all .2s ease;width:28px}.triage-step.active{background:#1e293b;color:#fff}.triage-step.done{background:#22c55e;color:#fff}.triage-line{background:#e2e8f0;height:2px;width:40px}.triage-body{flex:1 1;padding:20px}.triage-question{color:#334155;font-size:1rem;font-weight:500;margin:0 0 16px}.triage-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.triage-option{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;color:#334155;cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;font-weight:500;gap:8px;padding:20px 16px;transition:all .15s ease}.triage-option:hover{background:#f1f5f9;border-color:#cbd5e1}.triage-option.selected{background:#f1f5f9;border-color:#1e293b}.triage-option-icon{font-size:1.5rem}.triage-symptoms{display:flex;flex-direction:column;gap:10px}.triage-symptom{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;color:#334155;cursor:pointer;display:flex;font-size:.9rem;gap:12px;padding:14px 16px;text-align:left;transition:all .15s ease}.triage-symptom:hover{background:#f1f5f9}.triage-symptom.selected{background:#f1f5f9;border-color:#1e293b}.symptom-check{align-items:center;border:2px solid #cbd5e1;border-radius:6px;color:#1e293b;display:flex;flex-shrink:0;font-size:.875rem;font-weight:600;height:24px;justify-content:center;width:24px}.triage-symptom.selected .symptom-check{background:#1e293b;border-color:#1e293b;color:#fff}.triage-actions{display:flex;gap:12px;margin-top:20px}.triage-back{background:#f8fafc;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;color:#64748b;flex:1 1}.triage-back,.triage-close-btn,.triage-next{cursor:pointer;font-size:.95rem;font-weight:500;padding:14px}.triage-close-btn,.triage-next{background:#1e293b;border:none;border-radius:10px;color:#fff;flex:2 1}.triage-next:disabled{background:#94a3b8;cursor:not-allowed}.triage-result{border-radius:16px;margin-bottom:16px;padding:24px;text-align:center}.triage-result.severity-red{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca}.triage-result.severity-yellow{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fde68a}.triage-result.severity-green{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0}.result-indicator{font-size:3rem;margin-bottom:12px}.result-title{font-size:1.25rem;font-weight:600;margin:0 0 8px}.severity-red .result-title{color:#dc2626}.severity-yellow .result-title{color:#d97706}.severity-green .result-title{color:#16a34a}.result-desc{color:#475569;font-size:.95rem;line-height:1.5;margin:0 0 16px}.result-actions{background:#ffffffb3;border-radius:10px;padding:16px;text-align:left}.result-actions h4{color:#334155;font-size:.875rem;font-weight:600;margin:0 0 8px}.result-actions ul{margin:0;padding-left:20px}.result-actions li{color:#475569;font-size:.9rem;margin-bottom:4px}.triage-emergency-btn{background:#dc2626;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:16px;padding:16px;width:100%}.triage-disclaimer{color:#94a3b8;font-size:.75rem;margin:0;padding:12px 20px 20px;text-align:center}.offline-tips{animation:slideUp .3s ease-out;bottom:140px;left:20px;position:fixed;right:20px;z-index:80}.offline-tip-card{align-items:flex-start;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;gap:16px;padding:20px}.tip-icon{flex-shrink:0;font-size:2rem}.tip-content{flex:1 1}.tip-title{color:#0c4a6e;font-size:1rem;font-weight:600;margin:0 0 6px}.tip-text{color:#0369a1;font-size:.9rem;line-height:1.5;margin:0}.tip-dots{display:flex;gap:6px;justify-content:center;margin-top:12px}.tip-dot{background:#cbd5e1;border-radius:50%;cursor:pointer;height:6px;transition:all .2s ease;width:6px}.tip-dot.active{background:#0284c7;border-radius:3px;width:18px}.karte-page{margin:0 auto;max-width:1200px;padding:20px}.karte-header{margin-bottom:24px;text-align:center}.karte-header h1{color:#1e293b;color:var(--text-dark);font-size:1.75rem;font-weight:700;margin:0 0 8px}.karte-subtitle{color:#64748b;color:var(--text-light);font-size:1rem;margin:0}.karte-filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:20px}.filter-btn{align-items:center;background:#fff;background:var(--bg);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#334155;color:var(--text);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s ease}.filter-btn:hover{background:#f8fafc;background:var(--bg-soft)}.filter-btn.active,.filter-btn:hover{border-color:#0ea5e9;border-color:var(--accent)}.filter-btn.active{background:#0ea5e9;background:var(--accent);color:#fff}.filter-icon{font-size:1.1rem}.karte-container{background:#fff;background:var(--card);border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);overflow:hidden;padding:16px}.karte-container .leaflet-container{border-radius:8px;border-radius:var(--radius-sm);font-family:inherit}.karte-container .leaflet-popup-content-wrapper{border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md)}.karte-container .leaflet-popup-content{font-size:.9rem;line-height:1.5;margin:12px 16px}@media (max-width:768px){.karte-page{padding:12px}.karte-header h1{font-size:1.5rem}.karte-filters{gap:6px}.filter-btn{font-size:.85rem;padding:8px 12px}.karte-container{padding:8px}.karte-container>div{display:flex!important;flex-direction:column!important;gap:16px}.karte-container>div>div:first-child{height:50vh!important;min-height:300px!important}}.chat-history-panel{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);margin-top:12px;max-height:400px;overflow-y:auto;padding:16px}.chat-history-header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.chat-history-header strong{color:#1e293b;color:var(--text-dark);font-size:1rem}.clear-all-btn{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;border-radius:var(--radius-sm);color:#dc2626;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:all .2s ease}.clear-all-btn:hover{background:#fecaca}.chat-search-input{background:#fff;background:var(--bg);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:12px;padding:10px 12px;transition:border-color .2s ease;width:100%}.chat-search-input:focus{border-color:#0ea5e9;border-color:var(--accent);outline:none}.chat-history-empty{color:#64748b;color:var(--text-light);font-size:.9rem;padding:24px;text-align:center}.chat-history-list{list-style:none;margin:0;padding:0}.chat-history-item{align-items:stretch;display:flex;gap:4px;margin-bottom:8px}.chat-history-btn{align-items:center;background:#fff;background:var(--bg);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;flex:1 1;justify-content:space-between;padding:12px;text-align:left;transition:all .2s ease}.chat-history-btn:hover{background:#f1f5f9;background:var(--card-hover);border-color:#0ea5e9;border-color:var(--accent)}.chat-history-btn.active{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.chat-history-content{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.chat-topic{color:#1e293b;color:var(--text-dark);font-size:.9rem;font-weight:600;text-transform:capitalize}.chat-preview{color:#64748b;color:var(--text-light);font-size:.8rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-meta{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:4px}.chat-date{font-size:.75rem}.chat-count,.chat-date{color:#64748b;color:var(--text-light)}.chat-count{background:#f1f5f9;border-radius:10px;font-size:.7rem;padding:2px 6px}.chat-delete-btn{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-light);cursor:pointer;font-size:1rem;padding:0 12px;transition:all .2s ease}.chat-delete-btn:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626}@media (max-width:600px){.chat-history-panel{padding:12px}.chat-preview{max-width:120px}.chat-history-btn{padding:10px}}.ai-plan-overlay{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.ai-plan-modal{background:#fff;background:var(--bg);border-radius:12px;border-radius:var(--radius);box-shadow:0 25px 50px -12px #00000040;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.ai-plan-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;padding:16px 20px}.ai-plan-header,.ai-plan-title{align-items:center;display:flex;gap:8px}.ai-plan-title{color:#1e293b;color:var(--text-dark);font-size:1.1rem;font-weight:700}.ai-plan-icon{font-size:1.5rem}.ai-plan-badge{border-radius:12px;font-size:.7rem;font-weight:500;padding:4px 10px}.ai-plan-badge.ai{background:#dbeafe;color:#1e40af}.ai-plan-badge.offline,.ai-plan-error{background:#fef3c7;color:#92400e}.ai-plan-error{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;padding:10px 20px}.retry-btn{background:#fbbf24;border:none;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;font-weight:500;padding:4px 12px}.ai-plan-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top:4px solid var(--accent);height:48px;width:48px}.ai-plan-progress{display:flex;gap:8px;justify-content:center;padding:16px 20px}.ai-plan-progress .progress-dot{background:#e2e8f0;border:none;border-radius:50%;cursor:pointer;height:12px;transition:all .2s ease;width:12px}.ai-plan-progress .progress-dot:hover{transform:scale(1.2)}.ai-plan-progress .progress-dot.active{background:#0ea5e9;background:var(--accent);transform:scale(1.3)}.ai-plan-progress .progress-dot.done{background:#10b981;background:var(--success)}.ai-plan-step{background:#f8fafc;background:var(--bg-soft);border-radius:12px;border-radius:var(--radius);margin:0 20px;padding:24px 20px;text-align:center;transition:all .3s ease}.ai-plan-step.critical{background:#fef2f2;border:2px solid #fecaca}.step-number{align-items:center;color:#64748b;color:var(--text-light);display:flex;font-size:.8rem;gap:8px;justify-content:center;margin-bottom:8px}.critical-badge{background:#dc2626;border-radius:4px;color:#fff;font-size:.7rem;font-weight:700;padding:2px 8px}.step-action{color:#1e293b;color:var(--text-dark);font-size:1.5rem;font-weight:700;margin-bottom:8px}.step-detail{color:#334155;color:var(--text);font-size:1rem;line-height:1.5}.speak-btn{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:block;font-size:.9rem;margin:16px auto;padding:10px 24px;transition:all .2s ease}.speak-btn:hover{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.ai-plan-nav{align-items:center;display:flex;justify-content:space-between;padding:0 20px 16px}.ai-plan-nav .nav-btn{background:#fff;background:var(--bg);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.ai-plan-nav .nav-btn:hover:not(:disabled){background:#0ea5e9;background:var(--accent);border-color:#0ea5e9;border-color:var(--accent);color:#fff}.ai-plan-nav .nav-btn:disabled{cursor:not-allowed;opacity:.4}.ai-plan-nav .step-counter{color:#64748b;color:var(--text-light);font-size:.9rem;font-weight:500}.ai-plan-overview{border-top:1px solid #e2e8f0;padding:16px 20px}.ai-plan-overview h4{color:#64748b;color:var(--text-light);font-size:.85rem;font-weight:600;margin:0 0 12px}.steps-list{list-style:decimal;margin:0;padding:0 0 0 20px}.steps-list li{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;justify-content:space-between;padding:8px 0;transition:all .2s ease}.steps-list li.active,.steps-list li:hover{color:#0ea5e9;color:var(--accent)}.steps-list li.active{font-weight:600}.steps-list li.critical{color:#dc2626}.step-action-small{flex:1 1}.critical-dot{color:#dc2626;font-size:.8rem}.ai-plan-footer{border-top:1px solid #e2e8f0;display:flex;gap:12px;padding:16px 20px}.ai-plan-footer .emergency-btn{background:#dc2626;border-radius:8px;border-radius:var(--radius-sm);color:#fff;flex:1 1;font-size:1rem;font-weight:700;padding:14px;text-align:center;text-decoration:none;transition:all .2s ease}.ai-plan-footer .emergency-btn:hover{background:#b91c1c}.ai-plan-footer .close-btn{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-weight:500;padding:14px 24px;transition:all .2s ease}.ai-plan-footer .close-btn:hover{background:#e2e8f0}@media (max-width:500px){.ai-plan-modal{border-radius:0;max-height:100vh}.ai-plan-header{padding:12px 16px}.ai-plan-step{margin:0 12px;padding:20px 16px}.step-action{font-size:1.3rem}.ai-plan-nav{padding:0 12px 12px}.ai-plan-footer{flex-direction:column;padding:12px}}.steps-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.steps-header h2{margin:0}.ai-plan-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 2px 8px #6366f14d;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .2s ease}.ai-plan-btn:hover{box-shadow:0 4px 12px #6366f166;transform:translateY(-1px)}.ai-plan-btn:active{transform:translateY(0)}.result-image-preview{display:flex;justify-content:center;margin-bottom:16px}.result-thumbnail{border:3px solid #e2e8f0;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);height:120px;object-fit:cover;width:120px}.situation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.situation-header h3{margin:0}.speak-result-btn{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;padding:6px 12px;transition:all .2s ease}.speak-result-btn:hover{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.result-step-item{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;gap:12px;padding:12px 0}.result-step-item:last-child{border-bottom:none}.step-num{align-items:center;background:#0ea5e9;background:var(--accent);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.85rem;font-weight:700;height:28px;justify-content:center;width:28px}.emergency-call-btn.pulse{animation:pulse-emergency 1.5s ease-in-out infinite}@keyframes pulse-emergency{0%,to{box-shadow:0 4px 15px #dc262666;transform:scale(1)}50%{box-shadow:0 6px 25px #dc262699;transform:scale(1.02)}}.photo-analysis-page .result-section{animation:fadeIn .3s ease-out}.photo-analysis-page .steps-list{list-style:none;margin:0;padding:0}.photo-analysis-page .situation-box{background:#f8fafc;background:var(--bg-soft);border-radius:12px;border-radius:var(--radius);margin-bottom:16px;padding:16px}.photo-analysis-page .steps-box{background:#fff;background:var(--bg);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);margin-bottom:16px;padding:16px}.photo-analysis-page .steps-box h3{color:#1e293b;color:var(--text-dark);font-size:1rem;margin:0 0 12px}.copilot-result-banner{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#dbeafe,#ede9fe);border:1px solid #a5b4fc;border-radius:12px;border-radius:var(--radius);display:flex;justify-content:space-between;margin:0 16px 16px;padding:12px 16px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.copilot-result-content{align-items:center;display:flex;gap:12px}.copilot-icon{font-size:1.5rem}.copilot-text{display:flex;flex-direction:column;gap:2px}.copilot-text strong{color:#1e40af;font-size:.95rem}.copilot-confidence{color:#6366f1;font-size:.8rem}.copilot-dismiss{background:#0000;border:none;color:#6b7280;cursor:pointer;font-size:1.2rem;line-height:1;padding:4px}.copilot-dismiss:hover{color:#1f2937}.learning-mode-overlay{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.learning-mode-modal{background:#fff;background:var(--bg);border-radius:12px;border-radius:var(--radius);box-shadow:0 25px 50px -12px #00000040;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.learning-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:20px}.learning-header h2{color:#1e293b;color:var(--text-dark);font-size:1.3rem;margin:0}.learning-subtitle{color:#64748b;color:var(--text-light);font-size:.9rem;margin:4px 0 0}.learning-header .close-btn{background:#0000;border:none;color:#64748b;color:var(--text-light);cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.learning-topics{padding:16px 20px}.topic-card{align-items:center;background:#f8fafc;background:var(--bg-soft);border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;margin-bottom:12px;padding:16px}.topic-icon{flex-shrink:0;font-size:2.5rem}.topic-info{flex:1 1;min-width:0}.topic-info h3{color:#1e293b;color:var(--text-dark);font-size:1rem;margin:0 0 8px}.topic-progress-bar{background:#e2e8f0;border-radius:4px;height:8px;margin-bottom:6px;overflow:hidden}.topic-progress-fill{background:linear-gradient(90deg,#10b981,#34d399);background:linear-gradient(90deg,var(--success) 0,#34d399 100%);border-radius:4px;height:100%;transition:width .3s ease}.topic-meta{color:#64748b;color:var(--text-light);display:flex;font-size:.75rem;justify-content:space-between}.last-studied{font-style:italic}.topic-action-btn{background:#0ea5e9;background:var(--accent);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.topic-action-btn:hover{background:#0369a1}.learning-tip{align-items:center;background:#fef3c7;border-radius:8px;border-radius:var(--radius-sm);color:#92400e;display:flex;font-size:.85rem;gap:10px;margin:0 20px;padding:12px 20px}.tip-icon{font-size:1.2rem}.learning-actions{display:flex;justify-content:center;padding:16px 20px}.reset-btn{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-light);cursor:pointer;font-size:.85rem;padding:8px 16px;transition:all .2s ease}.reset-btn:hover{border-color:#dc2626;color:#dc2626}@media (max-width:500px){.topic-card{gap:12px}.topic-card,.topic-meta{flex-direction:column;text-align:center}.topic-meta{gap:4px}}.section-description{color:#64748b;color:var(--text-light);font-size:.9rem;margin:4px 0 16px}.persona-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.persona-btn{align-items:center;background:#f8fafc;background:var(--bg-soft);border:2px solid #e2e8f0;border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:16px 12px;transition:all .2s ease}.persona-btn.active,.persona-btn:hover{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.persona-btn.active{box-shadow:0 0 0 3px #0284c733}.persona-icon{font-size:2rem}.persona-label{color:#1e293b;color:var(--text-dark);font-size:.9rem;font-weight:500}.persona-btn.active .persona-label{color:#0ea5e9;color:var(--accent)}@media (max-width:400px){.persona-options{grid-template-columns:1fr}}.decision-tree-page{background:#f8fafc;background:var(--bg-soft);min-height:100vh;padding-bottom:100px}.tree-header{align-items:flex-start;background:#fff;background:var(--card);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:16px;padding:16px 20px}.tree-header .back-button{background:none;border:none;color:#0ea5e9;color:var(--accent);cursor:pointer;font-size:1rem;padding:8px 0;white-space:nowrap}.tree-header .header-content{flex:1 1}.tree-header h1{color:#1e293b;color:var(--text-dark);font-size:1.5rem;margin:0}.tree-header .subtitle{color:#64748b;color:var(--text-light);font-size:.9rem;margin:4px 0 0}.emergency-selection{padding:20px}.emergency-selection h2{color:#334155;color:var(--text);font-size:1.1rem;margin:0 0 16px}.emergency-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.emergency-card{align-items:center;background:#fff;background:var(--card);border:2px solid #e2e8f0;border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:20px 12px;transition:all .2s ease}.emergency-card:hover:not(.disabled){background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.emergency-card.disabled{cursor:not-allowed;opacity:.5}.emergency-icon{font-size:2.5rem}.emergency-label{color:#1e293b;color:var(--text-dark);font-size:.9rem;font-weight:500;text-align:center}.tree-info{align-items:center;display:flex;flex-direction:column;gap:12px;padding:20px}.info-badge{align-items:center;background:#d1fae5;background:var(--success-soft);border-radius:20px;color:#059669;display:inline-flex;font-size:.85rem;gap:6px;padding:8px 16px}.offline-icon{font-size:1rem}.tree-info .tip{color:#64748b;color:var(--text-light);font-size:.9rem;text-align:center}.error-state,.loading-state{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px}.spinner{animation:spin 1s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top:3px solid var(--accent);height:40px;width:40px}.steps-header-actions{display:flex;gap:8px}.tree-btn{background:#d1fae5;background:var(--success-soft);border:1px solid #10b981;border:1px solid var(--success);border-radius:8px;border-radius:var(--radius-sm);color:#10b981;color:var(--success);cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 12px;transition:all .2s ease}.tree-btn:hover{background:#10b981;background:var(--success);color:#fff}@media (max-width:500px){.emergency-grid{grid-template-columns:1fr}.steps-header-actions{flex-direction:column;gap:4px}.ai-plan-btn,.tree-btn{font-size:.75rem;padding:6px 10px}}.search-section{padding:0 20px 16px}.emergency-search{margin:0 auto;max-width:500px;position:relative;width:100%}.search-input-wrapper{align-items:center;background:#fff;background:var(--card);border:2px solid #e2e8f0;border-radius:12px;border-radius:var(--radius);display:flex;gap:10px;padding:12px 16px;transition:all .2s ease}.search-input-wrapper:focus-within{border-color:#0ea5e9;border-color:var(--accent);box-shadow:0 0 0 3px #0ea5e91a}.search-icon{font-size:1.1rem;opacity:.6}.search-input{background:#0000;border:none;color:#334155;color:var(--text);flex:1 1;font-size:1rem;outline:none}.clear-btn,.search-input::placeholder{color:#64748b;color:var(--text-light)}.clear-btn{background:none;border:none;border-radius:50%;cursor:pointer;font-size:1rem;padding:4px;transition:all .2s ease}.clear-btn:hover{background:#f1f5f9;color:#334155;color:var(--text)}.search-results{background:#fff;background:var(--card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);left:0;list-style:none;margin-top:8px;max-height:400px;overflow-y:auto;padding:0;position:absolute;right:0;top:100%;z-index:100}.search-result-item{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:12px;padding:12px 16px;text-align:left;transition:background .2s ease;width:100%}.search-result-item:hover{background:#f8fafc;background:var(--bg-soft)}.search-results li:not(:last-child) .search-result-item{border-bottom:1px solid #f1f5f9}.result-icon{flex-shrink:0;font-size:1.5rem}.result-content{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.result-title{color:#1e293b;color:var(--text-dark);font-size:.95rem;font-weight:500}.result-description{color:#64748b;color:var(--text-light);font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-type{border-radius:12px;flex-shrink:0;font-size:.7rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.result-type.crisis{background:#e0f2fe;background:var(--accent-soft);color:#0ea5e9;color:var(--accent)}.result-type.emergency{background:#fee2e2;background:var(--danger-soft);color:#ef4444;color:var(--danger)}.result-type.synonym{background:#f1f5f9}.no-results,.result-type.synonym{color:#64748b;color:var(--text-light)}.no-results{background:#fff;background:var(--card);border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);font-size:.9rem;margin-top:8px;padding:16px;text-align:center}@media (max-width:500px){.search-section{padding:0 12px 12px}.search-input-wrapper{padding:10px 12px}.search-input{font-size:.95rem}}.telemetry-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:3000}.telemetry-modal{background:#fff;background:var(--card);border-radius:12px;border-radius:var(--radius);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:100%}.telemetry-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:20px}.telemetry-header h2{color:#1e293b;color:var(--text-dark);font-size:1.25rem;margin:0}.telemetry-subtitle{color:#64748b;color:var(--text-light);font-size:.85rem;margin:4px 0 0}.telemetry-content{flex:1 1;overflow-y:auto;padding:20px}.telemetry-empty{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px}.empty-icon{font-size:3rem;opacity:.5}.telemetry-empty p{color:#64748b;color:var(--text-light);text-align:center}.telemetry-footer{align-items:center;background:#f8fafc;background:var(--bg-soft);border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:16px 20px}.clear-data-btn,.privacy-note{color:#64748b;color:var(--text-light);font-size:.8rem}.clear-data-btn{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;padding:8px 12px;transition:all .2s ease}.clear-data-btn:hover{border-color:#ef4444;border-color:var(--danger);color:#ef4444;color:var(--danger)}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}.stat-card{background:#f8fafc;background:var(--bg-soft);border-radius:8px;border-radius:var(--radius-sm);padding:16px;text-align:center}.stat-value{color:#0ea5e9;color:var(--accent);display:block;font-size:1.75rem;font-weight:700;line-height:1;margin-bottom:4px}.stat-label{color:#64748b;color:var(--text-light);font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.chart-section{margin-bottom:24px}.chart-section h3{color:#334155;color:var(--text);font-size:.9rem;margin:0 0 12px}.bar-chart{align-items:flex-end;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:8px;height:120px;justify-content:space-between;padding:8px 0}.bar-item{align-items:center;display:flex;flex:1 1;flex-direction:column;height:100%}.bar{background:linear-gradient(0deg,#0ea5e9,#38bdf8);background:linear-gradient(to top,var(--accent),#38bdf8);border-radius:4px 4px 0 0;min-height:4px;position:relative;transition:height .3s ease;width:100%}.bar-value{color:#334155;color:var(--text);font-size:.7rem;font-weight:600;left:50%;position:absolute;top:-20px;transform:translateX(-50%)}.bar-label{color:#64748b;color:var(--text-light);font-size:.7rem;margin-top:8px}.breakdown-section{margin-bottom:24px}.breakdown-section h3{color:#334155;color:var(--text);font-size:.9rem;margin:0 0 12px}.breakdown-list{display:flex;flex-direction:column;gap:8px}.breakdown-item{align-items:center;background:#f8fafc;background:var(--bg-soft);border-radius:8px;border-radius:var(--radius-sm);display:flex;justify-content:space-between;padding:8px 12px}.breakdown-name{color:#334155;color:var(--text);font-size:.9rem;text-transform:capitalize}.breakdown-count{color:#0ea5e9;color:var(--accent);font-weight:600}.features-section{margin-bottom:24px}.features-section h3{color:#334155;color:var(--text);font-size:.9rem;margin:0 0 12px}.features-grid{display:flex;flex-wrap:wrap;gap:8px}.feature-badge{align-items:center;background:#f8fafc;background:var(--bg-soft);border-radius:20px;display:flex;font-size:.85rem;gap:6px;padding:8px 12px}.feature-badge.sos{background:#fee2e2;background:var(--danger-soft);color:#ef4444;color:var(--danger)}.recent-section h3{color:#334155;color:var(--text);font-size:.9rem;margin:0 0 12px}.activity-list{list-style:none;margin:0;padding:0}.activity-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:10px 0}.activity-item:last-child{border-bottom:none}.activity-type{color:#334155;color:var(--text);font-size:.9rem}.activity-time{color:#64748b;color:var(--text-light);font-size:.75rem}@media (max-width:400px){.stats-grid{gap:8px;grid-template-columns:1fr 1fr}.stat-card{padding:12px}.stat-value{font-size:1.5rem}.telemetry-footer{flex-direction:column;gap:12px;text-align:center}}.telemetry-footer{flex-direction:column;gap:12px}.footer-left{display:flex;flex-direction:column;gap:4px}.last-sync{color:#64748b;color:var(--text-light);font-size:.75rem}.footer-actions{display:flex;flex-wrap:wrap;gap:8px}.sync-btn{background:#e0f2fe;background:var(--accent-soft);border:1px solid #0ea5e9;border:1px solid var(--accent);border-radius:8px;border-radius:var(--radius-sm);color:#0ea5e9;color:var(--accent);cursor:pointer;font-size:.8rem;padding:8px 12px;transition:all .2s ease}.sync-btn:hover:not(:disabled){background:#0ea5e9;background:var(--accent);color:#fff}.sync-btn:disabled{cursor:not-allowed;opacity:.7}.sync-btn.success{background:#d1fae5;background:var(--success-soft);border-color:#10b981;border-color:var(--success);color:#10b981;color:var(--success)}.sync-btn.error{background:#fee2e2;background:var(--danger-soft);border-color:#ef4444;border-color:var(--danger);color:#ef4444;color:var(--danger)}.karte-offline-section{align-items:center;background:#f8fafc;background:var(--bg-soft);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:12px;padding:12px 20px}.offline-save-btn{background:#0ea5e9;background:var(--accent);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 16px;transition:all .2s ease}.offline-save-btn:hover:not(:disabled){background:#0284c7;transform:translateY(-1px)}.offline-save-btn:disabled{cursor:not-allowed;opacity:.7}.offline-save-btn.saving{background:#f59e0b;background:var(--warning)}.offline-save-btn.saved{background:#10b981;background:var(--success)}.offline-badge{background:#d1fae5;background:var(--success-soft);border-radius:20px;color:#10b981;color:var(--success);font-size:.85rem;padding:6px 12px}.helfer-page{background:#f8fafc;background:var(--bg-soft);min-height:100vh;padding-bottom:2rem}.helfer-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:1rem}.helfer-header .back-btn{background:#004080;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1rem;transition:background .2s}.helfer-header .back-btn:hover{background:#0059b3}.assistant-page{padding-bottom:20px;padding-top:12px}.assistant-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:12px}.assistant-title{color:#1e293b;color:var(--text-dark);font-size:1.4rem;font-weight:800;margin:0}.assistant-actions{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.btn-primary{background:#0ea5e9;background:var(--accent);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600;transition:all .2s}.btn-primary:hover{background:#0284c7}.btn-secondary{background:#f8fafc;background:var(--bg-soft);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#334155;color:var(--text);cursor:pointer;font-weight:500;transition:all .2s}.btn-secondary:hover{background:#e2e8f0}.btn-danger{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;border-radius:var(--radius-sm);color:#dc2626;cursor:pointer;font-weight:500}.btn-sm{font-size:.8rem;padding:6px 12px}.status-badge{border-radius:20px;font-size:.75rem;font-weight:600;padding:4px 10px;white-space:nowrap}.status-online{background:#d1fae5;color:#065f46}.status-offline{background:#fee2e2;color:#991b1b}.status-checking{background:#fef3c7;color:#92400e}.emergency-call-banner{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border-radius:8px;border-radius:var(--radius-sm);box-shadow:0 2px 8px #dc26264d;color:#fff;display:flex;font-weight:700;gap:12px;margin-bottom:12px;padding:12px 16px;text-decoration:none;transition:transform .15s,box-shadow .15s}.emergency-call-banner:hover{box-shadow:0 4px 12px #dc262666;transform:translateY(-1px)}.emergency-call-icon{background:#fff;border-radius:6px;color:#dc2626;font-size:1.4rem;font-weight:900;min-width:44px;padding:4px 10px;text-align:center}.emergency-call-text{font-size:.9rem}.offline-banner{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;border-radius:var(--radius-sm);margin-bottom:12px;padding:10px 14px}.offline-banner strong{font-size:.9rem}.offline-banner p{color:#92400e;font-size:.8rem;margin:4px 0 0}.sync-pending-badge{background:#f59e0b33;border-radius:4px;font-size:.75rem!important;font-weight:600;margin-top:6px!important;padding:4px 8px}.quick-actions{margin-bottom:12px}.quick-actions-title{color:#1e293b;color:var(--text-dark);font-size:1rem;font-weight:700;margin:0 0 10px;text-align:center}.quick-actions-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.quick-action-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;flex-direction:column;gap:4px;justify-content:center;min-height:70px;padding:12px 6px;transition:all .15s}.quick-action-btn:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.quick-action-btn:active{transform:translateY(0)}.quick-action-btn:disabled{opacity:.5;pointer-events:none}.quick-action-icon{font-size:1.5rem;line-height:1}.quick-action-label{color:#334155;color:var(--text);font-size:.7rem;font-weight:600;line-height:1.2;text-align:center}.msg-step{align-items:flex-start;display:flex;gap:10px;padding:6px 0}.msg-step-num{align-items:center;background:#0ea5e9;background:var(--accent);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:24px;justify-content:center;min-width:24px}.msg-step-text{font-size:.95rem;line-height:1.4;padding-top:2px}.msg-bold{color:#1e293b;color:var(--text-dark);font-weight:700;margin:4px 0}.msg-text{line-height:1.5;margin:2px 0}.msg-spacer{height:8px}.chat-empty-state{align-items:center;color:#64748b;color:var(--text-light);display:flex;font-size:.9rem;justify-content:center;min-height:120px;text-align:center}.send-btn{background:#0ea5e9;background:var(--accent);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:700;min-width:80px;padding:12px 20px;transition:all .15s;white-space:nowrap}.send-btn:hover:not(:disabled){background:#0284c7}.send-btn:disabled{background:#cbd5e1;cursor:not-allowed}.chat-footer-actions{margin-top:8px}.streaming-indicator{align-items:center;color:#0ea5e9;color:var(--accent);display:flex;font-size:.85rem;font-weight:500;gap:8px;justify-content:center;padding:8px}.streaming-dot{animation:pulse-dot 1.2s infinite;background:#0ea5e9;background:var(--accent);border-radius:50%;height:8px;width:8px}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}@media (max-width:600px){.assistant-title{font-size:1.2rem}.quick-actions-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.quick-action-btn{min-height:60px;padding:10px 4px}.quick-action-icon{font-size:1.3rem}.quick-action-label{font-size:.65rem}.emergency-call-banner{padding:10px 12px}.emergency-call-icon{font-size:1.2rem;padding:3px 8px}.emergency-call-text{font-size:.8rem}.chat-list{max-height:45vh;min-height:200px}.composer input{font-size:16px}}.read-aloud-btn{align-items:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;color:#0369a1;cursor:pointer;display:inline-flex;font-size:.7rem;font-weight:600;gap:4px;margin-top:4px;padding:4px 10px;transition:all .15s}.read-aloud-btn:hover{background:#e0f2fe;border-color:#7dd3fc}.read-aloud-btn.speaking{animation:pulse-speak 1.5s infinite;background:#fef3c7;border-color:#fbbf24;color:#92400e}@keyframes pulse-speak{0%,to{opacity:1}50%{opacity:.7}}.assistant-page{padding-bottom:calc(20px + env(safe-area-inset-bottom, 0px))}.composer{padding-bottom:calc(12px + env(safe-area-inset-bottom, 0px))}.voice-fab{align-items:center;background:linear-gradient(135deg,#0ea5e9,#0284c7);border:none;border-radius:50%;bottom:calc(80px + env(safe-area-inset-bottom, 0px));box-shadow:0 4px 14px #0ea5e966;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;height:56px;justify-content:center;position:fixed;right:16px;transition:transform .15s,box-shadow .15s;width:56px;z-index:100}.voice-fab:hover{box-shadow:0 6px 20px #0ea5e980;transform:scale(1.08)}.voice-fab:active{transform:scale(.95)}.voice-fab.recording{animation:pulse-record 1s infinite;background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 14px #ef444480}@keyframes pulse-record{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.emergency-call-banner{min-height:52px;padding:14px 18px}.quick-action-btn{min-height:72px;min-width:72px}.read-aloud-btn{font-size:.75rem;min-height:36px;padding:6px 14px}.send-btn{font-size:1rem;min-height:48px;min-width:72px}.status-badge{align-items:center;display:flex;font-size:.8rem;min-height:28px}.msg.assistant .bubble{font-size:1.05rem;line-height:1.6}.msg-step-num{font-size:.85rem;height:28px;min-width:28px}.msg-step-text{font-size:1rem;line-height:1.5}@media (prefers-color-scheme:dark){.assistant-page{--bg-soft:#1e293b;--text:#e2e8f0;--text-dark:#f8fafc}.assistant-page .chat-list{background:#1e293b;border-color:#334155}.assistant-page .msg.assistant .bubble{background:#334155;border-color:#475569;color:#e2e8f0}.assistant-page .composer{background:#1e293b;border-color:#334155}.assistant-page .composer input{background:#334155;border-color:#475569;color:#e2e8f0}.assistant-page .quick-action-btn{background:#1e293b;border-color:#475569}.assistant-page .quick-action-label{color:#e2e8f0}.assistant-page .offline-banner{background:#451a03;border-color:#92400e}.assistant-page .offline-banner p{color:#fbbf24}}@media (max-height:500px) and (orientation:landscape){.assistant-page .chat-list{max-height:35vh;min-height:120px}.quick-actions-grid{grid-template-columns:repeat(4,1fr)}.quick-action-btn{min-height:56px;padding:8px 4px}.emergency-call-banner{min-height:44px;padding:8px 14px}}@media (max-width:380px){.assistant-title{font-size:1.1rem}.quick-actions-grid{gap:6px;grid-template-columns:repeat(2,1fr)}.quick-action-btn{min-height:64px}.quick-action-icon{font-size:1.2rem}.quick-action-label{font-size:.65rem}.emergency-call-icon{font-size:1rem;padding:2px 6px}}.step-mode-trigger{background:#0ea5e9;background:var(--accent);border:none;border-radius:12px;border-radius:var(--radius);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:600;margin:8px auto;max-width:400px;padding:14px 20px;transition:background .2s;width:100%}.step-mode-trigger:hover{background:#0284c7}.step-mode-overlay{align-items:center;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:env(safe-area-inset-top,16px) 16px env(safe-area-inset-bottom,16px);position:fixed;right:0;top:0;z-index:9999}.step-mode-container{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:480px;overflow:hidden;width:100%}.step-mode-header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:16px 20px}.step-mode-title{color:#1e293b;color:var(--text-dark);font-size:1.1rem;font-weight:700}.step-mode-close{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#334155;color:var(--text);cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:36px;justify-content:center;width:36px}.step-mode-progress{background:#e2e8f0;height:4px;width:100%}.step-mode-progress-bar{background:#0ea5e9;background:var(--accent);border-radius:2px;height:100%;transition:width .3s ease}.step-mode-counter{color:#64748b;color:var(--text-light);font-size:.9rem;font-weight:600;padding:12px;text-align:center}.step-mode-content{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:200px;padding:32px 24px}.step-mode-content.critical{background:#fef2f2;border-left:4px solid #ef4444;border-left:4px solid var(--danger)}.step-mode-text{color:#1e293b;color:var(--text-dark);font-size:1.5rem;font-weight:600;line-height:1.4;margin:0;text-align:center}.step-mode-content.critical .step-mode-text{color:#ef4444;color:var(--danger)}.step-mode-speak{background:#f1f5f9;border:none;border-radius:20px;color:#334155;color:var(--text);cursor:pointer;display:block;font-size:.9rem;margin:0 auto 12px;padding:8px 20px;transition:background .2s}.step-mode-speak.active{background:#e0f2fe;background:var(--accent-soft);color:#0ea5e9;color:var(--accent)}.step-mode-nav{border-top:1px solid #e2e8f0;display:flex;gap:12px;padding:16px 20px}.step-mode-btn{border:none;border-radius:12px;border-radius:var(--radius);cursor:pointer;flex:1 1;font-size:1.1rem;font-weight:600;min-height:56px;padding:16px;transition:background .2s,opacity .2s}.step-mode-prev{background:#f1f5f9;color:#334155;color:var(--text)}.step-mode-next{background:#0ea5e9;background:var(--accent);color:#fff}.step-mode-done{background:#10b981;background:var(--success);color:#fff}.step-mode-btn:disabled{cursor:not-allowed;opacity:.4}.cpr-bar{align-items:center;animation:slideUpCPR .3s ease;background:#1e293b;border-radius:50px;bottom:80px;box-shadow:0 10px 30px #0000004d;color:#fff;display:flex;gap:12px;left:50%;max-width:90vw;padding:12px 20px;position:fixed;transform:translateX(-50%);z-index:1000}@keyframes slideUpCPR{0%{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.cpr-bar-label{font-size:.9rem;font-weight:600;white-space:nowrap}.cpr-bar-btn{background:#ef4444;background:var(--danger);border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;min-height:44px;padding:10px 20px;transition:background .2s}.cpr-bar-btn.active{animation:cprPulse .545s infinite;background:#fff;color:#ef4444;color:var(--danger)}@keyframes cprPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.cpr-bar-dismiss{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.8rem;font-weight:700;height:32px;justify-content:center;width:32px}@media (prefers-color-scheme:dark){.step-mode-container{background:#1e293b}.step-mode-header{border-color:#334155}.step-mode-title{color:#f1f5f9}.step-mode-close{color:#f1f5f9}.step-mode-close,.step-mode-progress{background:#334155}.step-mode-counter{color:#94a3b8}.step-mode-text{color:#f1f5f9}.step-mode-content.critical{background:#451a1a}.step-mode-speak{background:#334155;color:#e2e8f0}.step-mode-nav{border-color:#334155}.step-mode-prev{background:#334155;color:#e2e8f0}}.context-actions{-webkit-overflow-scrolling:touch;display:flex;gap:8px;overflow-x:auto;padding:10px 0;scrollbar-width:none}.context-actions::-webkit-scrollbar{display:none}.context-action-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:20px;color:#334155;color:var(--text);cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;min-height:40px;padding:8px 14px;transition:all .2s;white-space:nowrap}.context-action-btn:hover{background:#f8fafc;background:var(--bg-soft);border-color:#0ea5e9;border-color:var(--accent)}.context-action-btn:disabled{cursor:not-allowed;opacity:.5}.context-action-btn.suggested{animation:suggestPulse 2s ease-in-out infinite;background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent);color:#0369a1;font-weight:600}@keyframes suggestPulse{0%,to{box-shadow:0 0 0 0 #0ea5e94d}50%{box-shadow:0 0 0 4px #0ea5e900}}.ctx-icon{font-size:1.1rem;line-height:1}.ctx-label{font-size:.8rem}.finder-overlay{align-items:flex-end;animation:fadeIn .2s ease;background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.finder-container{animation:slideUp .3s ease;background:#fff;border-radius:20px 20px 0 0;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0);width:100%}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.finder-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);gap:12px;padding:16px 20px}.finder-close,.finder-header{align-items:center;display:flex}.finder-close{background:#f1f5f9;border:none;border-radius:50%;cursor:pointer;font-size:.9rem;font-weight:700;height:36px;justify-content:center;width:36px}.finder-title{font-size:1.1rem;font-weight:700;margin:0}.finder-categories{-webkit-overflow-scrolling:touch;display:flex;gap:4px;overflow-x:auto;padding:12px 16px;scrollbar-width:none}.finder-categories::-webkit-scrollbar{display:none}.finder-cat-btn{align-items:center;background:#f8fafc;border:2px solid #0000;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:60px;padding:10px 12px;transition:all .2s}.finder-cat-btn.active{background:#e0f2fe;background:var(--accent-soft);border-color:#0ea5e9;border-color:var(--accent)}.finder-cat-icon{font-size:1.3rem}.finder-cat-label{color:#64748b;color:var(--text-light);font-size:.65rem;font-weight:600;white-space:nowrap}.finder-cat-btn.active .finder-cat-label{color:#0ea5e9;color:var(--accent)}.finder-cat-desc{border-bottom:1px solid #f1f5f9;color:#64748b;color:var(--text-light);font-size:.85rem;font-weight:500;padding:8px 20px}.finder-content{flex:1 1;max-height:50vh;min-height:200px;overflow-y:auto;padding:12px 16px}.finder-loading{align-items:center;color:#64748b;color:var(--text-light);display:flex;flex-direction:column;font-size:.9rem;gap:12px;justify-content:center;padding:40px 20px}.finder-spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top:3px solid var(--accent);height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.finder-error{color:#ef4444;color:var(--danger);padding:20px;text-align:center}.finder-retry{background:#0ea5e9;background:var(--accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:12px;padding:10px 20px}.finder-empty{color:#64748b;color:var(--text-light);padding:30px 20px;text-align:center}.finder-alt-btn{background:#0000;border:1px solid #0ea5e9;border:1px solid var(--accent);border-radius:8px;color:#0ea5e9;color:var(--accent);cursor:pointer;display:block;font-weight:500;margin:12px auto;padding:10px 16px}.finder-112{background:#ef4444;background:var(--danger);border-radius:8px;color:#fff;display:inline-block;font-weight:700;margin-top:16px;padding:12px 24px;text-decoration:none}.finder-results{list-style:none;margin:0;padding:0}.finder-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:12px;justify-content:space-between;padding:14px 12px}.finder-item.first{background:#e0f2fe;background:var(--accent-soft);border:1px solid #0ea5e9;border:1px solid var(--accent);border-radius:10px;margin-bottom:8px}.finder-item-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.finder-item-name{color:#1e293b;color:var(--text-dark);font-size:.9rem;font-weight:600}.finder-item-addr,.finder-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finder-item-addr{color:#64748b;color:var(--text-light);font-size:.75rem}.finder-item-dist{color:#0ea5e9;color:var(--accent);font-size:.8rem;font-weight:600}.finder-nav-btn{background:#0ea5e9;background:var(--accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:600;min-height:36px;padding:8px 14px;white-space:nowrap}.finder-footer-112{background:#fef2f2;border-top:1px solid #fecaca;color:#ef4444;color:var(--danger);display:block;font-size:.9rem;font-weight:700;padding:14px;text-align:center;text-decoration:none}@media (prefers-color-scheme:dark){.finder-container{background:#1e293b}.finder-header{border-color:#334155}.finder-close{color:#e2e8f0}.finder-cat-btn,.finder-close{background:#334155}.finder-cat-btn.active{background:#1e3a5f}.finder-cat-desc,.finder-item{border-color:#334155}.finder-item-name{color:#f1f5f9}.finder-footer-112{background:#451a1a;border-color:#7f1d1d}.context-action-btn{background:#1e293b;border-color:#334155;color:#e2e8f0}.context-action-btn:hover{background:#334155}.context-action-btn.suggested{background:#1e3a5f;border-color:#0ea5e9;border-color:var(--accent);color:#7dd3fc}}@media (max-width:480px){.context-actions{gap:6px;padding:8px 0}.context-action-btn{min-height:36px;padding:6px 10px}.ctx-label{font-size:.72rem}.finder-categories{padding:8px 12px}.finder-cat-btn{min-width:54px;padding:8px 10px}}.skip-nav{background:#036;border-radius:0 0 8px 8px;color:#fff;font-weight:600;left:16px;padding:12px 24px;position:absolute;text-decoration:none;top:-100%;transition:top .2s;z-index:9999}.skip-nav:focus{top:0}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}:focus-visible{outline:3px solid #2563eb;outline-offset:2px}.lazy-loading{color:#64748b;font-size:1.1rem}.error-boundary,.lazy-loading{align-items:center;display:flex;justify-content:center;min-height:60vh}.error-boundary{padding:24px}.error-boundary-card{max-width:400px;text-align:center}.error-boundary-card h2{color:#dc2626;margin-bottom:8px}.error-boundary-card p{color:#64748b;margin-bottom:24px}.error-boundary-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.error-retry-btn{background:#2563eb;cursor:pointer}.error-112-btn,.error-retry-btn{border:none;border-radius:10px;color:#fff;font-weight:600;padding:12px 24px}.error-112-btn{background:#dc2626;text-decoration:none}.error-details{background:#fef2f2;border-radius:8px;font-size:.8rem;margin-top:16px;overflow-x:auto;padding:12px;text-align:left}@media (prefers-color-scheme:dark){:root{--bg:#0f172a;--surface:#1e293b;--text:#f1f5f9;--text-muted:#94a3b8;--border:#334155;--accent:#3b82f6}.helfer-page,.nearby-helpers,.profil-page,.simple-content,body{background:#fff;background:var(--bg);color:#334155;color:var(--text)}.hero-112{box-shadow:0 4px 20px #dc262666}.crisis-btn-simple,.quick-action{background:var(--surface);border-color:#e2e8f0;border-color:var(--border);color:#334155;color:var(--text)}.simple-question{color:#334155;color:var(--text)}.chat-input-area,.chat-messages,.message-bubble{background:var(--surface)}.message-bubble{border-color:#e2e8f0;border-color:var(--border);color:#334155;color:var(--text)}.message-bubble.assistant{background:#1e3a5f}.finder-overlay{background:var(--surface)}.finder-result-item{background:#fff;background:var(--bg)}.finder-result-item,.skill-btn,.tab-btn{border-color:#e2e8f0;border-color:var(--border)}.skill-btn,.tab-btn{background:var(--surface);color:#334155;color:var(--text)}.sos-badge{background:#1c1917;border-color:#44403c;color:#fca5a5}.sos-badge.setup{background:#172554;border-color:#1e40af;color:#93c5fd}input[type=range]{accent-color:#0ea5e9;accent-color:var(--accent)}.error-boundary-card h2{color:#f87171}.error-boundary-card p,.error-details{color:var(--text-muted)}.error-details{background:var(--surface)}.offline-banner.offline{background:#7c2d12}.offline-banner.online{background:#14532d}.lazy-loading{color:var(--text-muted)}}.quiz-page{background:#f8fafc;min-height:100vh;min-height:100dvh;padding:calc(1rem + env(safe-area-inset-top, 0)) 1rem 1rem}.quiz-header{margin-bottom:1.5rem}.quiz-header .back-button{background:none;border:none;color:var(--brand-navy);cursor:pointer;font-size:.9rem;padding:.5rem 0}.quiz-header .header-content h1{color:var(--brand-navy);font-size:1.5rem;margin:.5rem 0 .25rem}.quiz-header .subtitle{color:#64748b;font-size:.9rem;margin:0}.quiz-categories{margin-bottom:1.5rem}.quiz-category-btn{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;gap:.75rem;margin-bottom:.75rem;padding:1rem;text-align:left;transition:all .2s;width:100%}.quiz-category-btn:hover{border-color:var(--brand-navy);box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.quiz-category-btn.all{background:var(--brand-navy);border-color:var(--brand-navy);color:#fff}.quiz-category-btn .cat-icon{font-size:1.5rem}.quiz-category-btn .cat-label{flex:1 1;font-size:.95rem;font-weight:600}.quiz-category-btn .cat-count{font-size:.8rem;opacity:.7}.quiz-category-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr)}.quiz-category-grid .quiz-category-btn{flex-direction:column;gap:.25rem;padding:.75rem;text-align:center}.quiz-history{border-top:1px solid #e2e8f0;margin-top:1.5rem;padding-top:1rem}.quiz-history h3{color:var(--brand-navy);font-size:1rem;margin:0 0 .75rem}.history-list{display:flex;flex-direction:column;gap:.5rem}.history-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;display:flex;gap:.75rem;padding:.5rem .75rem}.history-score{font-size:1.1rem;font-weight:700;min-width:3rem}.history-detail{color:#64748b;flex:1 1;font-size:.85rem}.history-date{color:#94a3b8;font-size:.75rem}.quiz-playing-header{margin-bottom:1.5rem}.quiz-progress{color:#64748b;display:block;font-size:.85rem;margin-bottom:.5rem}.quiz-progress-bar{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden}.quiz-progress-fill{background:var(--brand-navy);border-radius:3px;height:100%;transition:width .3s ease}.quiz-question-section{display:flex;flex-direction:column;gap:1rem}.quiz-category-badge{align-self:flex-start;background:#f1f5f9;border-radius:12px;color:#64748b;font-size:.8rem;padding:.25rem .75rem}.quiz-question-text{color:var(--brand-navy);font-size:1.2rem;line-height:1.4;margin:0}.quiz-options{display:flex;flex-direction:column;gap:.5rem}.quiz-option{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;gap:.75rem;padding:.875rem 1rem;text-align:left;transition:all .2s;width:100%}.quiz-option:hover:not(:disabled){background:#f8fafc;border-color:var(--brand-navy)}.quiz-option.correct{background:#f0fdf4;border-color:#16a34a}.quiz-option.wrong{background:#fef2f2;border-color:#dc2626}.option-letter{align-items:center;background:#f1f5f9;border-radius:50%;color:var(--brand-navy);display:flex;flex-shrink:0;font-size:.8rem;font-weight:700;height:28px;justify-content:center;width:28px}.quiz-option.correct .option-letter{background:#16a34a;color:#fff}.quiz-option.wrong .option-letter{background:#dc2626;color:#fff}.option-text{flex:1 1;font-size:.9rem;line-height:1.3}.option-check,.option-cross{font-size:1.2rem;font-weight:700}.option-check{color:#16a34a}.option-cross{color:#dc2626}.quiz-explanation{border-radius:10px;font-size:.85rem;line-height:1.4;padding:.875rem}.quiz-explanation.correct{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.quiz-explanation.wrong{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.quiz-explanation strong{display:block;margin-bottom:.25rem}.quiz-explanation p{margin:0}.quiz-next-btn{background:var(--brand-navy);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.875rem;transition:transform .1s}.quiz-next-btn:active{transform:scale(.98)}.quiz-result-section{gap:1.25rem;padding:2rem 1rem}.quiz-result-section,.result-score-circle{align-items:center;display:flex;flex-direction:column}.result-score-circle{background:var(--brand-navy);border-radius:50%;color:#fff;height:140px;justify-content:center;width:140px}.result-score-number{font-size:2.5rem;font-weight:900;line-height:1}.result-score-label{font-size:.8rem;margin-top:.25rem;opacity:.8}.result-message{color:var(--brand-navy);font-size:1.1rem;margin:0;text-align:center}.result-stats{color:#64748b;font-size:.9rem}.result-categories{display:flex;flex-direction:column;gap:.5rem;max-width:320px;width:100%}.result-cat-item{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;display:flex;font-size:.85rem;justify-content:space-between;padding:.5rem .75rem}.result-cat-score{color:var(--brand-navy);font-weight:700}.result-actions{display:flex;gap:.75rem;margin-top:.5rem;max-width:320px;width:100%}.quiz-btn{border:none;border-radius:12px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:.875rem;transition:transform .1s}.quiz-btn:active{transform:scale(.98)}.quiz-btn.primary{background:var(--brand-navy);color:#fff}.quiz-btn.secondary{background:#f1f5f9;border:1.5px solid #e2e8f0;color:var(--brand-navy)}.result-gamification{align-items:center;display:flex;gap:1rem;max-width:320px;width:100%}.result-level{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.level-up-badge{align-self:flex-start;animation:level-pop .5s ease;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;padding:2px 8px}@keyframes level-pop{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.level-text{color:var(--brand-navy);font-size:.9rem;font-weight:700}.xp-bar{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden}.xp-bar.large{flex:1 1;height:8px}.xp-fill{background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:3px;height:100%;transition:width .5s ease}.xp-text{color:#64748b;font-size:.7rem}.streak-badge{background:#fff7ed;border-radius:8px;font-size:.8rem;font-weight:600;padding:.25rem .5rem;white-space:nowrap}.new-badges{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;max-width:320px;padding:.75rem;text-align:center;width:100%}.new-badges strong{color:#92400e;display:block;font-size:.85rem;margin-bottom:.5rem}.badge-list{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.badge-list.compact{gap:.25rem}.badge-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;display:flex;font-size:.8rem;gap:.25rem;padding:.25rem .5rem}.badge-item.new{animation:badge-glow 1s ease infinite;border-color:#f59e0b}@keyframes badge-glow{0%,to{box-shadow:0 0 0 0 #f59e0b4d}50%{box-shadow:0 0 0 4px #f59e0b00}}.badge-icon{font-size:1.2rem}.badge-name{font-size:.75rem;font-weight:600}.badge-icon-small{cursor:default;font-size:1.1rem}.badge-more{color:#64748b;font-size:.7rem;padding:.1rem .3rem}.quiz-progress-section{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;margin-bottom:1rem;padding:.75rem}.progress-header{align-items:center;display:flex;gap:.5rem}.level-badge{background:var(--brand-navy);border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;padding:2px 8px;white-space:nowrap}.ecall-overlay{align-items:center;background:#dc2626f2;color:#fff;display:flex;flex-direction:column;gap:1.5rem;inset:0;justify-content:center;padding:2rem;position:fixed;z-index:9999}.ecall-title{font-size:1.5rem;font-weight:900;text-align:center}.ecall-countdown{animation:countdown-pulse 1s ease infinite;font-size:5rem;font-weight:900}@keyframes countdown-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.ecall-info{font-size:.9rem;opacity:.9;text-align:center}.ecall-cancel-btn{background:#fff;border:none;border-radius:50px;color:#dc2626;cursor:pointer;font-size:1.2rem;font-weight:700;padding:1rem 3rem}
/*# sourceMappingURL=main.e43d6af2.css.map*/