.setup-overlay{background:linear-gradient(135deg, var(--brand-navy) 0%, var(--brand-navy-dark) 100%);z-index:10000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.setup-container{background:#fff;border-radius:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000080}.setup-step{text-align:center;padding:2rem}.setup-shake{flex-direction:column;align-items:center;gap:.5rem;display:flex}.shake-icon-wrapper{margin-bottom:.5rem}.shake-icon{font-size:4rem;animation:1.5s ease-in-out infinite shake-wobble;display:inline-block}@keyframes shake-wobble{0%,to{transform:rotate(0)}15%{transform:rotate(-12deg)}30%{transform:rotate(12deg)}45%{transform:rotate(-8deg)}60%{transform:rotate(8deg)}75%{transform:rotate(0)}}.shake-title{color:var(--brand-navy);margin:0;font-size:1.75rem;font-weight:700}.shake-subtitle{color:var(--brand-red,#dc2626);margin:0;font-size:1.3rem;font-weight:700}.setup-text{color:var(--brand-gray-600);margin:.75rem 0 1.5rem;line-height:1.6}.shake-contact-section{text-align:left;border-top:1px solid var(--brand-gray-200,#e2e8f0);width:100%;margin-top:.5rem;padding-top:1.25rem}.shake-contact-title{color:var(--brand-gray-700,#334155);align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1rem;font-weight:600;display:flex}.optional-badge{color:var(--brand-gray-400,#94a3b8);background:var(--brand-gray-100,#f1f5f9);border-radius:999px;padding:.125rem .5rem;font-size:.75rem;font-weight:400}.contact-saved-msg{color:#16a34a;text-align:center;background:#22c55e1a;border-radius:12px;padding:1rem;font-weight:600}.setup-form{text-align:left}.contact-form{gap:.75rem;display:grid}.contact-form input{border:2px solid var(--brand-gray-200,#e2e8f0);box-sizing:border-box;border-radius:12px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:border-color .2s;display:block}.contact-form input:focus{outline:2px solid var(--focus-ring,#2563eb);outline-offset:-2px;border-color:var(--brand-navy,#1e3a5f)}.contact-form input.input-error{background:#fef2f2;border-color:#dc2626}.phone-error-msg{color:#dc2626;margin-top:-.25rem;font-size:.85rem;font-weight:600;display:block}.setup-btn{cursor:pointer;border:none;border-radius:16px;width:100%;margin:0;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:block}.setup-btn.primary{box-shadow:0 4px 14px #1e3a7b59;color:#fff!important;background:#1e3a7b!important}.setup-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1e3a7b73;background:#152a5c!important}.setup-btn.primary:active{transform:translateY(0)}.setup-btn.primary.large{padding:1.25rem 2rem;font-size:1.1rem}.setup-btn.secondary{color:var(--brand-gray-500,#64748b);background:0 0}.setup-btn.secondary:hover{background:var(--brand-gray-100,#f1f5f9)}.setup-btn:disabled{opacity:.5;cursor:not-allowed}.add-btn{background:var(--color-success,#16a34a)!important;color:#fff!important}.shake-actions{flex-direction:column;gap:.5rem;width:100%;margin-top:1.5rem;display:flex}@media (width<=480px){.setup-overlay{padding:0}.setup-container{border-radius:0;flex-direction:column;min-height:100vh;max-height:100vh;display:flex}.setup-step{flex-direction:column;flex:1;padding:1.5rem;display:flex;overflow-y:auto}.shake-actions{margin-top:auto;padding-top:1rem}}body{transition:background-color .5s,color .5s}body.panic-mode{color:#1a2233;background-color:#e8f0fe}body.panic-mode button,body.panic-mode a[role=button],body.panic-mode .crisis-tile,body.panic-mode .steps-nav-btn{min-height:64px;padding:1rem 1.25rem;font-size:1.15rem;transition:min-height .5s,padding .5s,font-size .5s}body.panic-mode h1,body.panic-mode h2,body.panic-mode h3{font-size:2rem;transition:font-size .5s}body.panic-mode p,body.panic-mode .step-text,body.panic-mode .tile-label,body.panic-mode span{font-size:1.3rem;line-height:1.5;transition:font-size .5s}body.panic-mode .akut-simple,body.panic-mode .emergency-steps{color:#1a2233;background:linear-gradient(#e8f0fe 0%,#d4e4fc 100%);transition:background .5s}body.panic-mode .step-card{background:#fff;border:2px solid #93b5f0;border-radius:16px;transition:border-color .5s,box-shadow .5s;box-shadow:0 2px 12px #3b82f61f}body.panic-mode .steps-nav-btn.next,body.panic-mode .steps-nav-btn.done,body.panic-mode .panic-primary-action{color:#fff;background:#2563eb;border:3px solid #1d4ed8;border-radius:16px;font-size:1.3rem;font-weight:700;animation:2s ease-in-out infinite panic-pulse}@keyframes panic-pulse{0%,to{box-shadow:0 0 #2563eb66}50%{box-shadow:0 0 0 10px #2563eb00}}body.panic-mode .simple-header,body.panic-mode .hamburger-btn,body.panic-mode .voice-hint-btn,body.panic-mode .steps-controls,body.panic-mode .steps-quick-actions,body.panic-mode .handsfree-hint,body.panic-mode .aed-hint-banner,body.panic-mode .steps-auto-read-btn,body.panic-mode .steps-ki-help-btn,body.panic-mode footer,body.panic-mode .feedback-button{display:none!important}body.panic-mode .crisis-grid .crisis-tile:nth-child(n+4){display:none}body.panic-mode .crisis-grid{grid-template-columns:1fr;gap:.75rem}body.panic-mode .fixed-112,body.panic-mode .steps-fixed-112{background:#dc2626;border:3px solid #b91c1c;border-radius:16px;width:calc(100% - 2rem);min-height:72px;font-size:1.5rem;font-weight:800;animation:1.5s ease-in-out infinite panic-pulse-112;left:1rem;right:1rem}@keyframes panic-pulse-112{0%,to{transform:scale(1);box-shadow:0 0 #dc262680}50%{transform:scale(1.02);box-shadow:0 0 0 12px #dc262600}}body.panic-mode .crisis-tile{min-height:72px;padding:1.25rem 1.5rem}body.panic-mode .tile-icon{font-size:2rem}body.panic-mode .tile-desc,body.panic-mode .landing-subtitle,body.panic-mode .steps-progress{display:none}.panic-calm-message{text-align:center;color:#1e40af;background:#2563eb14;border-radius:12px;margin:.75rem 0;padding:1rem 1.5rem;font-size:1.2rem;font-weight:600;line-height:1.5;transition:opacity .5s}.panic-breathe-indicator{justify-content:center;align-items:center;gap:.75rem;margin:.5rem 0;padding:.75rem;display:flex}.panic-breathe-circle{background:#93c5fd;border-radius:50%;width:24px;height:24px;animation:4s ease-in-out infinite breathe}@keyframes breathe{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.5)}}.panic-breathe-text{color:#3b82f6;font-size:1rem;font-weight:500}.panic-mode-toggle{color:#475569;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;padding:.5rem .75rem;font-size:.85rem;transition:all .3s}.panic-mode-toggle.active{color:#1d4ed8;background:#dbeafe;border-color:#3b82f6}.crisis-tile,.steps-nav-btn,.step-card,.step-text,h1,h2,h3,p{transition:all .5s}.menu-overlay{z-index:9998;background:#00000080;animation:.2s fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.menu-panel{z-index:9999;background:#fff;flex-direction:column;width:300px;max-width:85vw;height:100vh;animation:.25s slideIn;display:flex;position:fixed;top:0;left:0;box-shadow:4px 0 20px #00000026}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.menu-header{padding:1.5rem;padding-top:calc(1.5rem + env(safe-area-inset-top,0));background:linear-gradient(135deg, var(--brand-navy) 0%, var(--brand-navy-dark) 100%);color:#fff;justify-content:space-between;align-items:flex-start;display:flex}.menu-user{align-items:center;gap:.875rem;display:flex}.menu-avatar{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;font-weight:600;display:flex}.menu-user-info{flex-direction:column;gap:.25rem;display:flex}.menu-greeting{font-size:1rem;font-weight:600}.menu-setup-btn{color:#fffc;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.8rem}.menu-setup-btn:hover{color:#fff;text-decoration:underline}.menu-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;width:44px;height:44px;font-size:1.25rem;transition:background .2s}.menu-close:hover{background:#fff3}.menu-close:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:2px}.menu-item:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:-2px}.menu-setup-btn:focus-visible{outline:2px solid var(--focus-ring,#2563eb);outline-offset:2px}.menu-profile-summary{background:var(--brand-gray-50);border-bottom:1px solid var(--brand-gray-200);flex-wrap:wrap;gap:.5rem;padding:.875rem 1.5rem;display:flex}.profile-badge{border-radius:var(--radius-sm);border:1px solid var(--brand-gray-200);background:#fff;padding:.25rem .5rem;font-size:.75rem}.profile-badge.blood{color:var(--brand-red);border-color:#dc26264d}.profile-badge.allergy{color:#ea580c;border-color:#f973164d}.profile-badge.contacts{color:var(--brand-navy);border-color:#1e3a5f4d}.menu-list{flex:1;margin:0;padding:.5rem 0;list-style:none;overflow-y:auto}.menu-item{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.875rem;width:100%;padding:1rem 1.5rem;font-size:1rem;transition:background .15s;display:flex}.menu-item:hover{background:#f1f5f9}.menu-icon{text-align:center;width:28px;font-size:1.25rem}.menu-label{color:#1e293b;flex:1}.menu-badge{color:#fff;background:#ef4444;border-radius:10px;padding:.125rem .5rem;font-size:.7rem}.menu-footer{padding:1rem 1.5rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0));border-top:1px solid var(--brand-gray-200);background:var(--brand-gray-50);align-items:center;gap:.75rem;display:flex}.menu-footer-text{flex-direction:column;gap:.125rem;display:flex}.menu-footer-tagline{color:var(--brand-navy);font-size:.8rem;font-weight:500}.menu-version{color:var(--brand-gray-400);font-size:.7rem}@media (prefers-reduced-motion:reduce){.menu-overlay,.menu-panel{animation:none}}.offline-banner-global{color:#92400e;background:#fef3c7;border:2px solid #f59e0b;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.75rem 1rem;display:flex}.offline-banner-icon{flex-shrink:0;font-size:1.25rem}.offline-banner-content{flex-direction:column;gap:.125rem;display:flex}.offline-banner-title{font-size:.9rem;font-weight:700}.offline-banner-text{opacity:.85;font-size:.8rem;font-weight:400}.emergency-steps.panic .offline-banner-global,.akut-simple.panic .offline-banner-global{color:#fef3c7;background:#78350f;border-color:#f59e0b}.akut-simple{background:var(--bg,#fff);height:100dvh;max-height:100dvh;color:var(--text,#334155);padding-bottom:calc(4rem + env(safe-area-inset-bottom,0));flex-direction:column;display:flex;overflow:hidden}.simple-header{padding:.5rem 1rem;padding-top:calc(.5rem + env(safe-area-inset-top,0));flex:none;justify-content:space-between;align-items:center;display:flex}.header-brand{align-items:center;display:flex}.header-logo-img{border-radius:8px;width:auto;height:32px}.header-actions{align-items:center;gap:.5rem;display:flex}.voice-toggle-btn{background:var(--bg-soft,#f1f5f9);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;display:flex}.voice-toggle-btn.active{background:var(--accent-soft,#dbeafe)}.hamburger-btn{background:var(--bg-soft,#f1f5f9);cursor:pointer;border:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:44px;height:44px;display:flex}.hamburger-btn span{background:var(--text,#334155);border-radius:1px;width:18px;height:2px;display:block}.landing-content{flex-direction:column;flex:auto;gap:.5rem;min-height:0;padding:.25rem 1rem .5rem;display:flex}.landing-question{color:var(--text-dark,#1e293b);text-align:center;flex:none;margin:.25rem 0;font-size:clamp(1.15rem,4.5vw,1.5rem);font-weight:800;line-height:1.2}.crisis-grid{flex:auto;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:1fr 1fr;gap:.5rem;min-height:0;display:grid}.crisis-tile{border:2px solid #0000;border-left:4px solid var(--tile-color,#94a3b8);background:var(--tile-bg,var(--bg-soft,#f8fafc));cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;min-height:0;padding:.5rem;transition:transform .1s,box-shadow .1s,border-color .15s,background .15s;display:flex;overflow:hidden}.crisis-tile:hover{border-color:var(--tile-color,#94a3b8);background:color-mix(in srgb, var(--tile-bg,var(--bg-soft,#f8fafc)) 80%, var(--tile-color,#94a3b8))}.crisis-tile:active{box-shadow:0 0 0 3px var(--tile-color,#64748b);transform:scale(.97)}.tile-icon{font-size:clamp(1.6rem,7vw,2.3rem);line-height:1}.tile-label{color:var(--tile-color,var(--text,#334155));text-align:center;font-size:clamp(.85rem,3.2vw,1.05rem);font-weight:700;line-height:1.15}.tile-subtitle{color:var(--text-light,#64748b);text-align:center;opacity:.85;font-size:clamp(.65rem,2.2vw,.75rem);font-weight:500;line-height:1.2}.settings-quick-btn{background:var(--bg-soft,#f1f5f9);cursor:pointer;width:44px;height:44px;color:var(--text,#334155);border:none;border-radius:10px;justify-content:center;align-items:center;display:flex}.settings-quick-btn:hover{background:var(--accent-soft,#dbeafe)}.sos-badge{background:var(--success-soft,#f0fdf4);color:var(--success,#15803d);border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;display:flex}.sos-badge-dot{background:var(--success,#22c55e);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.sos-setup-btn{border:1px dashed var(--border,#cbd5e1);color:var(--text-light,#64748b);cursor:pointer;text-align:center;background:0 0;border-radius:10px;padding:.5rem 1rem;font-size:.85rem}.call-prep-link{color:var(--text-light,#64748b);cursor:pointer;text-align:center;text-underline-offset:2px;background:0 0;border:none;padding:.25rem;font-size:.85rem;text-decoration:underline}.fixed-112{background:var(--danger,#dc2626);color:#fff;padding:.85rem 1.5rem;padding-bottom:calc(.85rem + env(safe-area-inset-bottom,0));cursor:pointer;z-index:10000;border:none;justify-content:center;align-items:center;gap:.75rem;min-height:3.75rem;animation:3s ease-in-out infinite heartbeat-112;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #dc26264d}@keyframes heartbeat-112{0%,to{box-shadow:0 -4px 20px #dc26264d}50%{box-shadow:0 -4px 28px #dc262680}}.fixed-112-number{letter-spacing:.05em;font-size:1.4rem;font-weight:900}.fixed-112-label{letter-spacing:.1em;font-size:.95rem;font-weight:700}.fixed-112-location{font-size:1rem}.fixed-112-demo-badge{color:#fbbf24;letter-spacing:.1em;text-transform:uppercase;background:#00000080;border-radius:4px;padding:2px 6px;font-size:.6rem;font-weight:800;position:absolute;top:4px;right:8px}.voice-hints{background:var(--accent-soft,#dbeafe);border-radius:8px;flex:none;align-items:center;gap:.4rem;margin:0 1rem;padding:.35rem 1rem;font-size:.75rem;animation:.3s ease-out fadeInHint;display:flex;overflow:hidden}@keyframes fadeInHint{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.voice-hints-label{color:var(--text-light,#64748b);white-space:nowrap;font-weight:600}.voice-hints-cmd{background:var(--bg,#fff);color:var(--text,#334155);white-space:nowrap;border-radius:4px;padding:2px 6px;font-family:inherit;font-weight:600}.onboarding-nudge{background:var(--warning-soft,#fef3c7);border:1px solid var(--warning-border,#fcd34d);color:var(--warning-text,#92400e);cursor:pointer;text-align:left;border-radius:10px;flex:none;justify-content:space-between;align-items:center;gap:.5rem;margin:0 1rem;padding:.5rem .75rem;font-size:.8rem;font-weight:600;line-height:1.3;display:flex}.onboarding-nudge:active{background:#fde68a}.onboarding-nudge-arrow{flex-shrink:0;font-size:1rem}.bottom-nav{background:var(--bg,#fff);border-top:1px solid var(--border,#e2e8f0);padding-bottom:env(safe-area-inset-bottom,0);z-index:10000;justify-content:space-around;align-items:flex-end;min-height:3.5rem;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{cursor:pointer;color:var(--text-light,#94a3b8);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;min-height:3.5rem;padding:.35rem 0;display:flex}.bottom-nav-item.active{color:var(--danger,#dc2626)}.bottom-nav-icon{font-size:1.15rem;line-height:1}.bottom-nav-label{letter-spacing:.02em;font-size:.6rem;font-weight:600}.bottom-nav-112{background:var(--danger,#dc2626);color:#fff;border:3px solid var(--bg,#fff);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;margin-top:-16px;animation:3s ease-in-out infinite heartbeat-112;display:flex;position:relative;box-shadow:0 2px 12px #dc262666}.bottom-nav-112-number{letter-spacing:.05em;font-size:1rem;font-weight:900}.bottom-nav-112-gps{font-size:.65rem;position:absolute;top:-2px;right:-2px}.bottom-nav-112 .fixed-112-demo-badge{background:#0009;padding:1px 4px;font-size:.5rem;top:auto;bottom:-14px;right:50%;transform:translate(50%)}.akut-simple.panic{--panic-bg:#1a1a2e;--panic-text:#f1f5f9;--panic-text-muted:#94a3b8;--panic-surface:#334155;background:var(--panic-bg);padding:.5rem 1rem;padding-top:calc(.75rem + env(safe-area-inset-top,0));padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0));justify-content:flex-start;gap:.5rem}.panic-hint{top:calc(1rem + env(safe-area-inset-top,0));background:var(--panic-surface);color:var(--panic-text);text-align:center;z-index:200;border-radius:12px;padding:.75rem 1rem;font-size:.9rem;font-weight:600;animation:3s forwards fadeHint;position:fixed;left:1rem;right:1rem}@keyframes fadeHint{0%{opacity:1}70%{opacity:1}to{opacity:0}}.panic-calm-message{text-align:center;color:var(--panic-text-muted);letter-spacing:.02em;flex:none;font-size:.85rem;font-weight:600}.panic-question{color:var(--panic-text);flex:none;margin:0;font-size:1.4rem}.panic-grid{flex:auto;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:1fr 1fr;gap:.5rem;min-height:0}.panic-tile{border:2px solid #ffffff26;border-left:4px solid var(--tile-color,#ffffff4d);min-height:0}.panic-tile .tile-icon{font-size:clamp(1.4rem,5vw,2rem)}.panic-tile .tile-label{color:var(--panic-text);font-size:clamp(.8rem,2.8vw,.95rem)}.panic-tile .tile-subtitle{color:var(--panic-text-muted);font-size:clamp(.6rem,2vw,.7rem)}.sos-send-btn{color:#fff;cursor:pointer;text-align:center;background:#1e40af;border:none;border-radius:12px;flex:none;padding:.6rem 1rem;font-size:.95rem;font-weight:700}.panic-exit-btn{border:1px solid var(--panic-surface);color:var(--panic-text-muted);cursor:pointer;text-align:center;background:0 0;border-radius:10px;flex:none;min-height:36px;padding:.5rem;font-size:.8rem}.ecall-overlay{z-index:9999;background:#000000f2;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex;position:fixed;inset:0}.ecall-title{color:var(--warning,#fbbf24);text-align:center;font-size:1.5rem}.ecall-countdown{color:var(--danger,#dc2626);font-size:5rem;font-weight:900;line-height:1}.ecall-info{color:#e2e8f0;text-align:center;font-size:1rem;line-height:1.4}.confirm-112-overlay{z-index:10001;background:#000000d9;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out fadeIn112;display:flex;position:fixed;inset:0}@keyframes fadeIn112{0%{opacity:0}to{opacity:1}}.confirm-112-card{background:var(--card,white);text-align:center;border-radius:24px;width:100%;max-width:340px;padding:2rem 1.5rem;box-shadow:0 20px 60px #0006}.confirm-112-icon{margin-bottom:.75rem;font-size:3rem}.confirm-112-title{color:var(--text-dark,#1e293b);margin:0 0 .5rem;font-size:1.5rem;font-weight:800}.confirm-112-text{color:var(--text-light,#64748b);margin:0 0 1.5rem;font-size:1rem;line-height:1.4}.confirm-112-call-btn{background:var(--danger,#dc2626);color:#fff;cursor:pointer;border:none;border-radius:14px;width:100%;min-height:56px;margin-bottom:.75rem;padding:1rem;font-size:1.2rem;font-weight:800;display:block}.confirm-112-call-btn:active{background:#b91c1c}.confirm-112-cancel-btn{width:100%;color:var(--text-light,#64748b);cursor:pointer;background:0 0;border:none;min-height:44px;padding:.75rem;font-size:1rem;display:block}.confirm-112-call-btn:focus-visible,.confirm-112-cancel-btn:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:2px}@media (prefers-reduced-motion:reduce){.confirm-112-overlay{animation:none}}.ecall-cancel-btn{background:var(--success,#22c55e);color:#fff;cursor:pointer;border:none;border-radius:16px;margin-top:1rem;padding:1.25rem 3rem;font-size:1.25rem;font-weight:700}.stress-debug{color:#92400e;z-index:50;background:#fef3c7;border-radius:4px;padding:.25rem .5rem;font-size:.7rem;position:fixed;bottom:5rem;right:.5rem}@media (width<=360px){.landing-question{margin:.15rem 0;font-size:1.1rem}.crisis-grid{gap:.4rem}.crisis-tile{gap:.15rem;padding:.4rem}.tile-subtitle{display:none}}@media (width<=300px){.crisis-grid{grid-template-rows:repeat(6,minmax(0,1fr));grid-template-columns:1fr}.tile-icon{font-size:1.5rem}.tile-label{font-size:.8rem}}@media (height<=600px){.landing-question,.panic-calm-message{display:none}.panic-question{font-size:1.1rem}.tile-subtitle,.voice-hints,.onboarding-nudge{display:none}.simple-header{padding:.35rem .75rem;padding-top:calc(.35rem + env(safe-area-inset-top,0))}.header-logo-img{height:26px}.akut-simple{padding-bottom:calc(3.75rem + env(safe-area-inset-bottom,0))}.akut-simple.panic{padding-top:calc(.5rem + env(safe-area-inset-top,0));gap:.25rem}.fixed-112{min-height:3.25rem;padding:.6rem 1.25rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0))}.fixed-112-number{font-size:1.2rem}}@media (width>=768px){.akut-simple{max-width:500px;margin:0 auto}.fixed-112{border-radius:16px 16px 0 0;max-width:500px;left:50%;transform:translate(-50%)}.bottom-nav{border-left:1px solid var(--border,#e2e8f0);border-right:1px solid var(--border,#e2e8f0);border-radius:16px 16px 0 0;max-width:500px;left:50%;transform:translate(-50%)}}.crisis-tile:focus-visible,.voice-toggle-btn:focus-visible,.hamburger-btn:focus-visible,.settings-quick-btn:focus-visible,.fixed-112:focus-visible,.bottom-nav-item:focus-visible,.bottom-nav-112:focus-visible,.onboarding-nudge:focus-visible,.sos-send-btn:focus-visible,.panic-exit-btn:focus-visible,.ecall-cancel-btn:focus-visible,.sos-setup-btn:focus-visible,.call-prep-link:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:2px}.akut-simple.panic .crisis-tile:focus-visible,.akut-simple.panic .fixed-112:focus-visible,.akut-simple.panic .sos-send-btn:focus-visible,.akut-simple.panic .panic-exit-btn:focus-visible{outline-color:var(--focus-ring,#93c5fd)}@media (prefers-reduced-motion:reduce){.sos-badge-dot,.panic-hint{animation:none}.crisis-tile{transition:none}.fixed-112,.bottom-nav-112,.voice-hints{animation:none}}.a11y-large .crisis-tile{min-height:110px;font-size:1.1rem}.a11y-large .tile-label{font-size:1.2rem}.a11y-large .tile-icon{font-size:2.2rem}.a11y-large .fixed-112{min-height:72px;font-size:1.3rem}.a11y-large .landing-question{font-size:1.8rem}.cookie-consent-overlay{z-index:9998;padding:16px;padding-bottom:calc(4.5rem + env(safe-area-inset-bottom,0));background:#00000080;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.cookie-consent-banner{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:600px;padding:24px;animation:.3s ease-out slideUp}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.cookie-consent-banner h2{color:var(--text-dark);margin:0 0 12px;font-size:1.25rem}.cookie-description{color:var(--text-light);margin-bottom:20px;font-size:.9rem;line-height:1.5}.cookie-options{margin-bottom:16px}.cookie-option{background:var(--bg-soft);border-radius:var(--radius-sm);cursor:pointer;margin-bottom:8px;padding:12px;transition:background .2s;display:block}.cookie-option:hover:not(.disabled){background:var(--card-hover)}.cookie-option.disabled{opacity:.7;cursor:default}.option-header{align-items:center;gap:10px;display:flex}.option-header input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent)}.option-header input[type=checkbox]:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:2px}.option-name{color:var(--text-dark);font-weight:600}.option-desc{color:var(--text-light);margin:4px 0 0 28px;font-size:.85rem}.cookie-buttons{flex-wrap:wrap;gap:10px;display:flex}.cookie-btn{border-radius:var(--radius-sm);cursor:pointer;border:none;min-height:44px;padding:12px 20px;font-size:.95rem;font-weight:500;transition:all .2s}.cookie-btn:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:2px}.cookie-btn.primary{background:var(--accent);color:#fff;flex:1}.cookie-btn.primary:hover{background:#0284c7}.cookie-btn.secondary{background:var(--bg-soft);color:var(--text);border:1px solid var(--border)}.cookie-btn.secondary:hover{background:var(--card-hover)}.cookie-btn.text{color:var(--accent);background:0 0;padding:12px}.cookie-btn.text:hover{text-decoration:underline}.cookie-policy-link{text-align:center;margin-top:16px;font-size:.85rem}.cookie-policy-link a{color:var(--accent);text-decoration:none}.cookie-policy-link a:hover{text-decoration:underline}@media (width<=500px){.cookie-consent-banner{padding:20px}.cookie-buttons{flex-direction:column}.cookie-btn{text-align:center;width:100%}}@media (prefers-reduced-motion:reduce){.cookie-consent-banner{animation:none}}.cookie-option.medical-highlight{background:var(--bg-soft);border-left:3px solid #dc2626}.cookie-option.medical-highlight .option-desc{color:#dc2626;font-weight:500}.medical-disclaimer-banner{z-index:9990;padding:.65rem 1rem;padding-top:calc(.65rem + env(safe-area-inset-top,0));background:var(--warning-soft,#fef3c7);border-bottom:2px solid var(--warning,#f59e0b);align-items:center;gap:.75rem;animation:.3s ease-out disclaimerSlideDown;display:flex;position:fixed;top:0;left:0;right:0}@keyframes disclaimerSlideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.medical-disclaimer-content{color:var(--text-dark,#1e293b);flex-direction:column;flex:1;gap:.15rem;font-size:.85rem;line-height:1.4;display:flex}.medical-disclaimer-content strong{font-size:.9rem}.medical-disclaimer-btn{background:var(--warning,#f59e0b);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;flex-shrink:0;min-height:36px;padding:.5rem 1rem;font-size:.85rem;font-weight:700}.medical-disclaimer-btn:hover{background:#d97706}.medical-disclaimer-btn:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:2px}@media (width<=400px){.medical-disclaimer-banner{flex-direction:column;align-items:stretch;gap:.5rem}.medical-disclaimer-btn{text-align:center}}@media (prefers-reduced-motion:reduce){.medical-disclaimer-banner{animation:none}}: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;--focus-ring:#2563eb}[data-theme=dark]{--bg:#0f172a;--bg-soft:#1e293b;--card:#1e293b;--card-hover:#334155;--text:#e2e8f0;--text-light:#a8b5c8;--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;--focus-ring:#93c5fd}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f172a;--bg-soft:#1e293b;--card:#1e293b;--card-hover:#334155;--text:#e2e8f0;--text-light:#a8b5c8;--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;--focus-ring:#93c5fd}}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:18px;line-height:1.6}body.xlarge-text{font-size:24px}body.high-contrast{--text:#000;--text-light:#1f2937;--accent:#0369a1}.container{width:min(900px,100%);margin:0 auto;padding:20px}.nav{background:var(--bg);border-bottom:1px solid var(--border);z-index:100;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex;position:sticky;top:0}.nav .brand{color:var(--accent);letter-spacing:-.02em;font-size:1.25rem;font-weight:800}.nav .links{gap:8px;display:flex}.nav .link{color:var(--text);border-radius:var(--radius-sm);padding:8px 16px;font-weight:500;text-decoration:none;transition:all .2s}.nav .link:hover{background:var(--bg-soft)}.nav .link.active{background:var(--accent-soft);color:var(--accent)}.list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.card{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow-sm);padding:20px;transition:all .2s}.card:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card:focus{outline:3px solid var(--accent);outline-offset:2px}.card.urgent{border-left:4px solid var(--danger);background:var(--danger-soft)}.btn{background:var(--bg-soft);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:1rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:hover{background:var(--card-hover);border-color:#cbd5e1}.btn:focus{outline:3px solid var(--accent);outline-offset:2px}.btn.primary{background:var(--accent);color:#fff;border:none;font-weight:600}.btn.primary:hover{background:#0284c7}.btn.danger{background:var(--danger);color:#fff;border:none;padding:16px 24px;font-size:1.1rem;font-weight:700}.btn.danger:hover{background:#dc2626}.chip{background:var(--bg-soft);border:1px solid var(--border);color:var(--text);border-radius:999px;align-items:center;padding:6px 12px;font-size:.875rem;font-weight:500;display:inline-flex}.chat-container{flex-direction:column;gap:12px;display:flex}.chat-list{background:var(--bg-soft);border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;gap:12px;min-height:300px;max-height:50vh;padding:16px;display:flex;overflow-y:auto}.msg{flex-direction:column;max-width:85%;display:flex}.msg.user{align-self:flex-end}.msg.assistant{align-self:flex-start}.msg.user .bubble{background:var(--accent);color:#fff;border-radius:16px 16px 4px}.msg.assistant .bubble{color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px 16px 16px 4px}.bubble{padding:12px 16px;font-size:1rem;line-height:1.5}.composer{border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;gap:12px;padding:12px;display:flex}input,textarea{background:var(--bg-soft);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:12px 16px;font-size:1rem;transition:all .2s}input:focus,textarea:focus{outline:2px solid var(--focus-ring,#2563eb);outline-offset:-2px;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input::placeholder,textarea::placeholder{color:var(--text-light)}.chat-textarea{resize:none;min-height:44px;max-height:120px;line-height:1.4;overflow-y:auto}.emergency-hint strong{color:#b45309}.offline-banner{background:var(--warning-soft);border-radius:var(--radius);border:1px solid #fbbf24;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.offline-banner .icon{font-size:1.5rem}.steps-list{counter-reset:step;margin:0;padding:0;list-style:none}.steps-list li{border-bottom:1px solid var(--border);gap:16px;padding:16px 0;display:flex}.steps-list li:last-child{border-bottom:none}.steps-list li:before{counter-increment:step;content:counter(step);background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;min-width:32px;height:32px;font-size:.9rem;font-weight:700;display:flex}.info-box.warning{background:var(--warning-soft);border-left-color:var(--warning)}.info-box.danger{background:var(--danger-soft);border-left-color:var(--danger)}.info-box.success{background:var(--success-soft);border-left-color:var(--success)}.loading{color:var(--text-light);justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.loading:after{content:"";border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (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){.card,.btn,.bubble{transition:all .2s}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@keyframes pulse-emergency{0%,to{transform:scale(1);box-shadow:0 4px 15px #dc262666}50%{transform:scale(1.02);box-shadow:0 6px 25px #dc262699}}.category-title{color:var(--text);text-align:center;font-size:.8rem;font-weight:600}.language-bar{background:#fff;border-top:1px solid #e2e8f0;justify-content:center;gap:8px;padding:12px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #0000000d}.lang-btn{background:var(--bg-soft);cursor:pointer;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.5rem;transition:all .2s;display:flex}.lang-btn:hover,.lang-btn:focus{border-color:var(--accent)}.lang-btn.active{border-color:var(--accent);background:var(--accent-soft)}.photo-analysis-page{background:var(--bg);min-height:100vh;padding:16px}.photo-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.photo-header h1{margin:0;font-size:1.5rem}.back-btn{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:8px 16px;font-size:1rem}.instructions{text-align:center;color:var(--text-light);margin-bottom:24px;line-height:1.6}.capture-options{flex-direction:column;gap:16px;display:flex}.capture-btn{cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;gap:12px;padding:20px;font-size:1.125rem;font-weight:600;transition:all .2s;display:flex}.capture-btn.camera{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%)}.capture-btn.upload{color:var(--text);background:#fff;border:2px solid #e2e8f0}.capture-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.btn-icon{font-size:1.5rem}.camera-view{border-radius:16px;position:relative;overflow:hidden}.camera-preview{border-radius:16px;width:100%}.shutter-btn{cursor:pointer;background:#fff;border:4px solid #e2e8f0;border-radius:50%;width:72px;height:72px;font-size:2rem;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0003}.preview-section{flex-direction:column;gap:16px;display:flex}.preview-image{border-radius:16px;width:100%;box-shadow:0 4px 16px #0000001a}.action-buttons{flex-direction:column;gap:12px;display:flex}.analyze-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:1.125rem;font-weight:600;display:flex}.analyze-btn:disabled{opacity:.7;cursor:not-allowed}.retry-btn{background:var(--bg-soft);border:1px solid var(--border);cursor:pointer;border-radius:12px;padding:12px;font-size:1rem}.result-section{flex-direction:column;gap:16px;display:flex}.severity-badge{color:#fff;text-align:center;border-radius:12px;padding:12px 20px;font-size:1.125rem;font-weight:700}.situation-box{border:1px solid var(--border);background:#fff;border-radius:12px;padding:16px}.situation-box h3{color:var(--text-light);margin:0 0 8px;font-size:.9rem}.situation-box p{margin:0;font-size:1.125rem}.emergency-call-btn{color:#fff;background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:20px;font-size:1.25rem;font-weight:700;text-decoration:none;animation:2s infinite pulse-emergency;display:flex}.steps-box{border:1px solid var(--border);background:#fff;border-radius:12px;padding:16px}.steps-box h3{color:var(--text-light);margin:0 0 12px;font-size:.9rem}.assistant-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:1rem;font-weight:600;display:flex}.error-message{background:var(--danger-soft);color:#b91c1c;text-align:center;border-radius:12px;padding:12px 16px}.back-button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:8px;margin-bottom:12px;padding:8px 16px;font-size:1rem}.crisis-title-row h1{margin:0;font-size:1.5rem}.first-steps-section h2{color:var(--text-dark);margin:0 0 16px;font-size:1.125rem}.step-number{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;min-width:32px;height:32px;font-size:1rem;font-weight:700;display:flex}.step-text{color:var(--text-dark);padding-top:4px;font-size:1.1rem;font-weight:500;line-height:1.4}.infrastructure-section h2{color:var(--text-light);margin-bottom:12px;font-size:1rem;font-weight:600}.offline-banner{z-index:9999;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:.95rem;font-weight:600;animation:.3s ease-out slideDown;display:flex;position:fixed;top:0;left:0;right:0}.offline-banner.offline{color:#78350f;background:linear-gradient(135deg,#fbbf24,#f59e0b)}.offline-banner.online{color:#fff;background:linear-gradient(135deg,#34d399,#10b981)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.install-prompt{z-index:9998;background:#fff;border-radius:16px;max-width:400px;margin:0 auto;padding:16px;animation:.4s ease-out slideUp;position:fixed;bottom:20px;left:20px;right:20px;box-shadow:0 10px 40px #00000026,0 0 0 1px #0000000d}.install-content{align-items:center;gap:12px;margin-bottom:12px;display:flex}.install-icon{font-size:2rem}.install-text strong{color:var(--text-dark);font-size:1.1rem;display:block}.install-text p{color:var(--text-light);margin:2px 0 0;font-size:.9rem}.install-actions{gap:10px;display:flex}.install-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px 20px;font-size:1rem;font-weight:600;transition:all .2s}.install-btn:hover{background:#0284c7;transform:translateY(-1px)}.install-dismiss{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:12px 16px;font-weight:500}.install-dismiss:hover{background:var(--bg-soft);color:var(--text)}.route-overlay{z-index:10000;background:#0009;justify-content:center;align-items:flex-end;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.route-modal{background:#fff;border-radius:24px 24px 0 0;width:100%;max-width:500px;max-height:85vh;padding:24px;animation:.3s ease-out slideUp;overflow-y:auto}.route-header{align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.route-dest-icon{flex-shrink:0;font-size:2.5rem}.route-header h2{color:var(--text-dark);flex:1;margin:0;font-size:1.25rem;font-weight:700}.route-address{color:var(--text-light);margin:4px 0 0;font-size:.9rem}.route-close{background:var(--bg-soft);cursor:pointer;width:36px;height:36px;color:var(--text-light);border:none;border-radius:50%;flex-shrink:0;font-size:1.25rem}.route-loading{text-align:center;padding:40px 20px}.route-spinner{font-size:3rem;animation:1s ease-in-out infinite pulse}.route-loading p{color:var(--text-light);margin-top:12px}.route-error{text-align:center;padding:20px}.route-error p{color:var(--text-light);margin-bottom:16px}.route-visual{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:16px;justify-content:center;align-items:center;gap:30px;margin-bottom:20px;padding:24px;display:flex}.route-arrow{color:var(--accent);font-size:4rem;transition:transform .3s}.route-distance{text-align:center}.distance-value{color:var(--text-dark);font-size:2rem;font-weight:800;display:block}.distance-time{color:var(--text-light);margin-top:4px;font-size:1.1rem;display:block}.route-direction{background:var(--bg-soft);border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:16px;display:flex}.route-steps{justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px 0;display:flex}.step-visual{flex-direction:column;align-items:center;gap:6px;display:flex}.step-visual .step-icon{background:var(--bg-soft);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:2rem;display:flex}.step-visual.destination .step-icon{background:var(--success-soft)}.step-visual .step-label{color:var(--text-light);text-align:center;max-width:80px;font-size:.85rem;font-weight:500}.step-line{color:var(--accent);flex:1;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:relative}.step-line:before{content:"";background:linear-gradient(90deg, var(--bg-soft), var(--accent), var(--success));z-index:-1;border-radius:2px;height:3px;position:absolute;top:50%;left:10px;right:10px}.route-actions{gap:12px;display:flex}.route-open-maps{cursor:pointer;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex}.route-open-maps.primary{background:var(--success);color:#fff}.route-open-maps.primary:hover{background:#059669;transform:translateY(-2px)}.route-open-maps:not(.primary){background:var(--bg-soft);color:var(--text)}.mode-toggle{background:var(--bg-soft);border-radius:12px;margin-bottom:16px;padding:4px;display:flex}.mode-btn{cursor:pointer;background:0 0;border:none;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:10px 8px;transition:all .2s;display:flex}.mode-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a}.mode-btn .mode-icon{font-size:1.5rem}.mode-btn .mode-label{color:var(--text-light);font-size:.75rem;font-weight:600}.mode-btn.active .mode-label{color:var(--text-dark)}.simple-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.progress-dot{background:#e2e8f0;border-radius:50%;width:12px;height:12px;transition:all .3s}.progress-dot.active{background:var(--accent);transform:scale(1.3)}.progress-dot.done{background:var(--success)}@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)}}.nav-btn{cursor:pointer;border:none;border-radius:12px;padding:14px 20px;font-size:1rem;font-weight:600;transition:all .2s}.nav-btn.prev{background:var(--bg-soft);color:var(--text)}.nav-btn.next{background:var(--accent);color:#fff}.nav-btn:hover{transform:translateY(-2px)}.nav-btn:active{transform:translateY(0)}.step-counter{color:var(--text-light);font-size:1rem;font-weight:600}.cpr-overlay{z-index:10001;background:#000c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cpr-modal{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:400px;padding:24px}.cpr-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.cpr-header h2{margin:0;font-size:1.25rem;font-weight:700}.cpr-close{background:var(--bg-soft);cursor:pointer;width:36px;height:36px;color:var(--text-light);border:none;border-radius:50%;font-size:1.25rem}.cpr-instructions{background:var(--bg-soft);border-radius:12px;margin-bottom:20px;padding:16px}.cpr-instructions p{color:var(--text);margin:4px 0}.cpr-instructions .cpr-detail{color:var(--text-light);font-size:.9rem}.cpr-display{border-radius:20px;flex-direction:column;justify-content:center;align-items:center;margin-bottom:16px;padding:40px 20px;transition:all .1s;display:flex}.cpr-display.ready{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{margin-bottom:8px;font-size:4rem}.cpr-count{color:var(--text-dark);font-size:5rem;font-weight:900;line-height:1}.cpr-text{color:var(--text-dark);margin-top:8px;font-size:1.5rem;font-weight:700}.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:var(--text-light);margin-bottom:16px;font-size:1rem;font-weight:600}.cpr-controls{margin-bottom:16px}.cpr-start,.cpr-stop{cursor:pointer;border:none;border-radius:12px;width:100%;padding:18px;font-size:1.5rem;font-weight:700;transition:all .2s}.cpr-start{color:#fff;background:#22c55e}.cpr-start:hover{background:#16a34a}.cpr-stop{color:#fff;background:#dc2626}.cpr-stop:hover{background:#b91c1c}.cpr-emergency{background:var(--bg-soft);color:#dc2626;border-radius:10px;margin-bottom:12px;padding:12px;font-weight:600;text-decoration:none;display:block}.cpr-reminder{color:var(--text-light);margin:0;font-size:.9rem}@keyframes pulse-subtle{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 8px #dc262600}}.emergency-prep-header h2{color:#dc2626;margin:0;font-size:1.3rem}.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 label{color:var(--text-dark);margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.emergency-prep-triage ul{margin:8px 0 0;padding-left:18px;font-size:.85rem}.emergency-prep-field label{margin-bottom:4px;font-size:.75rem;font-weight:600;display:block}.emergency-prep-field select{border:1px solid var(--border);border-radius:6px;width:100%;padding:6px}.emergency-prep-buttons button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:6px;flex:1;padding:6px;font-size:.75rem}.emergency-prep-buttons button.active{color:#fff;background:#dc2626;border-color:#dc2626}.emergency-prep-profile label{margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.emergency-prep-badges .badge{background:var(--bg-soft);border-radius:6px;padding:4px 8px;font-size:.8rem}.profile-page{max-width:600px;margin:0 auto;padding:20px}.profile-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.profile-header h1{color:var(--text-dark);margin:0;font-size:1.5rem;font-weight:700}.profile-section{box-shadow:var(--shadow-md);background:#fff;border-radius:16px;margin-bottom:20px;padding:20px}.profile-section h2{color:var(--text-dark);margin:0 0 16px;font-size:1.25rem;font-weight:700}.profile-toggle-row{cursor:pointer;border-top:1px solid #e2e8f0;align-items:flex-start;gap:.75rem;margin-top:.75rem;padding:.75rem .5rem;display:flex}.profile-toggle-row input[type=checkbox]{flex-shrink:0;width:1.25rem;height:1.25rem;margin-top:.15rem}.profile-toggle-text{flex-direction:column;gap:.2rem;display:flex}.profile-toggle-label{color:var(--text-dark);font-size:1rem;font-weight:600}.profile-toggle-hint{color:#64748b;font-size:.85rem;line-height:1.35}.contact-list{margin-bottom:20px}.no-contacts{text-align:center;color:var(--text-light);padding:20px}.contact-card{background:var(--bg-soft);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:10px;padding:12px;display:flex}.contact-info{flex-direction:column;display:flex}.contact-name{color:var(--text-dark);font-weight:600}.contact-relation{color:var(--text-light);font-size:.85rem}.contact-phone{color:var(--accent);font-size:.9rem}.contact-call-btn,.contact-delete-btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.contact-call-btn{background:var(--success);color:#fff}.contact-delete-btn{background:var(--bg-soft)}.add-contact-form{background:var(--bg-soft);border-radius:12px;margin-bottom:16px;padding:16px}.add-contact-form h3{margin:0 0 12px;font-size:1rem;font-weight:600}.add-contact-form input{box-sizing:border-box;border:2px solid #e2e8f0;border-radius:10px;width:100%;margin-bottom:10px;padding:12px;font-size:1rem}.add-contact-form input:focus{outline:2px solid var(--focus-ring,#2563eb);outline-offset:-2px;border-color:var(--accent)}.add-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;padding:14px;font-size:1rem;font-weight:600}.sos-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:12px;flex-direction:column;align-items:center;gap:4px;width:100%;padding:18px;font-size:1.25rem;font-weight:700;display:flex}.sos-btn .sos-description{opacity:.9;font-size:.85rem;font-weight:400}.medical-section h2{margin-bottom:20px}.medical-form{flex-direction:column;gap:16px;display:flex}.medical-form label{flex-direction:column;gap:6px;display:flex}.medical-form label span{color:var(--text);font-weight:600}.medical-form select,.medical-form textarea{border:2px solid #e2e8f0;border-radius:10px;padding:12px;font-family:inherit;font-size:1rem}.medical-form textarea{resize:vertical;min-height:80px}.medical-form select:focus,.medical-form textarea:focus{outline:2px solid var(--focus-ring,#2563eb);outline-offset:-2px;border-color:var(--accent)}.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;margin:0 0 12px;font-size:1.1rem;font-weight:700}.medical-row{color:#78350f;margin-bottom:8px;font-size:.95rem}.blood-type-badge{color:#fff;background:#dc2626;border-radius:8px;padding:8px 16px;font-size:1.5rem;font-weight:800;display:inline-block}.dgs-mode .back-button{color:#c7d2fe;border-color:#c7d2fe4d}@keyframes dgsWave{0%,to{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}.dgs-placeholder h2{color:#fff;margin:0 0 12px;font-size:2rem;font-weight:800}.dgs-info-box p{color:#e0e7ff;margin:0;font-size:.95rem;line-height:1.6}.dgs-steps-fallback h3{color:#a5b4fc;margin:0 0 16px;font-size:1.1rem;font-weight:700}.dgs-steps-fallback .step-number{color:#fff;background:#6366f1}.dgs-steps-fallback .step-text{color:#fff}.video-icon{opacity:.6;font-size:4rem}.voice-input-btn.listening{background:linear-gradient(135deg,#dc2626,#ef4444);animation:1.5s ease-in-out infinite voicePulse;box-shadow:0 4px 15px #dc262680}@keyframes voicePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes detectPop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.warning-banner-container{flex-direction:column;gap:12px;margin-bottom:16px;padding:0 16px;display:flex}.warning-banner{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-left:5px solid #dc2626;border-radius:16px;padding:16px;box-shadow:0 2px 8px #0000001a}.warning-banner.severity-extreme{color:#fff;background:linear-gradient(135deg,#450a0a,#7f1d1d)}.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;gap:12px;margin-bottom:8px;display:flex}.warning-icon{flex-shrink:0;font-size:1.8rem}.warning-title{flex:1}.warning-label{text-transform:uppercase;letter-spacing:.5px;color:#991b1b;margin-bottom:2px;font-size:.75rem;font-weight:700;display:block}.severity-extreme .warning-label{color:#fca5a5}.warning-headline{color:#7f1d1d;margin:0;font-size:1.1rem;font-weight:700}.severity-extreme .warning-headline{color:#fff}.warning-dismiss{color:#991b1b;cursor:pointer;opacity:.7;background:0 0;border:none;padding:4px;font-size:1.2rem}.warning-dismiss:hover{opacity:1}.warning-description{color:#7f1d1d;margin:0 0 12px;font-size:.95rem;line-height:1.5}.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;margin-bottom:4px;font-size:.85rem;display:block}.warning-instruction p{color:#7f1d1d;margin:0;font-size:.9rem}.warning-meta{color:#991b1b;flex-wrap:wrap;gap:16px;font-size:.8rem;display:flex}.warning-expand{color:#991b1b;cursor:pointer;background:0 0;border:none;padding:8px 0;font-size:.85rem;font-weight:600;text-decoration:underline}.quiz-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.quiz-header h2{margin:0;font-size:1.5rem;font-weight:800}.quiz-progress{flex:1;max-width:200px;margin:0 20px}.quiz-progress span{color:#a5b4fc;text-align:center;margin-bottom:6px;font-size:.85rem;display:block}.progress-bar{background:#fff3;border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#22c55e,#4ade80);height:100%;transition:width .3s}.question-text{margin:0;font-size:1.4rem;font-weight:700;line-height:1.4}.quiz-options{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.quiz-option{color:#fff;cursor:pointer;text-align:left;background:#ffffff1a;border:2px solid #fff3;border-radius:16px;align-items:center;gap:16px;padding:16px 20px;font-size:1.1rem;font-weight:600;transition:all .2s;display:flex}.quiz-option:hover:not(:disabled){background:#fff3;border-color:#fff6}.quiz-option.incorrect{background:#ef44444d;border-color:#ef4444}.option-letter{background:#fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-weight:800;display:flex}.option-text{flex:1}.option-check{color:#22c55e;font-size:1.5rem}@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}.quiz-btn{cursor:pointer;border:none;border-radius:50px;padding:14px 32px;font-size:1.1rem;font-weight:700;transition:all .2s}.quiz-btn.primary{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a)}.quiz-btn.primary:hover{transform:scale(1.05)}@keyframes badgePop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.quick-action-btn{cursor:pointer;white-space:nowrap;background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;transition:all .2s;display:flex}.quick-action-btn:hover{border-color:var(--accent);background:#fef2f2}.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{z-index:9999;background:#7f1d1df2;justify-content:center;align-items:center;animation:.5s ease-in-out infinite alternate sosFlash;display:flex;position:fixed;inset:0}@keyframes sosFlash{0%{background-color:#7f1d1df2}to{background-color:#b91c1cf2}}.sos-alert{text-align:center;color:#fff;padding:40px}.sos-icon-pulse{font-size:6rem;animation:.5s ease-in-out infinite sosPulse}@keyframes sosPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.sos-alert h2{margin:20px 0 10px;font-size:2rem;font-weight:900}.sos-countdown{margin-bottom:30px;font-size:1.5rem}.countdown-number{margin-top:10px;font-size:4rem;font-weight:900;display:block}.sos-cancel-btn{color:#991b1b;cursor:pointer;background:#fff;border:none;border-radius:50px;padding:16px 40px;font-size:1.2rem;font-weight:700}.silent-sos-setup{background:#fff;border-radius:20px;margin:16px;padding:24px;box-shadow:0 4px 20px #00000026}.setup-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.setup-header h3{margin:0;font-size:1.2rem;font-weight:700}.setup-description{color:#64748b;margin:0 0 20px;font-size:.9rem;line-height:1.5}.setup-toggle{background:#f8fafc;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px;display:flex}.toggle-btn{cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:20px;padding:10px 20px;font-weight:600}.toggle-btn.enabled{color:#fff;background:#dc2626;border-color:#dc2626}.setup-instructions{margin-bottom:20px}.setup-instructions h4{color:#64748b;margin:0 0 12px;font-size:.9rem}.instruction-item{background:#fef2f2;border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.instruction-icon{font-size:1.5rem}.shake-indicator{text-align:center;color:#92400e;background:#fef3c7;border-radius:10px;margin-bottom:16px;padding:12px;font-weight:600}.test-btn{cursor:pointer;background:#f1f5f9;border:2px solid #e2e8f0;border-radius:12px;width:100%;padding:14px;font-weight:600}.silent-sos-trigger{cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;display:flex;position:relative}.trigger-active{color:#22c55e;font-size:.8rem}.aed-header h2{margin:0;font-size:1.2rem;font-weight:700}@keyframes criticalPulse{0%,to{opacity:1}50%{opacity:.5}}.loading-spinner{font-size:3rem;animation:1s linear infinite spin}.direction-arrow{font-size:3rem}.direction-text{color:#166534;font-size:1.3rem;font-weight:700}.aed-list h3{color:#64748b;margin:0 0 12px;font-size:.9rem}.empty-icon{margin-bottom:16px;font-size:4rem;display:block}.call-112-btn{color:#fff;background:#dc2626;border-radius:50px;margin-top:20px;padding:14px 28px;font-weight:700;text-decoration:none;display:inline-block}.live-location-modal{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.live-location-content{background:#fff;border-radius:24px;width:100%;max-width:400px;max-height:90vh;padding:24px;overflow-y:auto}.live-location-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.live-location-header h2{margin:0;font-size:1.3rem;font-weight:700}.live-location-start .description{color:#64748b;margin:0 0 20px;line-height:1.6}.contacts-preview{margin-bottom:20px}.contacts-preview p{color:#64748b;margin:0 0 8px;font-size:.85rem}.contact-chip{background:#f1f5f9;border-radius:20px;margin-bottom:6px;margin-right:6px;padding:6px 12px;font-size:.85rem;display:inline-block}.start-sharing-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#dc2626,#ef4444);border:none;border-radius:16px;justify-content:center;align-items:center;gap:12px;width:100%;padding:16px;font-size:1.1rem;font-weight:700;display:flex}.btn-icon{font-size:1.3rem;animation:1.5s ease-in-out infinite recordPulse}@keyframes recordPulse{0%,to{opacity:1}50%{opacity:.5}}.live-location-active{text-align:center}.sharing-indicator{width:100px;height:100px;margin:0 auto 20px;position:relative}.pulse-ring{border:3px solid #dc2626;border-radius:50%;animation:1.5s ease-out infinite pulseRing;position:absolute;inset:0}@keyframes pulseRing{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}.pulse-dot{justify-content:center;align-items:center;font-size:3rem;display:flex;position:absolute;inset:0}.sharing-status{color:#dc2626;margin:0 0 16px;font-size:1rem;font-weight:600}.sharing-timer{margin-bottom:16px}.timer-label{color:#64748b;margin-bottom:4px;font-size:.85rem;display:block}.timer-value{color:#dc2626;font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:800}.current-coords{margin-bottom:20px}.current-coords code{color:#64748b;background:#f1f5f9;border-radius:8px;padding:6px 12px;font-size:.8rem}.share-buttons{justify-content:center;gap:12px;margin-bottom:20px;display:flex}.share-btn{cursor:pointer;border:none;border-radius:10px;padding:10px 20px;font-weight:600}.share-btn.copy{color:#334155;background:#f1f5f9}.contact-share-list{text-align:left;margin-bottom:20px}.share-via-label{color:#64748b;margin:0 0 12px;font-size:.85rem}.contact-share-item{background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px;display:flex}.contact-name{font-weight:600}.contact-actions{gap:8px;display:flex}.contact-sms-btn,.contact-wa-btn{cursor:pointer;border:none;border-radius:6px;padding:6px 12px;font-size:.85rem;font-weight:600}.contact-sms-btn{color:#0369a1;background:#e0f2fe}.contact-wa-btn{color:#166534;background:#dcfce7}.stop-sharing-btn{cursor:pointer;background:#f1f5f9;border:2px solid #e2e8f0;border-radius:12px;width:100%;padding:14px;font-weight:600}.hr-header h2{margin:0;font-size:1.2rem;font-weight:700}.hr-progress-ring .progress-fill{fill:none;stroke:#dc2626;stroke-width:8px;stroke-linecap:round;transition:stroke-dasharray .3s}.progress-text{color:#dc2626;font-size:1.5rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes bpmPop{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.hr-warning .warning-icon{font-size:1.5rem}.hr-warning span{color:#92400e;margin-top:4px;font-weight:700;display:block}.live-location-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border:none;border-radius:12px;width:100%;margin-top:12px;padding:14px;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 4px 12px #3b82f64d}.live-location-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.offline-videos-modal{z-index:1000;background:#000000b3;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.offline-videos-content{background:#fff;border-radius:24px 24px 0 0;width:100%;max-width:500px;max-height:90vh;padding:20px;overflow-y:auto}.ov-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.ov-header h2{flex:1;margin:0;font-size:1.3rem}.ov-description{color:#64748b;margin-bottom:20px;font-size:.9rem}.download-all-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border:none;border-radius:12px;width:100%;margin-bottom:24px;padding:14px;font-size:1rem;font-weight:600}.video-category{margin-bottom:20px}.category-title{text-transform:uppercase;color:#64748b;letter-spacing:.5px;margin-bottom:12px;font-size:.85rem;font-weight:700}.video-list{flex-direction:column;gap:8px;display:flex}.video-item{background:#f8fafc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.video-item-info{flex:1;align-items:center;gap:12px;display:flex}.video-icon{font-size:1.5rem}.video-details{flex-direction:column;display:flex}.video-title{font-size:.95rem;font-weight:600}.video-meta{color:#64748b;font-size:.8rem}.video-actions{align-items:center;gap:8px;display:flex}.downloaded-badge{color:#22c55e;font-weight:700}.play-btn{color:#fff;cursor:pointer;background:#22c55e;border:none;border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:600}.download-btn{color:#1f2937;cursor:pointer;background:#e2e8f0;border:none;border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:600}.video-player-placeholder{aspect-ratio:16/9;background:#1f2937;border-radius:16px;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.placeholder-content{text-align:center;color:#fff}.placeholder-icon{margin-bottom:12px;font-size:4rem;display:block}.placeholder-text{color:#94a3b8;font-size:.9rem}.video-info{text-align:center;color:#64748b}.offline-status{color:#166534;text-align:center;background:#dcfce7;border-radius:12px;margin-top:20px;padding:12px;font-weight:600}.push-notifications-modal{z-index:1000;background:#000000b3;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.push-notifications-content{background:#fff;border-radius:24px 24px 0 0;width:100%;max-width:500px;max-height:90vh;padding:20px;overflow-y:auto}.pn-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.pn-header h2{flex:1;margin:0;font-size:1.3rem}.pn-description{color:#64748b;margin-bottom:20px;font-size:.9rem}.pn-not-supported{text-align:center;padding:40px 20px}.not-supported-icon{margin-bottom:16px;font-size:4rem;display:block}.permission-status{border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:16px;display:flex}.permission-status.denied{color:#991b1b;background:#fef2f2}.permission-status.granted{color:#166534;background:#dcfce7}.permission-status.default{background:#f1f5f9;justify-content:center}.status-icon{font-size:1.5rem}.request-permission-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);border:none;border-radius:12px;width:100%;padding:16px;font-size:1.1rem;font-weight:700}.push-watch-hint{color:#0c4a6e;background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;margin:-8px 0 20px;padding:12px 14px;font-size:.9rem;line-height:1.4}.push-watch-hint .watch-hint-text{margin:0}.push-watch-hint .push-status{margin:8px 0 0;font-size:.85rem;font-weight:600}.push-watch-hint .push-status.subscribing{color:#0369a1}.push-watch-hint .push-status.subscribed{color:#166534}.push-watch-hint .push-status.failed{color:#b45309}.settings-title{text-transform:uppercase;color:#64748b;margin-bottom:16px;font-size:.9rem;font-weight:700}.notification-toggles{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.toggle-item{background:#f8fafc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.toggle-info{flex:1;align-items:flex-start;gap:12px;display:flex}.toggle-icon{font-size:1.5rem}.toggle-info>div{flex-direction:column;display:flex}.toggle-label{font-size:.95rem;font-weight:600}.toggle-description{color:#64748b;margin-top:2px;font-size:.8rem}.toggle-switch{cursor:pointer;background:#cbd5e1;border:none;border-radius:14px;flex-shrink:0;width:52px;height:28px;transition:background .2s;position:relative}.toggle-switch.active{background:#22c55e}.toggle-knob{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003}.toggle-switch.active .toggle-knob{transform:translate(24px)}.test-notification-btn{cursor:pointer;color:#64748b;background:#f1f5f9;border:2px dashed #cbd5e1;border-radius:12px;width:100%;padding:14px;font-size:1rem;font-weight:600}.settings-section{margin-top:24px}.settings-buttons{flex-direction:column;gap:12px;display:flex}.setting-btn{cursor:pointer;text-align:left;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;width:100%;padding:16px;font-size:1rem;font-weight:600;transition:all .2s}.setting-btn:hover{background:#f1f5f9;border-color:#cbd5e1}@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}}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}.question-section-clean h1{color:var(--text-dark);margin:0;font-size:1.4rem;font-weight:700}.chevron.up{transform:rotate(180deg)}.emergency-home-clean .language-bar{z-index:100;background:#f8fafc;border-top:1px solid #e2e8f0;position:fixed;bottom:0;left:0;right:0}.clay-video-modal{z-index:1000;background:#000c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.clay-video-content{background:#fff;border-radius:20px 20px 0 0;width:100%;max-width:500px;max-height:95vh;padding:24px;overflow-y:auto}.cv-header{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.cv-back-btn{color:#92400e;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:8px 16px;font-size:1rem;font-weight:600}.cv-title{text-align:center}.cv-badge{color:#78350f;text-transform:uppercase;letter-spacing:.5px;background:#fbbf24;border-radius:20px;margin-bottom:8px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-block}.cv-title h2{color:#78350f;margin:0;font-size:1.3rem}.cv-player{background:#fef3c7;border-radius:16px;margin-bottom:20px;overflow:hidden}.cv-video-placeholder{aspect-ratio:16/9;background:linear-gradient(135deg,#fde68a 0%,#fcd34d 100%);justify-content:center;align-items:center;display:flex;position:relative}.clay-scene{width:60%;animation:2s ease-in-out infinite clay-idle;position:relative}.clay-scene.playing{animation:.5s ease-in-out infinite clay-bounce}@keyframes clay-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes clay-bounce{0%,to{transform:scale(1)rotate(0)}25%{transform:scale(1.05)rotate(-3deg)}75%{transform:scale(1.05)rotate(3deg)}}.clay-figure{filter:drop-shadow(0 8px 16px #00000026);width:100%;height:auto}.clay-overlay{background:#0000004d;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.coming-soon-badge{color:#78350f;background:#fff;border-radius:30px;padding:12px 24px;font-size:.9rem;font-weight:700;box-shadow:0 4px 12px #0003}.cv-progress-bar{background:#fde68a;height:6px}.cv-progress-fill{background:linear-gradient(90deg,#f59e0b 0%,#d97706 100%);height:100%;transition:width .1s linear}.cv-duration{text-align:right;color:#92400e;padding:8px 16px;font-size:.85rem;font-weight:600}.cv-step-display{text-align:center;margin-bottom:16px}.cv-step-indicator{color:#92400e;margin-bottom:8px;font-size:.8rem;font-weight:600}.cv-step-text{color:#78350f;font-size:1.5rem;font-weight:800}.cv-step-dots{justify-content:center;gap:8px;margin-bottom:20px;display:flex}.cv-dot{background:#fde68a;border-radius:50%;width:12px;height:12px;transition:all .3s}.cv-dot.active{background:#f59e0b;transform:scale(1.3)}.cv-dot.completed{background:#22c55e}.cv-controls{justify-content:center;margin-bottom:16px;display:flex}.cv-play-btn,.cv-pause-btn{cursor:pointer;border:none;border-radius:30px;align-items:center;gap:10px;padding:16px 32px;font-size:1.1rem;font-weight:700;transition:all .2s;display:flex}.cv-play-btn{color:#fff;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);box-shadow:0 4px 12px #22c55e66}.cv-play-btn:hover{transform:scale(1.05)}.cv-pause-btn{color:#78350f;background:#fbbf24}.cv-info-badge{color:#065f46;background:#ecfdf5;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-bottom:20px;padding:12px;font-size:.85rem;font-weight:600;display:flex}.cv-step-list{flex-direction:column;gap:8px;display:flex}.cv-step-item{background:#fff;border:2px solid #fde68a;border-radius:12px;align-items:center;gap:12px;padding:12px 16px;transition:all .2s;display:flex}.cv-step-item.active{background:#fffbeb;border-color:#f59e0b}.cv-step-item.completed{background:#f0fdf4;border-color:#22c55e}.cv-step-item .step-num{color:#78350f;background:#fde68a;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:700;display:flex}.cv-step-item.active .step-num{color:#fff;background:#f59e0b}.cv-step-item.completed .step-num{color:#fff;background:#22c55e}.cv-step-item .step-text{color:#78350f;flex:1;font-weight:600}.cv-step-item .step-check{color:#22c55e;font-weight:700}.skip-link{background:var(--accent);color:#fff;z-index:9999;border-radius:0 0 8px 8px;padding:12px 24px;font-weight:700;text-decoration:none;transition:top .2s;position:absolute;top:-100px;left:50%;transform:translate(-50%)}.skip-link:focus{top:0}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 6px #0ea5e933}body.reduced-motion *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}body.high-contrast{--bg:#fff;--text:#000;--text-light:#333;--accent:#06c}body.high-contrast button,body.high-contrast a{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}button,a,input[type=checkbox],input[type=radio]{min-width:44px;min-height:44px}[role=dialog]{position:relative}body.high-contrast .text-light,body.high-contrast .text-secondary,body.high-contrast .text-muted{color:#1f2937!important}label{margin-bottom:4px;font-weight:500;display:block}label[for]{cursor:pointer}label .required:after{content:" *";color:var(--danger,#dc2626)}input:invalid:not(:placeholder-shown),select:invalid:not(:placeholder-shown),textarea:invalid:not(:placeholder-shown){border-color:var(--danger,#dc2626)}.error-message{color:var(--danger,#dc2626);margin-top:4px;font-size:.875rem}.btn+.btn{margin-left:8px}.feedback-fab{border:1px solid var(--border);color:#64748b;cursor:pointer;z-index:90;background:#fff;border-radius:50%;width:48px;height:48px;font-size:1.25rem;transition:all .15s;position:fixed;bottom:130px;right:20px;box-shadow:0 2px 8px #00000014}.feedback-fab:hover{color:#1e293b;background:#f8fafc;border-color:#cbd5e1}.feedback-modal{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.feedback-content{background:#fff;border-radius:24px 24px 0 0;width:100%;max-width:400px;padding:24px}.feedback-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.feedback-header h3{margin:0;font-size:1.2rem}.feedback-close{cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;width:36px;height:36px;font-size:1.1rem}.feedback-types{gap:8px;margin-bottom:16px;display:flex}.feedback-type-btn{border:1px solid var(--border);cursor:pointer;color:#64748b;background:#f8fafc;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:12px 8px;font-size:.75rem;font-weight:500;transition:all .15s;display:flex}.feedback-type-btn.active{color:#1e293b;background:#f1f5f9;border-color:#1e293b}.feedback-textarea{resize:none;border:2px solid #e2e8f0;border-radius:12px;width:100%;margin-bottom:16px;padding:14px;font-family:inherit;font-size:1rem}.feedback-textarea:focus{outline:2px solid var(--focus-ring,#2563eb);outline-offset:-2px;border-color:#8b5cf6}.feedback-submit{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:10px;width:100%;padding:14px;font-size:.95rem;font-weight:500;transition:background .15s}.feedback-submit:hover{background:#334155}.feedback-submit:disabled{cursor:not-allowed;background:#94a3b8}.feedback-thanks{text-align:center;padding:40px 20px}.thanks-icon{color:#1e293b;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;font-size:1.75rem;display:inline-flex}.feedback-thanks p{color:var(--text);font-size:1.1rem;font-weight:600}.triage-modal{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.triage-content{background:#fff;border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow-y:auto}.triage-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:20px 20px 16px;display:flex}.triage-title-group h2{color:#1e293b;margin:0;font-size:1.25rem;font-weight:600}.triage-subtitle{color:#64748b;font-size:.875rem}.triage-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;width:32px;height:32px;font-size:1rem}.triage-progress{justify-content:center;align-items:center;gap:8px;padding:16px 20px;display:flex}.triage-step{color:#64748b;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:600;transition:all .2s;display:flex}.triage-step.active{color:#fff;background:#1e293b}.triage-step.done{color:#fff;background:#22c55e}.triage-line{background:#e2e8f0;width:40px;height:2px}.triage-body{flex:1;padding:20px}.triage-question{color:#334155;margin:0 0 16px;font-size:1rem;font-weight:500}.triage-options{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.triage-option{border:1px solid var(--border);cursor:pointer;color:#334155;background:#f8fafc;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:20px 16px;font-size:.9rem;font-weight:500;transition:all .15s;display:flex}.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{flex-direction:column;gap:10px;display:flex}.triage-symptom{border:1px solid var(--border);cursor:pointer;color:#334155;text-align:left;background:#f8fafc;border-radius:10px;align-items:center;gap:12px;padding:14px 16px;font-size:.9rem;transition:all .15s;display:flex}.triage-symptom:hover{background:#f1f5f9}.triage-symptom.selected{background:#f1f5f9;border-color:#1e293b}.symptom-check{color:#1e293b;border:2px solid #cbd5e1;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.875rem;font-weight:600;display:flex}.triage-symptom.selected .symptom-check{color:#fff;background:#1e293b;border-color:#1e293b}.triage-actions{gap:12px;margin-top:20px;display:flex}.triage-back{border:1px solid var(--border);color:#64748b;cursor:pointer;background:#f8fafc;border-radius:10px;flex:1;padding:14px;font-size:.95rem;font-weight:500}.triage-next,.triage-close-btn{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:10px;flex:2;padding:14px;font-size:.95rem;font-weight:500}.triage-next:disabled{cursor:not-allowed;background:#94a3b8}.triage-result{text-align:center;border-radius:16px;margin-bottom:16px;padding:24px}.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{margin-bottom:12px;font-size:3rem}.result-title{margin:0 0 8px;font-size:1.25rem;font-weight:600}.severity-red .result-title{color:#dc2626}.severity-yellow .result-title{color:#d97706}.severity-green .result-title{color:#16a34a}.result-desc{color:#475569;margin:0 0 16px;font-size:.95rem;line-height:1.5}.result-actions{text-align:left;background:#ffffffb3;border-radius:10px;padding:16px}.result-actions h4{color:#334155;margin:0 0 8px;font-size:.875rem;font-weight:600}.result-actions ul{margin:0;padding-left:20px}.result-actions li{color:#475569;margin-bottom:4px;font-size:.9rem}.triage-emergency-btn{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:12px;width:100%;margin-top:16px;padding:16px;font-size:1.1rem;font-weight:600}.triage-disclaimer{color:#94a3b8;text-align:center;margin:0;padding:12px 20px 20px;font-size:.75rem}.offline-tips{z-index:80;animation:.3s ease-out slideUp;position:fixed;bottom:140px;left:20px;right:20px}.offline-tip-card{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border:1px solid #bae6fd;border-radius:16px;align-items:flex-start;gap:16px;padding:20px;display:flex;box-shadow:0 4px 20px #00000014}.tip-icon{flex-shrink:0;font-size:2rem}.tip-content{flex:1}.tip-title{color:#0c4a6e;margin:0 0 6px;font-size:1rem;font-weight:600}.tip-text{color:#0369a1;margin:0;font-size:.9rem;line-height:1.5}.tip-dots{justify-content:center;gap:6px;margin-top:12px;display:flex}.tip-dot{cursor:pointer;background:#cbd5e1;border-radius:50%;width:6px;height:6px;transition:all .2s}.tip-dot.active{background:#0284c7;border-radius:3px;width:18px}.karte-page{flex-direction:column;gap:12px;max-width:1200px;min-height:calc(100dvh - 72px);margin:0 auto;padding:16px;display:flex}.karte-header{text-align:center;margin-bottom:4px}.karte-header h1{color:var(--text-dark);margin:0 0 8px;font-size:1.75rem;font-weight:700}.karte-subtitle{color:var(--text-light);margin:0;font-size:1rem}.karte-filters{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:20px;display:flex}.filter-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);cursor:pointer;align-items:center;gap:6px;padding:10px 16px;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.filter-btn:hover{background:var(--bg-soft);border-color:var(--accent)}.filter-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.filter-icon{font-size:1.1rem}.karte-container{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-md);flex:auto;height:clamp(360px,60dvh,720px);min-height:360px;padding:8px;display:flex;overflow:hidden}.karte-container>.offline-map-wrap{border-radius:var(--radius-sm);flex:auto;min-height:320px;overflow:hidden}.karte-container .maplibregl-map{border-radius:var(--radius-sm);width:100%;height:100%;font-family:inherit}.karte-container .maplibregl-popup-content{border-radius:var(--radius-sm);box-shadow:var(--shadow-md);margin:0;padding:12px 16px;font-size:.9rem;line-height:1.5}.karte-container .maplibregl-ctrl-attrib{font-size:.72rem}@media (width<=768px){.karte-page{padding:12px}.karte-header h1{font-size:1.5rem}.karte-filters{gap:6px}.filter-btn{padding:8px 12px;font-size:.85rem}.karte-container{height:clamp(320px,60dvh,600px);padding:6px}}.chat-history-panel{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);max-height:400px;margin-top:12px;padding:16px;overflow-y:auto}.chat-history-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;display:flex}.chat-history-header strong{color:var(--text-dark);font-size:1rem}.chat-history-empty{text-align:center;color:var(--text-light);padding:24px;font-size:.9rem}.chat-history-list{margin:0;padding:0;list-style:none}.chat-history-item{align-items:stretch;gap:4px;margin-bottom:8px;display:flex}.chat-history-btn{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:left;flex:1;justify-content:space-between;align-items:center;padding:12px;transition:all .2s;display:flex}.chat-history-btn:hover{background:var(--card-hover);border-color:var(--accent)}.chat-history-btn.active{background:var(--accent-soft);border-color:var(--accent)}.chat-topic{color:var(--text-dark);text-transform:capitalize;font-size:.9rem;font-weight:600}.chat-preview{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:.8rem;overflow:hidden}.chat-delete-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-light);cursor:pointer;background:0 0;padding:0 12px;font-size:1rem;transition:all .2s}.chat-delete-btn:hover{color:#dc2626;background:#fee2e2;border-color:#fecaca}@media (width<=600px){.chat-history-panel{padding:12px}.chat-preview{max-width:120px}.chat-history-btn{padding:10px}}.ai-plan-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ai-plan-modal{background:var(--bg);border-radius:var(--radius);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.ai-plan-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:16px 20px;display:flex}.ai-plan-title{color:var(--text-dark);align-items:center;gap:8px;font-size:1.1rem;font-weight:700;display:flex}.ai-plan-icon{font-size:1.5rem}.ai-plan-badge{border-radius:12px;padding:4px 10px;font-size:.7rem;font-weight:500}.ai-plan-badge.ai{color:#1e40af;background:#dbeafe}.ai-plan-badge.offline{color:#92400e;background:#fef3c7}.ai-plan-error{color:#92400e;background:#fef3c7;justify-content:space-between;align-items:center;padding:10px 20px;font-size:.85rem;display:flex}.retry-btn{border-radius:var(--radius-sm);cursor:pointer;background:#fbbf24;border:none;padding:4px 12px;font-size:.8rem;font-weight:500}.ai-plan-loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.loading-spinner{border:4px solid #e2e8f0;border-top-color:var(--accent);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}.ai-plan-progress{justify-content:center;gap:8px;padding:16px 20px;display:flex}.ai-plan-progress .progress-dot{cursor:pointer;background:#e2e8f0;border:none;border-radius:50%;width:12px;height:12px;transition:all .2s}.ai-plan-progress .progress-dot:hover{transform:scale(1.2)}.ai-plan-progress .progress-dot.active{background:var(--accent);transform:scale(1.3)}.ai-plan-progress .progress-dot.done{background:var(--success)}.ai-plan-step{text-align:center;background:var(--bg-soft);border-radius:var(--radius);margin:0 20px;padding:24px 20px;transition:all .3s}.ai-plan-step.critical{background:#fef2f2;border:2px solid #fecaca}.step-number{color:var(--text-light);justify-content:center;align-items:center;gap:8px;margin-bottom:8px;font-size:.8rem;display:flex}.critical-badge{color:#fff;background:#dc2626;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:700}.step-action{color:var(--text-dark);margin-bottom:8px;font-size:1.5rem;font-weight:700}.step-detail{color:var(--text);font-size:1rem;line-height:1.5}.speak-btn{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;margin:16px auto;padding:10px 24px;font-size:.9rem;transition:all .2s;display:block}.speak-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.ai-plan-nav{justify-content:space-between;align-items:center;padding:0 20px 16px;display:flex}.ai-plan-nav .nav-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;padding:10px 20px;font-size:.9rem;font-weight:500;transition:all .2s}.ai-plan-nav .nav-btn:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.ai-plan-nav .nav-btn:disabled{opacity:.4;cursor:not-allowed}.ai-plan-nav .step-counter{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:var(--text-light);margin:0 0 12px;font-size:.85rem;font-weight:600}.steps-list{margin:0;padding:0 0 0 20px;list-style:decimal}.steps-list li{cursor:pointer;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:8px 0;transition:all .2s;display:flex}.steps-list li:hover{color:var(--accent)}.steps-list li.active{color:var(--accent);font-weight:600}.steps-list li.critical{color:#dc2626}.step-action-small{flex:1}.critical-dot{color:#dc2626;font-size:.8rem}.ai-plan-footer{border-top:1px solid #e2e8f0;gap:12px;padding:16px 20px;display:flex}.ai-plan-footer .emergency-btn{color:#fff;text-align:center;border-radius:var(--radius-sm);background:#dc2626;flex:1;padding:14px;font-size:1rem;font-weight:700;text-decoration:none;transition:all .2s}.ai-plan-footer .emergency-btn:hover{background:#b91c1c}.ai-plan-footer .close-btn{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:14px 24px;font-size:.9rem;font-weight:500;transition:all .2s}.ai-plan-footer .close-btn:hover{background:#e2e8f0}@media (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{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.steps-header h2{margin:0}.result-image-preview{justify-content:center;margin-bottom:16px;display:flex}.result-thumbnail{object-fit:cover;border-radius:var(--radius);width:120px;height:120px;box-shadow:var(--shadow-md);border:3px solid #e2e8f0}.situation-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.situation-header h3{margin:0}.speak-result-btn{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:6px 12px;font-size:.8rem;transition:all .2s}.speak-result-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.result-step-item{border-bottom:1px solid #f1f5f9;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.result-step-item:last-child{border-bottom:none}.step-num{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:700;display:flex}.emergency-call-btn.pulse{animation:1.5s ease-in-out infinite pulse-emergency}.photo-analysis-page .result-section{animation:.3s ease-out fadeIn}.photo-analysis-page .steps-list{margin:0;padding:0;list-style:none}.photo-analysis-page .situation-box{background:var(--bg-soft);border-radius:var(--radius);margin-bottom:16px;padding:16px}.photo-analysis-page .steps-box{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:16px}.photo-analysis-page .steps-box h3{color:var(--text-dark);margin:0 0 12px;font-size:1rem}.copilot-text strong{color:#1e40af;font-size:.95rem}.learning-mode-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.learning-mode-modal{background:var(--bg);border-radius:var(--radius);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.learning-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:20px;display:flex}.learning-header h2{color:var(--text-dark);margin:0;font-size:1.3rem}.learning-subtitle{color:var(--text-light);margin:4px 0 0;font-size:.9rem}.learning-header .close-btn{cursor:pointer;color:var(--text-light);background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.learning-topics{padding:16px 20px}.topic-card{background:var(--bg-soft);border-radius:var(--radius);align-items:center;gap:16px;margin-bottom:12px;padding:16px;display:flex}.topic-icon{flex-shrink:0;font-size:2.5rem}.topic-info{flex:1;min-width:0}.topic-info h3{color:var(--text-dark);margin:0 0 8px;font-size:1rem}.topic-progress-bar{background:#e2e8f0;border-radius:4px;height:8px;margin-bottom:6px;overflow:hidden}.topic-progress-fill{background:linear-gradient(90deg, var(--success) 0%, #34d399 100%);border-radius:4px;height:100%;transition:width .3s}.topic-meta{color:var(--text-light);justify-content:space-between;font-size:.75rem;display:flex}.last-studied{font-style:italic}.topic-action-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;padding:10px 16px;font-size:.8rem;font-weight:600;transition:all .2s}.topic-action-btn:hover{background:#0369a1}.learning-tip{border-radius:var(--radius-sm);color:#92400e;background:#fef3c7;align-items:center;gap:10px;margin:0 20px;padding:12px 20px;font-size:.85rem;display:flex}.tip-icon{font-size:1.2rem}.learning-actions{justify-content:center;padding:16px 20px;display:flex}.reset-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-light);cursor:pointer;background:0 0;padding:8px 16px;font-size:.85rem;transition:all .2s}.reset-btn:hover{color:#dc2626;border-color:#dc2626}@media (width<=500px){.topic-card{text-align:center;flex-direction:column;gap:12px}.topic-meta{text-align:center;flex-direction:column;gap:4px}}.section-description{color:var(--text-light);margin:4px 0 16px;font-size:.9rem}.persona-options{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.persona-btn{background:var(--bg-soft);border-radius:var(--radius);cursor:pointer;border:2px solid #e2e8f0;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;transition:all .2s;display:flex}.persona-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.persona-btn.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px #0284c733}.persona-icon{font-size:2rem}.persona-label{color:var(--text-dark);font-size:.9rem;font-weight:500}.persona-btn.active .persona-label{color:var(--accent)}@media (width<=400px){.persona-options{grid-template-columns:1fr}}.decision-tree-page{background:var(--bg-soft);min-height:100vh;padding-bottom:100px}.tree-header{background:var(--card);border-bottom:1px solid var(--border);align-items:flex-start;gap:16px;padding:16px 20px;display:flex}.tree-header .back-button{color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:8px 0;font-size:1rem}.tree-header .header-content{flex:1}.tree-header h1{color:var(--text-dark);margin:0;font-size:1.5rem}.tree-header .subtitle{color:var(--text-light);margin:4px 0 0;font-size:.9rem}.emergency-selection{padding:20px}.emergency-selection h2{color:var(--text);margin:0 0 16px;font-size:1.1rem}.emergency-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.emergency-card{background:var(--card);border-radius:var(--radius);cursor:pointer;border:2px solid #e2e8f0;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;transition:all .2s;display:flex}.emergency-card:hover:not(.disabled){border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-md);transform:translateY(-2px)}.emergency-card.disabled{opacity:.5;cursor:not-allowed}.emergency-icon{font-size:2.5rem}.emergency-label{color:var(--text-dark);text-align:center;font-size:.9rem;font-weight:500}.tree-info{flex-direction:column;align-items:center;gap:12px;padding:20px;display:flex}.info-badge{background:var(--success-soft);color:#059669;border-radius:20px;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;display:inline-flex}.offline-icon{font-size:1rem}.tree-info .tip{color:var(--text-light);text-align:center;font-size:.9rem}.loading-state,.error-state{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.spinner{border:3px solid #e2e8f0;border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@media (width<=500px){.emergency-grid{grid-template-columns:1fr}}.emergency-search{width:100%;max-width:500px;margin:0 auto;position:relative}.search-input-wrapper{background:var(--card);border-radius:var(--radius);border:2px solid #e2e8f0;align-items:center;gap:10px;padding:12px 16px;transition:all .2s;display:flex}.search-input-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #0ea5e91a}.search-icon{opacity:.6;font-size:1.1rem}.search-input{color:var(--text);background:0 0;border:none;flex:1;font-size:1rem}.search-input:focus{outline:2px solid var(--focus-ring,#2563eb);outline-offset:-2px}.search-input::placeholder{color:var(--text-light)}.clear-btn{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:4px;font-size:1rem;transition:all .2s}.clear-btn:hover{color:var(--text);background:#f1f5f9}.search-results{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid var(--border);z-index:100;max-height:400px;margin-top:8px;padding:0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.search-result-item{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:12px 16px;transition:background .2s;display:flex}.search-result-item:hover{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{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.result-title{color:var(--text-dark);font-size:.95rem;font-weight:500}.result-description{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.result-type{text-transform:uppercase;border-radius:12px;flex-shrink:0;padding:4px 8px;font-size:.7rem;font-weight:600}.result-type.crisis{background:var(--accent-soft);color:var(--accent)}.result-type.emergency{background:var(--danger-soft);color:var(--danger)}.result-type.synonym{color:var(--text-light);background:#f1f5f9}.no-results{text-align:center;color:var(--text-light);background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-md);margin-top:8px;padding:16px;font-size:.9rem}@media (width<=500px){.search-input-wrapper{padding:10px 12px}.search-input{font-size:.95rem}}.telemetry-overlay{z-index:3000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.telemetry-modal{background:var(--card);border-radius:var(--radius);width:100%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.telemetry-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:20px;display:flex}.telemetry-header h2{color:var(--text-dark);margin:0;font-size:1.25rem}.telemetry-subtitle{color:var(--text-light);margin:4px 0 0;font-size:.85rem}.telemetry-content{flex:1;padding:20px;overflow-y:auto}.telemetry-empty{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.empty-icon{opacity:.5;font-size:3rem}.telemetry-empty p{color:var(--text-light);text-align:center}.telemetry-footer{background:var(--bg-soft);border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.privacy-note{color:var(--text-light);font-size:.8rem}.clear-data-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-light);cursor:pointer;background:0 0;padding:8px 12px;font-size:.8rem;transition:all .2s}.clear-data-btn:hover{border-color:var(--danger);color:var(--danger)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px;display:grid}.stat-card{background:var(--bg-soft);border-radius:var(--radius-sm);text-align:center;padding:16px}.stat-value{color:var(--accent);margin-bottom:4px;font-size:1.75rem;font-weight:700;line-height:1;display:block}.stat-label{color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.chart-section{margin-bottom:24px}.chart-section h3{color:var(--text);margin:0 0 12px;font-size:.9rem}.bar-chart{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:8px;height:120px;padding:8px 0;display:flex}.bar-item{flex-direction:column;flex:1;align-items:center;height:100%;display:flex}.bar{background:linear-gradient(to top, var(--accent), #38bdf8);border-radius:4px 4px 0 0;width:100%;min-height:4px;transition:height .3s;position:relative}.bar-value{color:var(--text);font-size:.7rem;font-weight:600;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.bar-label{color:var(--text-light);margin-top:8px;font-size:.7rem}.breakdown-section{margin-bottom:24px}.breakdown-section h3{color:var(--text);margin:0 0 12px;font-size:.9rem}.breakdown-list{flex-direction:column;gap:8px;display:flex}.breakdown-item{background:var(--bg-soft);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.breakdown-name{color:var(--text);text-transform:capitalize;font-size:.9rem}.breakdown-count{color:var(--accent);font-weight:600}.features-section{margin-bottom:24px}.features-section h3{color:var(--text);margin:0 0 12px;font-size:.9rem}.features-grid{flex-wrap:wrap;gap:8px;display:flex}.feature-badge{background:var(--bg-soft);border-radius:20px;align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;display:flex}.feature-badge.sos{background:var(--danger-soft);color:var(--danger)}.recent-section h3{color:var(--text);margin:0 0 12px;font-size:.9rem}.activity-list{margin:0;padding:0;list-style:none}.activity-item{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.activity-item:last-child{border-bottom:none}.activity-type{color:var(--text);font-size:.9rem}.activity-time{color:var(--text-light);font-size:.75rem}@media (width<=400px){.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:12px}.stat-value{font-size:1.5rem}.telemetry-footer{text-align:center;flex-direction:column;gap:12px}}.telemetry-footer{flex-direction:column;gap:12px}.footer-left{flex-direction:column;gap:4px;display:flex}.last-sync{color:var(--text-light);font-size:.75rem}.footer-actions{flex-wrap:wrap;gap:8px;display:flex}.sync-btn{background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent);cursor:pointer;padding:8px 12px;font-size:.8rem;transition:all .2s}.sync-btn:hover:not(:disabled){background:var(--accent);color:#fff}.sync-btn:disabled{opacity:.7;cursor:not-allowed}.sync-btn.success{background:var(--success-soft);border-color:var(--success);color:var(--success)}.sync-btn.error{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.offline-save-btn.saving{background:var(--warning)}.offline-save-btn.saved{background:var(--success)}.helfer-page{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{color:#fff;cursor:pointer;background:#004080;border:none;border-radius:8px;padding:.75rem 1rem;font-size:1rem;font-weight:600;transition:background .2s}.helfer-header .back-btn:hover{background:#0059b3}.assistant-page{padding-top:12px;padding-bottom:20px}.assistant-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.assistant-title{color:var(--text-dark);margin:0;font-size:1.4rem;font-weight:800}.assistant-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;font-weight:600;transition:all .2s}.btn-primary:hover{background:#0284c7}.btn-secondary{background:var(--bg-soft);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-weight:500;transition:all .2s}.btn-secondary:hover{background:#e2e8f0}.btn-danger{color:#dc2626;border-radius:var(--radius-sm);cursor:pointer;background:#fee2e2;border:1px solid #fecaca;font-weight:500}.btn-sm{padding:6px 12px;font-size:.8rem}.status-badge{white-space:nowrap;border-radius:20px;padding:4px 10px;font-size:.75rem;font-weight:600}.emergency-call-banner{color:#fff;border-radius:var(--radius-sm);background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 2px 8px #dc26264d}.emergency-call-banner:hover{transform:translateY(-1px);box-shadow:0 4px 12px #dc262666}.emergency-call-icon{color:#dc2626;text-align:center;background:#fff;border-radius:6px;min-width:44px;padding:4px 10px;font-size:1.4rem;font-weight:900}.emergency-call-text{font-size:.9rem}.offline-banner{border-radius:var(--radius-sm);background:#fef3c7;border:1px solid #fbbf24;margin-bottom:12px;padding:10px 14px}.offline-banner strong{font-size:.9rem}.offline-banner p{color:#92400e;margin:4px 0 0;font-size:.8rem}.sync-pending-badge{background:#f59e0b33;border-radius:4px;padding:4px 8px;font-weight:600;margin-top:6px!important;font-size:.75rem!important}.quick-actions{margin-bottom:12px}.quick-actions-title{color:var(--text-dark);text-align:center;margin:0 0 10px;font-size:1rem;font-weight:700}.quick-actions-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.quick-action-btn{border-radius:var(--radius-sm);cursor:pointer;background:#fff;border:2px solid #e2e8f0;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:70px;padding:12px 6px;transition:all .15s;display:flex}.quick-action-btn:hover{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:var(--text);text-align:center;font-size:.7rem;font-weight:600;line-height:1.2}.msg-step{align-items:flex-start;gap:10px;padding:6px 0;display:flex}.msg-step-num{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:24px;height:24px;font-size:.75rem;font-weight:700;display:flex}.msg-step-text{padding-top:2px;font-size:.95rem;line-height:1.4}.msg-bold{color:var(--text-dark);margin:4px 0;font-weight:700}.msg-text{margin:2px 0;line-height:1.5}.msg-spacer{height:8px}.chat-empty-state{min-height:120px;color:var(--text-light);text-align:center;justify-content:center;align-items:center;font-size:.9rem;display:flex}.send-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;min-width:80px;padding:12px 20px;font-size:1rem;font-weight:700;transition:all .15s}.send-btn:hover:not(:disabled){background:#0284c7}.send-btn:disabled{cursor:not-allowed;background:#cbd5e1}.streaming-indicator{color:var(--accent);justify-content:center;align-items:center;gap:8px;padding:8px;font-size:.85rem;font-weight:500;display:flex}.streaming-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1.2s infinite pulse-dot}@media (width<=600px){.assistant-title{font-size:1.2rem}.quick-actions-grid{grid-template-columns:repeat(2,1fr);gap:8px}.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{padding:3px 8px;font-size:1.2rem}.emergency-call-text{font-size:.8rem}.chat-list{min-height:200px;max-height:45vh}.composer input{font-size:16px}}.read-aloud-btn{color:#0369a1;cursor:pointer;background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;align-items:center;gap:4px;margin-top:4px;padding:4px 10px;font-size:.7rem;font-weight:600;transition:all .15s;display:inline-flex}.read-aloud-btn:hover{background:#e0f2fe;border-color:#7dd3fc}.read-aloud-btn.speaking{color:#92400e;background:#fef3c7;border-color:#fbbf24;animation:1.5s infinite pulse-speak}@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{bottom:calc(80px + env(safe-area-inset-bottom,0px));color:#fff;cursor:pointer;z-index:100;background:linear-gradient(135deg,#0ea5e9,#0284c7);border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.4rem;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;right:16px;box-shadow:0 4px 14px #0ea5e966}.voice-fab:hover{transform:scale(1.08);box-shadow:0 6px 20px #0ea5e980}.voice-fab:active{transform:scale(.95)}.voice-fab.recording{background:linear-gradient(135deg,#ef4444,#dc2626);animation:1s infinite pulse-record;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-width:72px;min-height:72px}.read-aloud-btn{min-height:36px;padding:6px 14px;font-size:.75rem}.send-btn{min-width:72px;min-height:48px;font-size:1rem}.status-badge{align-items:center;min-height:28px;font-size:.8rem;display:flex}.msg.assistant .bubble{font-size:1.05rem;line-height:1.6}.msg-step-num{min-width:28px;height:28px;font-size:.85rem}.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{color:#e2e8f0;background:#334155;border-color:#475569}.assistant-page .composer{background:#1e293b;border-color:#334155}.assistant-page .composer input{color:#e2e8f0;background:#334155;border-color:#475569}.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 (height<=500px) and (orientation:landscape){.assistant-page .chat-list{min-height:120px;max-height:35vh}.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 (width<=380px){.assistant-title{font-size:1.1rem}.quick-actions-grid{grid-template-columns:repeat(2,1fr);gap:6px}.quick-action-btn{min-height:64px}.quick-action-icon{font-size:1.2rem}.quick-action-label{font-size:.65rem}.emergency-call-icon{padding:2px 6px;font-size:1rem}}.step-mode-trigger{background:var(--accent);color:#fff;border-radius:var(--radius);cursor:pointer;width:100%;max-width:400px;box-shadow:var(--shadow-md);border:none;margin:8px auto;padding:14px 20px;font-size:1rem;font-weight:600;transition:background .2s;display:block}.step-mode-trigger:hover{background:#0284c7}.step-mode-overlay{z-index:9999;padding:16px;padding-top:env(safe-area-inset-top,16px);padding-bottom:env(safe-area-inset-bottom,16px);background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.step-mode-container{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:480px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.step-mode-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.step-mode-title{color:var(--text-dark);font-size:1.1rem;font-weight:700}.step-mode-close{cursor:pointer;width:36px;height:36px;color:var(--text);background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.step-mode-progress{background:#e2e8f0;width:100%;height:4px}.step-mode-progress-bar{background:var(--accent);border-radius:2px;height:100%;transition:width .3s}.step-mode-counter{text-align:center;color:var(--text-light);padding:12px;font-size:.9rem;font-weight:600}.step-mode-content{flex:1;justify-content:center;align-items:center;min-height:200px;padding:32px 24px;display:flex}.step-mode-content.critical{border-left:4px solid var(--danger);background:#fef2f2}.step-mode-text{text-align:center;color:var(--text-dark);margin:0;font-size:1.5rem;font-weight:600;line-height:1.4}.step-mode-content.critical .step-mode-text{color:var(--danger)}.step-mode-speak{cursor:pointer;color:var(--text);background:#f1f5f9;border:none;border-radius:20px;margin:0 auto 12px;padding:8px 20px;font-size:.9rem;transition:background .2s;display:block}.step-mode-speak.active{background:var(--accent-soft);color:var(--accent)}.step-mode-nav{border-top:1px solid #e2e8f0;gap:12px;padding:16px 20px;display:flex}.step-mode-btn{border-radius:var(--radius);cursor:pointer;border:none;flex:1;min-height:56px;padding:16px;font-size:1.1rem;font-weight:600;transition:background .2s,opacity .2s}.step-mode-prev{color:var(--text);background:#f1f5f9}.step-mode-next{background:var(--accent);color:#fff}.step-mode-done{background:var(--success);color:#fff}.step-mode-btn:disabled{opacity:.4;cursor:not-allowed}.cpr-bar{color:#fff;z-index:1000;background:#1e293b;border-radius:50px;align-items:center;gap:12px;max-width:90vw;padding:12px 20px;animation:.3s slideUpCPR;display:flex;position:fixed;bottom:80px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0000004d}@keyframes slideUpCPR{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.cpr-bar-label{white-space:nowrap;font-size:.9rem;font-weight:600}.cpr-bar-btn{cursor:pointer;background:var(--danger);color:#fff;border:none;border-radius:25px;min-height:44px;padding:10px 20px;font-size:.9rem;font-weight:700;transition:background .2s}.cpr-bar-btn.active{color:var(--danger);background:#fff;animation:.545s infinite cprPulse}@keyframes cprPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.cpr-bar-dismiss{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:700;display:flex}@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;background:#334155}.step-mode-progress{background:#334155}.step-mode-counter{color:#94a3b8}.step-mode-text{color:#f1f5f9}.step-mode-content.critical{background:#451a1a}.step-mode-speak{color:#e2e8f0;background:#334155}.step-mode-nav{border-color:#334155}.step-mode-prev{color:#e2e8f0;background:#334155}}.context-actions{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:10px 0;display:flex;overflow-x:auto}.context-actions::-webkit-scrollbar{display:none}.context-action-btn{border:1px solid var(--border);cursor:pointer;white-space:nowrap;color:var(--text);background:#fff;border-radius:20px;align-items:center;gap:6px;min-height:40px;padding:8px 14px;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.context-action-btn:hover{background:var(--bg-soft);border-color:var(--accent)}.context-action-btn:disabled{opacity:.5;cursor:not-allowed}.context-action-btn.suggested{background:var(--accent-soft);border-color:var(--accent);color:#0369a1;font-weight:600;animation:2s ease-in-out infinite suggestPulse}@keyframes suggestPulse{0%,to{box-shadow: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{z-index:9999;background:#000000d9;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.finder-container{width:100%;max-width:500px;max-height:90vh;padding-bottom:env(safe-area-inset-bottom,0);background:#fff;border-radius:20px 20px 0 0;flex-direction:column;animation:.3s slideUp;display:flex;overflow:hidden}.finder-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:16px 20px;display:flex}.finder-close{cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.finder-title{margin:0;font-size:1.1rem;font-weight:700}.finder-categories{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:4px;padding:12px 16px;display:flex;overflow-x:auto}.finder-categories::-webkit-scrollbar{display:none}.finder-cat-btn{cursor:pointer;background:#f8fafc;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-width:60px;padding:10px 12px;transition:all .2s;display:flex}.finder-cat-btn.active{border-color:var(--accent);background:var(--accent-soft)}.finder-cat-icon{font-size:1.3rem}.finder-cat-label{color:var(--text-light);white-space:nowrap;font-size:.65rem;font-weight:600}.finder-cat-btn.active .finder-cat-label{color:var(--accent)}.finder-cat-desc{color:var(--text-light);border-bottom:1px solid #f1f5f9;padding:8px 20px;font-size:.85rem;font-weight:500}.finder-content{flex:1;min-height:200px;max-height:50vh;padding:12px 16px;overflow-y:auto}.finder-loading{color:var(--text-light);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 20px;font-size:.9rem;display:flex}.finder-spinner{border:3px solid #e2e8f0;border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.finder-error{text-align:center;color:var(--danger);padding:20px}.finder-retry{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:12px;padding:10px 20px;font-weight:600}.finder-empty{text-align:center;color:var(--text-light);padding:30px 20px}.finder-alt-btn{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;margin:12px auto;padding:10px 16px;font-weight:500;display:block}.finder-112{background:var(--danger);color:#fff;border-radius:8px;margin-top:16px;padding:12px 24px;font-weight:700;text-decoration:none;display:inline-block}.finder-results{margin:0;padding:0;list-style:none}.finder-item{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:14px 12px;display:flex}.finder-item.first{background:var(--accent-soft);border:1px solid var(--accent);border-radius:10px;margin-bottom:8px}.finder-item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.finder-item-name{color:var(--text-dark);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.finder-item-addr{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.finder-item-dist{color:var(--accent);font-size:.8rem;font-weight:600}.finder-nav-btn{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;min-height:36px;padding:8px 14px;font-size:.75rem;font-weight:600}.finder-footer-112{text-align:center;color:var(--danger);background:#fef2f2;border-top:1px solid #fecaca;padding:14px;font-size:.9rem;font-weight:700;text-decoration:none;display:block}@media (prefers-color-scheme:dark){.finder-container{background:#1e293b}.finder-header{border-color:#334155}.finder-close{color:#e2e8f0;background:#334155}.finder-cat-btn{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{color:#e2e8f0;background:#1e293b;border-color:#334155}.context-action-btn:hover{background:#334155}.context-action-btn.suggested{border-color:var(--accent);color:#7dd3fc;background:#1e3a5f}}@media (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{z-index:9999;color:#fff;background:#036;border-radius:0 0 8px 8px;padding:12px 24px;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:16px}.skip-nav:focus{top:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--focus-ring,#2563eb);outline-offset:2px}.lazy-loading{color:#64748b;justify-content:center;align-items:center;min-height:60vh;font-size:1.1rem;display:flex}.error-boundary{justify-content:center;align-items:center;min-height:60vh;padding:24px;display:flex}.error-boundary-card{text-align:center;max-width:400px}.error-boundary-card h2{color:#dc2626;margin-bottom:8px}.error-boundary-card p{color:#64748b;margin-bottom:24px}.error-boundary-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.error-retry-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;padding:12px 24px;font-weight:600}.error-112-btn{color:#fff;background:#dc2626;border:none;border-radius:10px;padding:12px 24px;font-weight:600;text-decoration:none}.demo-112-badge{color:#fbbf24;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle;background:#00000059;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:.65rem;font-weight:800;display:inline-block}.error-details{text-align:left;background:#fef2f2;border-radius:8px;margin-top:16px;padding:12px;font-size:.8rem;overflow-x:auto}@media (prefers-color-scheme:dark){:root{--bg:#0f172a;--surface:#1e293b;--text:#f1f5f9;--text-muted:#94a3b8;--border:#334155;--accent:#3b82f6}body,.helfer-page,.nearby-helpers{background:var(--bg);color:var(--text)}.chat-messages{background:var(--surface)}.message-bubble.assistant{background:#1e3a5f}.finder-overlay{background:var(--surface)}.tab-btn,.skill-btn{background:var(--surface);color:var(--text);border-color:var(--border)}.sos-badge{color:#fca5a5;background:#1c1917;border-color:#44403c}.sos-badge.setup{color:#93c5fd;background:#172554;border-color:#1e40af}input[type=range]{accent-color:var(--accent)}.error-boundary-card h2{color:#f87171}.error-boundary-card p{color:var(--text-muted)}.error-details{background:var(--surface);color:var(--text-muted)}.offline-banner.offline{background:#7c2d12}.offline-banner.online{background:#14532d}.lazy-loading{color:var(--text-muted)}}.quiz-page{min-height:100dvh;padding:1rem;padding-top:calc(1rem + env(safe-area-inset-top,0));background:#f8fafc}.quiz-header{margin-bottom:1.5rem}.quiz-header .back-button{color:var(--brand-navy);cursor:pointer;background:0 0;border:none;padding:.5rem 0;font-size:.9rem}.quiz-header .header-content h1{color:var(--brand-navy);margin:.5rem 0 .25rem;font-size:1.5rem}.quiz-header .subtitle{color:#64748b;margin:0;font-size:.9rem}.quiz-categories{margin-bottom:1.5rem}.quiz-category-btn{cursor:pointer;text-align:left;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;align-items:center;gap:.75rem;width:100%;margin-bottom:.75rem;padding:1rem;transition:all .2s;display:flex}.quiz-category-btn:hover{border-color:var(--brand-navy);transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.quiz-category-btn.all{background:var(--brand-navy);color:#fff;border-color:var(--brand-navy)}.quiz-category-btn .cat-icon{font-size:1.5rem}.quiz-category-btn .cat-label{flex:1;font-size:.95rem;font-weight:600}.quiz-category-btn .cat-count{opacity:.7;font-size:.8rem}.quiz-category-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.quiz-category-grid .quiz-category-btn{text-align:center;flex-direction:column;gap:.25rem;padding:.75rem}.quiz-history{border-top:1px solid #e2e8f0;margin-top:1.5rem;padding-top:1rem}.quiz-history h3{color:var(--brand-navy);margin:0 0 .75rem;font-size:1rem}.history-list{flex-direction:column;gap:.5rem;display:flex}.history-item{border:1px solid var(--border);background:#fff;border-radius:8px;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.history-score{min-width:3rem;font-size:1.1rem;font-weight:700}.history-detail{color:#64748b;flex:1;font-size:.85rem}.history-date{color:#94a3b8;font-size:.75rem}.quiz-playing-header{margin-bottom:1.5rem}.quiz-progress{color:#64748b;margin-bottom:.5rem;font-size:.85rem;display:block}.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}.quiz-question-section{flex-direction:column;gap:1rem;display:flex}.quiz-category-badge{color:#64748b;background:#f1f5f9;border-radius:12px;align-self:flex-start;padding:.25rem .75rem;font-size:.8rem}.quiz-question-text{color:var(--brand-navy);margin:0;font-size:1.2rem;line-height:1.4}.quiz-options{flex-direction:column;gap:.5rem;display:flex}.quiz-option{cursor:pointer;text-align:left;background:#fff;border:2px solid #e2e8f0;border-radius:12px;align-items:center;gap:.75rem;width:100%;padding:.875rem 1rem;transition:all .2s;display:flex}.quiz-option:hover:not(:disabled){border-color:var(--brand-navy);background:#f8fafc}.quiz-option.correct{background:#f0fdf4;border-color:#16a34a}.quiz-option.wrong{background:#fef2f2;border-color:#dc2626}.option-letter{width:28px;height:28px;color:var(--brand-navy);background:#f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.quiz-option.correct .option-letter{color:#fff;background:#16a34a}.quiz-option.wrong .option-letter{color:#fff;background:#dc2626}.option-text{flex: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;padding:.875rem;font-size:.85rem;line-height:1.4}.quiz-explanation.correct{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.quiz-explanation.wrong{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.quiz-explanation strong{margin-bottom:.25rem;display:block}.quiz-explanation p{margin:0}.quiz-next-btn{background:var(--brand-navy);color:#fff;cursor:pointer;border:none;border-radius:12px;margin-top:.5rem;padding:.875rem;font-size:1rem;font-weight:600;transition:transform .1s}.quiz-next-btn:active{transform:scale(.98)}.quiz-result-section{flex-direction:column;align-items:center;gap:1.25rem;padding:2rem 1rem;display:flex}.result-score-circle{background:var(--brand-navy);color:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:140px;height:140px;display:flex}.result-score-number{font-size:2.5rem;font-weight:900;line-height:1}.result-score-label{opacity:.8;margin-top:.25rem;font-size:.8rem}.result-message{text-align:center;color:var(--brand-navy);margin:0;font-size:1.1rem}.result-stats{color:#64748b;font-size:.9rem}.result-categories{flex-direction:column;gap:.5rem;width:100%;max-width:320px;display:flex}.result-cat-item{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:space-between;padding:.5rem .75rem;font-size:.85rem;display:flex}.result-cat-score{color:var(--brand-navy);font-weight:700}.result-actions{gap:.75rem;width:100%;max-width:320px;margin-top:.5rem;display:flex}.quiz-btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:.875rem;font-size:.9rem;font-weight:600;transition:transform .1s}.quiz-btn:active{transform:scale(.98)}.quiz-btn.primary{background:var(--brand-navy);color:#fff}.quiz-btn.secondary{color:var(--brand-navy);background:#f1f5f9;border:1.5px solid #e2e8f0}.result-gamification{align-items:center;gap:1rem;width:100%;max-width:320px;display:flex}.result-level{flex-direction:column;flex:1;gap:.25rem;display:flex}.level-up-badge{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:10px;align-self:flex-start;padding:2px 8px;font-size:.7rem;font-weight:700;animation:.5s level-pop}@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;height:8px}.xp-fill{background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:3px;height:100%;transition:width .5s}.xp-text{color:#64748b;font-size:.7rem}.streak-badge{white-space:nowrap;background:#fff7ed;border-radius:8px;padding:.25rem .5rem;font-size:.8rem;font-weight:600}.new-badges{text-align:center;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;width:100%;max-width:320px;padding:.75rem}.new-badges strong{color:#92400e;margin-bottom:.5rem;font-size:.85rem;display:block}.badge-list{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.badge-list.compact{gap:.25rem}.badge-item{border:1px solid var(--border);background:#fff;border-radius:8px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.8rem;display:flex}.badge-item.new{border-color:#f59e0b;animation:1s infinite badge-glow}@keyframes badge-glow{0%,to{box-shadow: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;padding:.1rem .3rem;font-size:.7rem}.quiz-progress-section{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:1rem;padding:.75rem}.progress-header{align-items:center;gap:.5rem;display:flex}.level-badge{background:var(--brand-navy);color:#fff;white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:.7rem;font-weight:700}.ecall-overlay{z-index:9999;color:#fff;background:#dc2626f2;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;padding:2rem;display:flex;position:fixed;inset:0}.ecall-title{text-align:center;font-size:1.5rem;font-weight:900}.ecall-countdown{font-size:5rem;font-weight:900;animation:1s infinite countdown-pulse}@keyframes countdown-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.ecall-info{text-align:center;opacity:.9;font-size:.9rem}.ecall-cancel-btn{color:#dc2626;cursor:pointer;background:#fff;border:none;border-radius:50px;padding:1rem 3rem;font-size:1.2rem;font-weight:700}
