@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--primary-gradient:linear-gradient(135deg, #0f766e 0%, #14b8a6 100%);--secondary-gradient:linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--dark-gradient:linear-gradient(135deg, #1f1c2c 0%, #928dab 100%);--bg-color:#f8f9fa;--card-bg:#fff;--text-main:#2d3436;--text-muted:#636e72;--border-radius-lg:8px;--border-radius-md:6px;--border-radius-sm:4px;--shadow-sm:0 4px 6px #0000000d;--shadow-md:0 10px 20px #00000014;--shadow-hover:0 15px 30px #0f766e33;--app-viewport-height:100dvh;--app-bottom-safe-area:0px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{min-height:var(--app-viewport-height,100dvh);background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Outfit,sans-serif}h1,h2,h3,h4,h5,h6{color:var(--text-main);margin-bottom:.5rem;font-weight:700}p{line-height:1.6}.text-gradient{background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-blue{background:var(--secondary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn{border-radius:var(--border-radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s;display:inline-flex}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-secondary{background:var(--secondary-gradient);color:#fff;box-shadow:var(--shadow-sm)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 15px 30px #4facfe33}.btn-outline{color:#14b8a6;background:0 0;border:2px solid #14b8a6}.btn-outline:hover{background:#14b8a61a}.card{background:var(--card-bg);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);padding:2rem;transition:transform .3s}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text-muted);margin-bottom:.5rem;font-weight:500;display:block}.form-control{border-radius:var(--border-radius-md);background:#f8fafc;border:2px solid #edf2f7;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:all .3s}.form-control:focus{background:#fff;border-color:#14b8a6;outline:none;box-shadow:0 0 0 4px #14b8a61a}.app-container{min-height:100vh;min-height:var(--app-viewport-height,100dvh);display:flex}.main-content{height:100vh;height:var(--app-viewport-height,100dvh);flex:1;padding:2rem;overflow-y:auto}.badge{border-radius:50px;padding:.25rem .75rem;font-size:.85rem;font-weight:600}.badge-success{color:#2ed573;background:#2ed5731a}.badge-danger{color:#ff4757;background:#ff47571a}.mapboxgl-map{border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);z-index:1}.upgrade-overlay{z-index:2000;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));background:#0f172a8c;place-items:center;display:grid;position:fixed;inset:0}.upgrade-modal{width:min(720px,100%);max-height:min(90vh, calc(var(--app-viewport-height,100dvh) - 2rem));color:#1e293b;background:#fff;border-radius:14px;padding:1.25rem;overflow-y:auto;box-shadow:0 24px 60px #0f172a47}.upgrade-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.upgrade-header span{color:#2563eb;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:800}.upgrade-header h2{margin:.2rem 0 0}.upgrade-close{color:#334155;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;width:36px;height:36px}.upgrade-plan-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;display:grid}.upgrade-plan{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.9rem}.upgrade-plan.selected{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.upgrade-plan strong,.upgrade-plan span,.upgrade-plan b,.upgrade-plan small{display:block}.upgrade-plan span,.upgrade-plan small{color:#64748b;margin-top:.25rem}.upgrade-plan b{color:#0f172a;margin-top:.65rem}.payment-instructions{color:#1e40af;background:#eff6ff;border-radius:10px;gap:.65rem;margin:1rem 0;padding:.9rem;line-height:1.5;display:flex}.payment-instructions p{margin:0}.upgrade-form{gap:.55rem;display:grid}.upgrade-form label{color:#475569;font-size:.82rem;font-weight:800}.upgrade-form input,.upgrade-form select{color:#1e293b;border:1px solid #cbd5e1;border-radius:10px;width:100%;padding:.72rem .85rem}.upgrade-submit{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;margin-top:.5rem;padding:.8rem 1rem;font-weight:800}.upgrade-alert{border-radius:10px;margin-bottom:.8rem;padding:.8rem .9rem;font-weight:700}.upgrade-alert.danger{color:#b91c1c;background:#fee2e2}.upgrade-alert.success{color:#166534;background:#dcfce7}.upgrade-plan.current{border-color:#22c55e}@media (width<=768px){.payment-step-grid{grid-template-columns:1fr}.current-plan-card{flex-direction:column;align-items:flex-start}.current-plan-meta{white-space:normal}}.billing-tabs{background:#eef2f7;border-radius:999px;grid-template-columns:repeat(4,minmax(88px,1fr));align-self:center;gap:.2rem;padding:.25rem;display:inline-grid}.billing-tabs button{color:#4b5563;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:42px;padding:0 1rem;font-weight:800}.billing-tabs button.active{color:#fff;background:#155bd8;box-shadow:0 8px 18px #155bd838}.upgrade-modal{max-width:1180px}.upgrade-header h2{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,3vw,2.35rem)}.tier-grid{grid-template-columns:repeat(4,minmax(210px,1fr))}.tier-card{background:#fff;border:1px solid #d9dee7;border-radius:8px;flex-direction:column;justify-content:flex-start;align-items:stretch;min-height:430px;padding:1.4rem;display:flex;position:relative;box-shadow:0 10px 24px #0f172a14}.tier-card.featured{border-color:#111827;box-shadow:0 14px 30px #0f172a21}.tier-card.unavailable{box-shadow:none;background:#f8fafc;border-color:#cbd5e1}.tier-card.unavailable em{color:#475569;background:#e2e8f0}.tier-card:disabled{cursor:default;opacity:1}.tier-card strong{color:#030712;font-size:1.45rem}.tier-card>span{color:#111827;min-height:2.4em}.tier-card b{color:#030712;margin-top:.6rem;font-size:1.8rem}.tier-card ul{color:#111827;border-top:1px solid #e5e7eb;margin:1rem -1.4rem 0;padding:1rem 1.4rem 0;list-style:none}.tier-card li{align-items:flex-start;gap:.55rem;margin:.45rem 0;line-height:1.35;display:flex}.tier-card li:before{color:#6b7280;content:"✓";flex:none}.tier-card em{color:#fff;background:#111;border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:48px;margin-top:auto;font-style:normal;font-weight:900;display:flex}.plan-topline small{color:#155bd8;background:#eef6ff;border-radius:999px;padding:.25rem .5rem;font-size:.75rem}@media (width<=1120px){.tier-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (width<=680px){.billing-tabs{grid-template-columns:repeat(2,minmax(130px,1fr));width:100%}.tier-grid{grid-template-columns:1fr}.tier-card{min-height:auto}}.subscription-page{width:100%}.subscription-panel{width:min(1180px,100%);max-height:none;margin:0 auto;overflow:visible}.subscription-page .subscription-panel{box-shadow:none!important;background:0 0!important;border-radius:0!important;padding:0!important}.subscription-page .upgrade-header{margin-bottom:1.25rem}@media (width<=680px){.subscription-panel{border-radius:14px;width:100%;padding:1rem}.subscription-page .upgrade-header{margin-bottom:.85rem}.subscription-page .upgrade-header span{font-size:.68rem}.subscription-page .upgrade-header h2{font-size:1.5rem;line-height:1.08}.subscription-page .upgrade-step{gap:.8rem}.subscription-page .current-plan-card{gap:.65rem;padding:.85rem}.subscription-page .current-plan-card strong{font-size:1rem}.subscription-page .current-plan-card p{font-size:.9rem;line-height:1.35}.subscription-page .current-plan-meta{width:100%;font-size:.9rem}.subscription-page .billing-tabs{border-radius:14px;grid-template-columns:repeat(4,minmax(0,1fr));gap:.15rem;width:100%;padding:.2rem}.subscription-page .billing-tabs button{white-space:nowrap;border-radius:12px;min-height:38px;padding:0 .25rem;font-size:.78rem}.subscription-page .tier-grid{grid-template-columns:1fr;gap:.75rem}.subscription-page .tier-card{min-height:0;padding:1rem}.subscription-page .tier-card strong{font-size:1.25rem}.subscription-page .tier-card>span{min-height:0;font-size:.9rem;line-height:1.3}.subscription-page .tier-card b{margin-top:.65rem;font-size:1.55rem}.subscription-page .tier-card ul{margin:.8rem -1rem 0;padding:.8rem 1rem 0}.subscription-page .tier-card li{margin:.35rem 0;font-size:.9rem;line-height:1.3}.subscription-page .tier-card em{min-height:42px}.subscription-page .payment-step-grid{grid-template-columns:1fr}.subscription-page .payment-card{padding:.9rem}}@media (width<=390px){.subscription-panel{padding:.85rem}.subscription-page .billing-tabs button{min-height:36px;font-size:.72rem}.subscription-page .tier-card{padding:.9rem}.subscription-page .tier-card ul{margin-left:-.9rem;margin-right:-.9rem;padding-left:.9rem;padding-right:.9rem}}.upgrade-empty-state{color:#64748b;text-align:center;border:1px dashed #cbd5e1;border-radius:8px;padding:1rem;font-weight:800}.skeleton-card{pointer-events:none;background:#fff;border:1px solid #e2e8f0!important;box-shadow:0 10px 24px #0f172a0a!important}.skeleton-line{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s linear infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card .skeleton-badge{width:60px;height:16px;margin-bottom:1rem}.skeleton-card .skeleton-title{width:100px;height:28px;margin-bottom:.5rem}.skeleton-card .skeleton-subtitle{width:160px;height:16px;margin-bottom:1.5rem}.skeleton-card .skeleton-price{width:120px;height:32px;margin-bottom:.4rem}.skeleton-card .skeleton-duration{width:60px;height:14px;margin-bottom:1.5rem}.skeleton-card .skeleton-list{border-top:1px solid #f1f5f9;flex-direction:column;gap:.75rem;margin:1rem -1.4rem 0;padding:1rem 1.4rem 0;display:flex}.skeleton-card .skeleton-bullet{width:90%;height:14px}.skeleton-card .skeleton-bullet:nth-child(2){width:85%}.skeleton-card .skeleton-bullet:nth-child(3){width:95%}.skeleton-card .skeleton-bullet:nth-child(4){width:80%}.skeleton-card .skeleton-bullet:nth-child(5){width:75%}.skeleton-card .skeleton-button{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:8px;width:100%;height:48px;margin-top:auto;animation:1.5s linear infinite skeleton-loading}.billing-tabs-skeleton{background:#eef2f7;border-radius:999px;grid-template-columns:repeat(4,minmax(88px,1fr));align-self:center;gap:.2rem;margin:0 auto;padding:.25rem;display:inline-grid}.skeleton-tab{border-radius:999px;width:100%;min-height:42px}.auth-container{min-height:100vh;min-height:var(--app-viewport-height,100dvh);padding:2rem;padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));background:radial-gradient(at 8% 15%,#a78bfa59 0%,#0000 48%),radial-gradient(at 92% 85%,#5eead452 0%,#0000 48%),radial-gradient(at 75% 10%,#818cf82e 0%,#0000 40%),linear-gradient(150deg,#f0eeff 0%,#eef6ff 45%,#ecfdf9 100%);justify-content:center;align-items:center;font-family:Inter,sans-serif;display:flex;position:relative;overflow:hidden}.auth-container:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#7c3aed40 1.5px,#0000 1.5px);background-size:14px 14px;width:130px;height:130px;position:absolute;top:60px;left:60px}.auth-container:after{content:"";pointer-events:none;background-image:radial-gradient(circle,#14b8a640 1.5px,#0000 1.5px);background-size:14px 14px;width:130px;height:130px;position:absolute;bottom:60px;right:60px}.auth-card{z-index:1;background:#fff;border-radius:0;width:100%;max-width:900px;min-height:560px;animation:.5s cubic-bezier(.22,1,.36,1) authFadeUp;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 70px #6d28d91f,0 4px 20px #0000000f}@keyframes authFadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.auth-form-side{flex-direction:column;flex:1;justify-content:center;min-width:0;padding:2.8rem 2.8rem 2.4rem;display:flex}.auth-features-side{background:linear-gradient(160deg,#f5f3ff 0%,#ede9fe 40%,#e0f2fe 100%);flex-direction:column;flex:0 0 42%;justify-content:center;align-items:center;padding:2.5rem 2rem;display:flex;position:relative;overflow:hidden}.auth-features-side:before{content:"";pointer-events:none;background:radial-gradient(circle,#a78bfa47 0%,#0000 70%);border-radius:50%;width:260px;height:260px;position:absolute;top:-80px;right:-80px}.auth-features-side:after{content:"";pointer-events:none;background:radial-gradient(circle,#5eead438 0%,#0000 70%);border-radius:50%;width:200px;height:200px;position:absolute;bottom:-60px;left:-60px}.auth-shield-wrapper{justify-content:center;align-items:center;width:160px;height:160px;margin-bottom:1.5rem;display:flex;position:relative}.auth-shield-ring{border:1px solid #7c3aed26;border-radius:50%;position:absolute}.auth-shield-ring-3{background:#a78bfa14;width:160px;height:160px}.auth-shield-ring-2{background:#8b5cf61f;width:120px;height:120px}.auth-shield-ring-1{background:#6d28d926;width:84px;height:84px}.auth-shield-core{z-index:2;color:#6d28d9;justify-content:center;align-items:center;display:flex;position:relative}.auth-float-badge{z-index:3;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;animation:3s ease-in-out infinite floatBadge;display:flex;position:absolute;box-shadow:0 4px 14px #6d28d92e}.auth-float-badge-1{color:#7c3aed;animation-delay:0s;top:6px;right:14px}.auth-float-badge-2{color:#0d9488;animation-delay:.8s;bottom:8px;right:8px}.auth-float-badge-3{color:#6366f1;animation-delay:1.6s;top:14px;left:8px}@keyframes floatBadge{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.auth-features-heading{text-align:center;color:#1e1b4b;margin-bottom:1.4rem;font-size:1.3rem;font-weight:800;line-height:1.4}.auth-features-heading span{background:linear-gradient(135deg,#7c3aed 0%,#0d9488 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.auth-features-list{flex-direction:column;gap:.95rem;width:100%;display:flex}.auth-feature-item{align-items:flex-start;gap:.75rem;display:flex}.auth-feature-icon{color:#7c3aed;background:#7c3aed1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.auth-feature-item:nth-child(2) .auth-feature-icon{color:#0d9488;background:#0d94881a}.auth-feature-item:nth-child(3) .auth-feature-icon{color:#6366f1;background:#6366f11a}.auth-feature-text strong{color:#1e1b4b;font-size:.85rem;font-weight:700;display:block}.auth-feature-text p{color:#64748b;margin:.1rem 0 0;font-size:.77rem}.auth-header{text-align:center;margin-bottom:1.6rem}.auth-logo-wrapper{justify-content:center;margin-bottom:.9rem;display:flex}.auth-logo{object-fit:contain;background:linear-gradient(135deg,#7c3aed14 0%,#0d948814 100%);border:1.5px solid #7c3aed26;border-radius:14px;width:56px;height:56px;padding:5px;transition:transform .3s;box-shadow:0 4px 16px #7c3aed26}.auth-logo:hover{transform:scale(1.06)translateY(-2px)}.auth-header h2{color:#1e1b4b;letter-spacing:-.025em;margin-bottom:.3rem;font-size:1.75rem;font-weight:800}.auth-header h2.text-gradient{background:linear-gradient(135deg,#7c3aed 0%,#0d9488 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.auth-subtitle{color:#64748b;font-size:.88rem}.auth-error{color:#dc2626;text-align:center;background:#ef444412;border:1px solid #ef44442e;border-radius:8px;margin-bottom:1.1rem;padding:.65rem .9rem;font-size:.84rem}.auth-success{color:#047857;text-align:center;background:#10b98112;border:1px solid #10b9812e;border-radius:8px;margin-bottom:1.1rem;padding:.65rem .9rem;font-size:.84rem}.auth-card .form-group{margin-bottom:1rem}.auth-card .form-label{color:#475569;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.35rem;font-size:.73rem;font-weight:700;display:block}.auth-input-wrapper{align-items:center;display:flex;position:relative}.auth-input-icon{color:#94a3b8;pointer-events:none;align-items:center;display:flex;position:absolute;left:.85rem}.auth-input-icon-right{color:#94a3b8;cursor:pointer;align-items:center;transition:color .2s;display:flex;position:absolute;right:.85rem}.auth-input-icon-right:hover{color:#7c3aed}.auth-card .form-control{color:#1e293b;box-sizing:border-box;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:9px;width:100%;padding:.7rem .9rem .7rem 2.55rem;font-family:Inter,sans-serif;font-size:.92rem;transition:border-color .2s,box-shadow .2s,background .2s}.auth-card .form-control.no-icon{padding-left:.9rem}.auth-card .form-control.has-right-icon{padding-right:2.55rem}.auth-card .form-control::placeholder{color:#94a3b8}.auth-card .form-control:focus{color:#1e293b;background:#fff;border-color:#7c3aed;outline:none;box-shadow:0 0 0 3px #7c3aed1a}.otp-input{text-align:center;letter-spacing:.35rem;font-weight:800}.auth-submit{color:#fff;cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#7c3aed 0%,#0d9488 100%);border:none;border-radius:9px;width:100%;margin-top:.85rem;padding:.85rem;font-family:Inter,sans-serif;font-size:1rem;font-weight:700;transition:opacity .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 18px #7c3aed59}.auth-submit:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 8px 24px #7c3aed73}.auth-submit:disabled{opacity:.45;cursor:not-allowed;transform:none}.auth-secondary-btn{color:#475569;cursor:pointer;background:0 0;border:1.5px solid #e2e8f0;border-radius:9px;width:100%;margin-top:.55rem;padding:.75rem 1rem;font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;transition:border-color .2s,background .2s,color .2s}.auth-secondary-btn:hover:not(:disabled){color:#7c3aed;background:#7c3aed0a;border-color:#7c3aed}.auth-secondary-btn:disabled{cursor:not-allowed;opacity:.4}.auth-divider{color:#94a3b8;align-items:center;gap:.75rem;margin:1rem 0 .75rem;font-size:.8rem;font-weight:500;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#e2e8f0;flex:1;height:1px}.auth-footer{text-align:center;color:#64748b;margin-top:0;font-size:.87rem}.auth-switch{cursor:pointer;color:#7c3aed;font-weight:700;transition:opacity .2s}.auth-switch:hover{opacity:.75;text-decoration:underline}.legal-consent{color:#475569;grid-template-columns:16px 1fr;align-items:flex-start;gap:.6rem;margin-top:.9rem;font-size:.8rem;line-height:1.5;display:grid}.legal-consent input{accent-color:#7c3aed;width:16px;height:16px;margin:.15rem 0 0}.legal-consent a{color:#7c3aed;font-weight:700;text-decoration:none}.legal-consent a:hover{text-decoration:underline}.forgot-password-link{cursor:pointer;font-size:.84rem;font-weight:600;color:#7c3aed!important}.forgot-password-link:hover{text-decoration:underline}.referral-group{margin-top:1.25rem;position:relative}.referral-input-wrapper{align-items:center;display:flex;position:relative}.referral-input-wrapper input{text-transform:uppercase;padding-left:2.55rem!important}.referral-input-wrapper input.valid{background:#10b9810a!important;border-color:#10b981!important}.referral-input-wrapper input.invalid{background:#ef44440a!important;border-color:#ef4444!important}.referral-input-icon{color:#94a3b8;pointer-events:none;position:absolute;left:.85rem}.referral-status-msg{color:#94a3b8;margin:.28rem 0 0;font-size:.75rem}.referral-valid-badge{color:#047857;background:#10b98112;border:1px solid #10b98138;border-radius:7px;align-items:center;gap:.4rem;margin-top:.45rem;padding:.4rem .7rem;font-size:.79rem;font-weight:500;display:flex}.referral-valid-badge strong{color:#065f46}.referral-invalid-badge{color:#dc2626;background:#ef444412;border:1px solid #ef444438;border-radius:7px;align-items:center;gap:.4rem;margin-top:.45rem;padding:.4rem .7rem;font-size:.79rem;display:flex}@media (width<=768px){.auth-container{align-items:stretch;padding:0}.auth-card{min-height:100vh;box-shadow:none;flex-direction:column}.auth-features-side{display:none}.auth-form-side{justify-content:flex-start;padding:3.5rem 1.5rem 2.5rem}}@media (width<=480px){.auth-form-side{padding:2.5rem 1.25rem}.auth-header h2{font-size:1.55rem}}.password-strength-meter{width:100%;margin-top:.5rem}.strength-bars{gap:.5rem;margin-bottom:.35rem;display:flex}.strength-bar{background-color:#e2e8f0;border-radius:2px;flex:1;height:5px;transition:background-color .3s}.strength-label{margin-top:.2rem;font-size:.82rem;font-weight:700}.sidebar{background:var(--dark-gradient);color:#fff;width:248px;height:100vh;height:var(--app-viewport-height,100dvh);padding:.75rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;overflow-y:auto}.sidebar-brand{align-items:center;gap:.65rem;margin-bottom:.8rem;display:flex}.brand-icon{color:#25d366}.brand-text{letter-spacing:.5px;font-size:1.16rem;font-weight:700}.status-indicator{color:#ffffffb3;background:#ffffff0d;border-radius:2px;align-items:center;gap:.5rem;margin-bottom:.8rem;padding:.45rem .6rem;font-size:.85rem;display:flex}.status-dot{border-radius:50%;width:8px;height:8px}.status-online{background-color:#2ed573;box-shadow:0 0 8px #2ed573}.status-offline{background-color:#ff4757;box-shadow:0 0 8px #ff4757}.child-selector-container{margin-bottom:.75rem}.sidebar-label{text-transform:uppercase;letter-spacing:1px;color:#ffffff80;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:block}.child-select{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1a;border-radius:2px;outline:none;width:100%;padding:.55rem .7rem;font-family:inherit;font-size:.95rem;transition:all .3s}.child-select:focus{background:#ffffff26;border-color:#25d366}.child-select option{color:#fff;background-color:#1f1c2c}.sidebar-nav{flex-direction:column;flex:1;gap:.3rem;display:flex}.nav-item{color:#ffffffb3;border-radius:2px;align-items:center;gap:.65rem;padding:.52rem .62rem;font-weight:500;text-decoration:none;transition:all .3s;display:flex}.nav-item:hover{color:#fff;background:#ffffff0d}.nav-item.active{color:#fff;background:linear-gradient(135deg,#128c7e 0%,#075e54 100%);box-shadow:0 10px 20px #075e5433}.sidebar-footer{border-top:1px solid #ffffff1a;margin-top:auto;padding-top:.75rem}.btn-logout{color:#ff4757;cursor:pointer;background:0 0;border:none;border-radius:2px;align-items:center;gap:.65rem;width:100%;padding:.52rem .62rem;font-family:inherit;font-weight:600;transition:all .3s;display:flex}.btn-logout:hover{background:#ff47571a}.unread-badge-total{color:#fff;text-align:center;background-color:#ff4757;border-radius:8px;min-width:18px;margin-left:auto;padding:2px 8px;font-size:.75rem;font-weight:700;box-shadow:0 0 6px #ff475766}.sidebar-close-btn{display:none}.sidebar-legal-links{justify-content:center;align-items:center;margin-bottom:1rem;font-size:.8rem;display:flex}.legal-link{color:#fff9;text-decoration:none;transition:color .2s}.legal-link:hover{color:#fff;text-decoration:underline}.legal-separator{color:#fff6;margin:0 .5rem}@media (width<=768px){.sidebar{z-index:1000;transition:transform .3s ease-in-out;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-close-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:none;padding:.5rem;display:flex;position:absolute;top:1.5rem;right:1.5rem}.sidebar-close-btn:hover{color:#fff}}.sidebar-upgrade{color:#fff;cursor:pointer;background:#128c7e;border:none;border-radius:2px;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-bottom:.75rem;padding:.55rem .7rem;font-weight:800;display:flex}.sidebar-upgrade.attention{background:#dc2626}.plan-mini-card{background:#ffffff14;border:1px solid #ffffff1a;border-radius:2px;margin-bottom:.5rem;padding:.35rem .5rem}.plan-mini-card strong,.plan-mini-card span{display:block}.plan-mini-card strong{font-size:.85rem;font-weight:700}.plan-mini-card span{color:#ffffffa6;margin-top:.15rem;font-size:.72rem}.nav-item.locked{opacity:1;color:#ffffffeb;background:#ffffff0f}.nav-item.locked svg:not(.nav-lock){color:#ffffffd1}.required-tier-pill{color:#fff;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;margin-left:auto;padding:.12rem .38rem;font-size:.64rem;font-weight:800;line-height:1}.nav-lock{color:#ffffffb8;flex:none}.sidebar-referral-btn{color:#ffffffd9;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:2px;align-items:center;gap:.65rem;width:100%;margin-bottom:.75rem;padding:.55rem .7rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .25s;display:flex}.sidebar-referral-btn:hover{color:#fff;background:#ffffff1f;border-color:#fff3}.sidebar-referral-btn.active{color:#fff;background:linear-gradient(135deg,#128c7e 0%,#075e54 100%);border-color:#0000;box-shadow:0 10px 20px #075e5433}.dashboard-layout{min-height:100vh;min-height:var(--app-viewport-height,100dvh);background-color:#f3f4f6;display:flex}.dashboard-content{height:100vh;height:var(--app-viewport-height,100dvh);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.dashboard-header{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.page-title{margin-bottom:0;font-size:1.5rem}.active-child-badge{border-radius:var(--border-radius-sm,6px);align-items:center;padding:.45rem .9rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.active-child-badge.online{color:#047857;background:#10b9811a;border:1px solid #10b9814d}.active-child-badge.offline{color:#64748b;background:#94a3b81f;border:1px solid #94a3b840}.child-online-indicator{align-items:center;gap:5px;display:inline-flex}.child-online-indicator .status-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.child-online-indicator .status-dot.online{background-color:#10b981;animation:2s ease-in-out infinite child-status-pulse;box-shadow:0 0 6px #10b98199}.child-online-indicator .status-dot.offline{background-color:#94a3b8}@keyframes child-status-pulse{0%{opacity:.85;transform:scale(.95)}50%{opacity:1;transform:scale(1.15)}to{opacity:.85;transform:scale(.95)}}.dashboard-main{min-height:0;padding:2rem;padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));-webkit-overflow-scrolling:touch;background-color:#f8fafc;flex:1;overflow-y:auto}.dashboard-main.fullscreen-route{flex-direction:column;display:flex;overflow:hidden;padding:0!important}.mobile-menu-btn{display:none}.sidebar-overlay{width:100vw;height:100vh;height:var(--app-viewport-height,100dvh);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;background:#00000073;animation:.2s ease-out fadeIn;position:fixed;top:0;left:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.dashboard-layout{width:100%;height:100vh;height:var(--app-viewport-height,100dvh);min-height:var(--app-viewport-height,100dvh);flex-direction:column;padding-bottom:0;position:fixed;inset:0 0 auto;overflow:hidden}.dashboard-content{width:100%;height:100%;min-height:0}.mobile-menu-btn{color:#1e293b;cursor:pointer;border-radius:var(--border-radius-sm);background:0 0;border:none;justify-content:center;align-items:center;margin-right:.75rem;padding:.5rem;display:flex}.mobile-menu-btn:hover{background:#f1f5f9}.dashboard-header{flex:none;justify-content:flex-start;padding:1rem}.page-title{white-space:nowrap;text-overflow:ellipsis;flex:1;margin-right:.5rem;font-size:1.15rem;overflow:hidden}.active-child-badge{padding:.35rem .65rem;font-size:.8rem}.dashboard-main{min-height:0;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));overscroll-behavior:contain}.dashboard-main.fullscreen-route{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden;padding:0!important}}.get-pro-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#2563eb;border:1px solid #2563eb;border-radius:2px;align-items:center;gap:.45rem;padding:.55rem .85rem;font-weight:800;display:inline-flex}.get-pro-btn.attention{background:#dc2626;border-color:#dc2626}.premium-lock-panel{text-align:center;color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:12px;place-items:center;gap:.8rem;min-height:420px;padding:2rem;display:grid}.premium-lock-panel p{color:#64748b;max-width:540px;line-height:1.6}.desktop-upgrade-btn{display:inline-flex}@media (width<=768px){.desktop-upgrade-btn{display:none!important}}.upgrade-step{flex-direction:column;gap:1rem;display:flex}.current-plan-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.section-label{color:#2563eb;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.35rem;font-size:.72rem;font-weight:800;display:block}.current-plan-card strong,.payment-card h3{color:#0f172a;margin:0;display:block}.current-plan-card p{color:#64748b;margin:.35rem 0 0}.current-plan-meta{color:#2563eb;white-space:nowrap;align-items:center;gap:.5rem;font-weight:700;display:flex}.payment-step-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.payment-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem}.payment-summary{gap:.9rem;display:grid}.summary-price{color:#0f172a;font-size:1.8rem;font-weight:800}.summary-meta{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.summary-meta span{color:#64748b;font-size:.78rem;display:block}.summary-meta strong{color:#0f172a}.summary-note{color:#1e40af;background:#eff6ff;border-radius:10px;gap:.6rem;padding:.9rem;display:flex}.summary-note p{color:#1e40af;margin:0}.payment-list{color:#334155;gap:.7rem;margin-bottom:1rem;display:grid}.payment-list div{align-items:flex-start;gap:.6rem;line-height:1.45;display:flex}.payment-methods{gap:.5rem;margin-bottom:1rem;display:flex}.method-chip{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:.45rem .8rem;font-weight:800}.method-chip.active{color:#fff;background:#2563eb;border-color:#2563eb}.upgrade-back{color:#2563eb;cursor:pointer;background:0 0;align-items:center;gap:.4rem;width:fit-content;padding:0;font-weight:800;display:inline-flex}.plan-topline{color:#64748b;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.4rem;display:flex}.plan-topline span{margin:0}@media (width<=768px){.payment-step-grid{grid-template-columns:1fr}.current-plan-card{flex-direction:column;align-items:flex-start}.current-plan-meta{white-space:normal}}.feature-lock-overlay{z-index:1200;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a75;place-items:center;display:grid;position:fixed;inset:0}.feature-lock-card{color:#0f172a;background:#fff;border:1px solid #dbe5ef;border-radius:10px;gap:.8rem;width:min(420px,100%);padding:1.25rem;display:grid;box-shadow:0 22px 60px #0f172a38}.feature-lock-card svg{color:#0f766e}.feature-lock-card h2,.feature-lock-card p{margin:0}.feature-lock-card p{color:#475569;line-height:1.55}.feature-lock-actions{flex-wrap:wrap;justify-content:flex-end;gap:.7rem;margin-top:.2rem;display:flex}.lock-secondary-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.55rem .85rem;font-weight:800}@media (width<=520px){.feature-lock-actions{flex-direction:column-reverse}.feature-lock-actions button{justify-content:center;width:100%}}.tier-card.preferred{border-color:#0f766e;box-shadow:0 14px 34px #0f766e29}.tier-card.preferred .plan-topline span{color:#0f766e;font-weight:900}.sos-alert-overlay{z-index:1400;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#7f1d1d5c;place-items:center;display:grid;position:fixed;inset:0}.sos-alert-panel{color:#111827;background:#fff;border:1px solid #fecaca;border-radius:8px;gap:1rem;width:min(460px,100%);padding:1.25rem;display:grid;position:relative;box-shadow:0 24px 70px #7f1d1d47}.sos-alert-close{color:#991b1b;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:absolute;top:.85rem;right:.85rem}.sos-alert-top{align-items:center;gap:.85rem;padding-right:2.2rem;display:flex}.sos-alert-icon{color:#fff;background:#dc2626;border-radius:8px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.sos-alert-kicker{color:#dc2626;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .2rem;font-size:.78rem;font-weight:900}.sos-alert-panel h2{margin:0;font-size:1.35rem}.sos-alert-details{background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;gap:.65rem;padding:.85rem;display:grid}.sos-alert-details div{color:#7f1d1d;align-items:center;gap:.6rem;min-width:0;font-weight:700;display:flex}.sos-alert-details span{overflow-wrap:anywhere}.sos-alert-actions{flex-wrap:wrap;justify-content:flex-end;gap:.7rem;display:flex}.sos-map-btn{color:#fff;cursor:pointer;background:#dc2626;border:1px solid #dc2626;border-radius:8px;padding:.55rem .9rem;font-weight:900}@media (width<=520px){.sos-alert-actions{flex-direction:column-reverse}.sos-alert-actions button{justify-content:center;width:100%}}.geofence-alert-overlay{z-index:1350;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#78350f52;place-items:center;display:grid;position:fixed;inset:0}.geofence-alert-panel{color:#111827;background:#fff;border:1px solid #fed7aa;border-radius:8px;gap:1rem;width:min(460px,100%);padding:1.25rem;display:grid;position:relative;box-shadow:0 24px 70px #78350f40}.geofence-alert-close{color:#92400e;cursor:pointer;background:#fff;border:1px solid #fed7aa;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;position:absolute;top:.85rem;right:.85rem}.geofence-alert-top{align-items:center;gap:.85rem;padding-right:2.2rem;display:flex}.geofence-alert-icon{color:#fff;background:#d97706;border-radius:8px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.geofence-alert-kicker{color:#b45309;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .2rem;font-size:.78rem;font-weight:900}.geofence-alert-panel h2{margin:0;font-size:1.35rem}.geofence-alert-details{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;gap:.65rem;padding:.85rem;display:grid}.geofence-alert-details div{color:#78350f;align-items:center;gap:.6rem;min-width:0;font-weight:700;display:flex}.geofence-alert-details span{overflow-wrap:anywhere}.geofence-alert-actions{flex-wrap:wrap;justify-content:flex-end;gap:.7rem;display:flex}.geofence-map-btn{color:#fff;cursor:pointer;background:#d97706;border:1px solid #d97706;border-radius:8px;padding:.55rem .9rem;font-weight:900}@media (width<=520px){.geofence-alert-actions{flex-direction:column-reverse}.geofence-alert-actions button{justify-content:center;width:100%}}.dashboard-container{flex-direction:column;gap:1rem;display:flex}.welcome-banner{background:var(--dark-gradient);color:#fff;border:none;justify-content:space-between;align-items:center;display:flex}.welcome-banner h1{color:#fff;margin-bottom:.5rem;font-size:2.25rem}.welcome-banner p{color:#fffc;font-size:1.1rem}.banner-left{max-width:60%}.dashboard-grid{grid-template-columns:minmax(0,3fr) minmax(320px,2fr);align-items:start;gap:1rem;display:grid}.dashboard-left-column{flex-direction:column;gap:1rem;min-width:0;display:flex}.device-status-panel{align-self:start}.section-desc{color:var(--text-muted);margin-bottom:.65rem;font-size:.88rem}.control-panel{flex-direction:column;align-self:start;padding:1.25rem;display:flex}.controls-buttons{grid-template-columns:repeat(3,minmax(118px,1fr));gap:.75rem;margin-top:.35rem;display:grid}.control-btn{border-radius:var(--border-radius-md);cursor:pointer;background:#fff;border:1px solid #e2e8f0;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;min-height:88px;padding:.85rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:all .3s;display:flex}.control-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-5px)}.lock-btn{color:#ff4757;border-color:#ff475733}.lock-btn:hover{background:#ff47570d}.unlock-btn{color:#2ed573;border-color:#2ed57333}.unlock-btn:hover{background:#2ed5730d}.hide-btn{color:#ffa502;border-color:#ffa50233}.hide-btn:hover{background:#ffa5020d}.empty-state-controls{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.7rem;padding:1rem .75rem;display:flex}.icon-muted{color:#cbd5e1}.devices-list{flex-direction:column;gap:1rem;display:flex}.device-item{border-radius:var(--border-radius-md);background:#f8fafc;border:1px solid #edf2f7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.device-info{align-items:center;gap:1rem;display:flex}.device-info h4{margin-bottom:.15rem;font-size:1.05rem}.device-id{color:var(--text-muted);font-size:.85rem}.qr-btn{border-radius:var(--border-radius-sm);cursor:pointer;background:#fff;border:1px solid #cbd5e1;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:inherit;font-weight:500;transition:all .3s;display:flex}.qr-btn:hover{background:#f1f5f9;border-color:#94a3b8}.modal-overlay{z-index:1000;padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{width:90%;max-width:480px;max-height:min(90vh, calc(var(--app-viewport-height,100dvh) - 2rem));animation:.3s ease-out modalIn;overflow-y:auto}@keyframes modalIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid #edf2f7;justify-content:space-between;align-items:center;margin-bottom:.8rem;padding-bottom:1rem;display:flex}.close-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;font-size:2rem;line-height:1}.close-btn:hover{color:var(--text-main)}.w-full{width:100%}.success-pairing{text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.success-pairing h3{margin-bottom:0}.creds-box{border-radius:var(--border-radius-md);background:#f1f5f9;border:1px dashed #cbd5e1;width:100%;padding:1rem}.creds-box div{margin-bottom:.5rem;font-size:1.05rem}.creds-box div:last-child{margin-bottom:0}.qr-box{flex-direction:column;align-items:center;gap:.75rem;margin:1rem 0;display:flex}.qr-box img{border-radius:var(--border-radius-md);background:#fff;border:1px solid #e2e8f0;padding:.5rem}.qr-box p{color:var(--text-muted);font-size:.85rem}.text-center{text-align:center}.device-actions{align-items:center;gap:.5rem;display:flex}.remove-btn{border-radius:var(--border-radius-sm);cursor:pointer;color:#ff4757;background:#ff475714;border:1px solid #ff475733;justify-content:center;align-items:center;width:36px;height:36px;transition:all .3s;display:flex}.remove-btn:hover{background:#ff475726;border-color:#ff4757;transform:scale(1.05)}.remove-confirm-body{padding-top:.5rem}.remove-confirm-body>p{margin-bottom:1rem;font-size:1.05rem}.remove-warning-list{border-radius:var(--border-radius-md);background:#fff5f5;border:1px solid #fed7d7;margin-bottom:.8rem;padding:1rem 1.25rem}.remove-warning-list p{margin-bottom:.5rem;font-weight:500}.remove-warning-list ul{margin-bottom:.75rem;padding-left:1.25rem;list-style-type:disc}.remove-warning-list li{color:#4a5568;margin-bottom:.35rem;font-size:.95rem}.remove-warning-text{color:#e53e3e;font-weight:600;margin-bottom:0!important}.remove-confirm-actions{justify-content:flex-end;gap:1rem;display:flex}.btn-secondary{color:var(--text-main);border-radius:var(--border-radius-sm);cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;padding:.6rem 1.5rem;font-family:inherit;font-weight:600;transition:all .3s}.btn-secondary:hover{background:#e2e8f0}.btn-danger{color:#fff;border-radius:var(--border-radius-sm);cursor:pointer;background:#ff4757;border:none;padding:.6rem 1.5rem;font-family:inherit;font-weight:600;transition:all .3s}.btn-danger:hover{background:#e8364a;transform:translateY(-1px)}.btn-danger:disabled{opacity:.6;cursor:not-allowed;transform:none}.status-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:8px;display:inline-block}.status-dot.online{background-color:#4caf50;box-shadow:0 0 5px #4caf5080}.status-dot.offline{background-color:#9e9e9e}@media (width<=768px){.welcome-banner{text-align:left;flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}.welcome-banner h1{font-size:1.75rem}.banner-left{max-width:100%}.dashboard-grid{grid-template-columns:1fr;gap:1rem}.dashboard-left-column{gap:1rem}.controls-buttons{grid-template-columns:repeat(3,minmax(92px,1fr));gap:.65rem}.control-btn{min-height:82px;padding:.75rem .55rem;font-size:.82rem}}@media (width<=600px){.device-item{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.25rem}.device-actions{flex-wrap:wrap;gap:.5rem;width:100%;margin-top:.25rem;display:flex}.device-actions .qr-btn{flex:auto;justify-content:center;padding:.55rem .75rem;font-size:.85rem;margin-right:0!important}.device-actions .remove-btn{flex:none;justify-content:center;align-items:center;padding:.55rem .75rem;display:flex}}.live-view-container{min-height:calc(var(--app-viewport-height,100dvh) - 180px);box-sizing:border-box;justify-content:center;align-items:center;padding:1rem;display:flex}.stream-card{flex-direction:column;gap:1rem;width:100%;max-width:680px;display:flex}.stream-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.stream-title{align-items:center;gap:.75rem;display:flex}.stream-title h3{margin-bottom:0;font-size:1.25rem}.stream-badge{border-radius:var(--border-radius-sm);white-space:normal;word-break:break-word;max-width:100%;padding:.4rem .85rem;font-size:.85rem;font-weight:600;line-height:1.4}.stream-badge.waiting{color:#ffa502;background:#ffa5021a}.stream-badge.waiting.error{color:#ff4757;background:#ff47571a}.stream-badge.streaming{color:#2ed573;background:#2ed5731a;animation:1.5s infinite pulse}.stream-fallback-alert{border-radius:var(--border-radius-md,8px);color:#d97706;background:#f59e0b1a;border:1px solid #f59e0b40;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .85rem;font-size:.825rem;font-weight:500;animation:.3s fadeInNotice;display:flex}.stream-fallback-alert .notice-text{align-items:center;gap:.5rem;display:flex}.stream-fallback-alert .notice-dismiss{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;padding:0 .25rem;font-size:1.1rem;line-height:1;transition:opacity .2s}.stream-fallback-alert .notice-dismiss:hover{opacity:1}@keyframes fadeInNotice{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.65}50%{opacity:1}}.stream-viewport{border-radius:var(--border-radius-lg);aspect-ratio:16/10;background:#111827;border:1px solid #ffffff0d;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 4px 10px #00000080}.stream-image{object-fit:contain;max-width:100%;max-height:100%}.stream-placeholder{color:#fff9;text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.spinner{border:4px solid #ffffff1a;border-left-color:#14b8a6;border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.stream-actions{border-top:1px solid #edf2f7;justify-content:center;gap:1.5rem;padding-top:1rem;display:flex}.action-btn{border-radius:var(--border-radius-md);color:var(--text-main);cursor:pointer;background:#fff;border:1px solid #e2e8f0;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-family:inherit;font-weight:600;transition:all .3s;display:flex}.action-btn:hover{box-shadow:var(--shadow-sm);background:#f8fafc;transform:translateY(-2px)}.active-icon{color:#2ed573}.stop-stream-btn{color:#ff4757;background:#ff475714;border-color:#ff475733}.stop-stream-btn:hover{background:#ff475726}.audio-placeholder{background:#111827;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;height:100%;display:flex}.pulse-animation{animation:1.5s infinite audioPulse}@keyframes audioPulse{0%{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.audio-mic-halo{background:#ffffff08;border:1px solid #ffffff14;border-radius:50%;justify-content:center;align-items:center;width:110px;height:110px;transition:all .3s;display:flex}.audio-mic-halo.halo-active{background:#2ed5731f;border-color:#2ed57380;transform:scale(1.08);box-shadow:0 0 25px #2ed57359}.audio-wave-bars{align-items:center;gap:4px;height:24px;display:flex}.audio-wave-bars .bar{background:#2ed573;border-radius:2px;width:4px;animation:.8s ease-in-out infinite alternate waveBar;display:inline-block}.audio-wave-bars .bar:first-child{height:8px;animation-delay:.1s}.audio-wave-bars .bar:nth-child(2){height:16px;animation-delay:.3s}.audio-wave-bars .bar:nth-child(3){height:24px;animation-delay:.2s}.audio-wave-bars .bar:nth-child(4){height:14px;animation-delay:.4s}.audio-wave-bars .bar:nth-child(5){height:6px;animation-delay:.15s}@keyframes waveBar{0%{opacity:.5;transform:scaleY(.4)}to{opacity:1;transform:scaleY(1)}}.enable-audio-btn{color:#fff;border-radius:var(--border-radius-md);cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .25s;animation:2s infinite gentlePulse;display:flex;box-shadow:0 4px 14px #10b98166}.enable-audio-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98180}@keyframes gentlePulse{0%{transform:scale(1);box-shadow:0 4px 14px #10b98166}50%{transform:scale(1.04);box-shadow:0 6px 22px #10b98199}to{transform:scale(1);box-shadow:0 4px 14px #10b98166}}@media (width<=768px){.live-view-container{width:100%;height:100%;min-height:0;padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));align-items:stretch}.stream-card{min-height:0;max-width:100%!important;height:100%!important;box-shadow:none!important;border:none!important;border-radius:0!important;gap:.5rem!important;padding:.75rem!important}.stream-header{display:none!important}.stream-viewport{flex:1;height:auto;min-height:0;margin-bottom:.5rem;aspect-ratio:auto!important;border-radius:var(--border-radius-md)!important}.stream-actions{border-top:1px solid #edf2f7;flex:none;flex-direction:row!important;gap:.5rem!important;padding-top:.5rem!important}.action-btn{flex:1;justify-content:center;gap:.25rem!important;padding:.65rem .5rem!important;font-size:.85rem!important}}.webrtc-container-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.webrtc-container-wrapper .spinner{z-index:10;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.livekit-video-container{background:#111827;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.livekit-video-container video{object-fit:contain!important;width:100%!important;height:100%!important}.livekit-audio-sink{width:0;height:0;overflow:hidden}.stream-viewport:fullscreen{aspect-ratio:auto!important;border:none!important;border-radius:0!important;width:100vw!important;max-width:none!important;height:100vh!important;max-height:none!important}.app-icon-wrapper{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;min-height:48px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 3px 8px #00000014}.app-icon-wrapper:hover{transform:scale(1.04)}.app-icon-wrapper svg{width:100%;height:100%;display:block}.app-icon-real-img{object-fit:cover;width:100%;height:100%;image-rendering:-webkit-optimize-contrast;border-radius:12px;display:block}.app-icon-wrapper.avatar-icon{color:#fff;letter-spacing:.5px;text-shadow:0 1px 2px #0003;-webkit-user-select:none;user-select:none;font-size:1.25rem;font-weight:700}.app-usage-container{min-height:calc(var(--app-viewport-height,100dvh) - 160px);justify-content:center;align-items:flex-start;display:flex}.usage-card{flex-direction:column;gap:1.5rem;width:100%;max-width:800px;display:flex}.usage-header{justify-content:space-between;align-items:center;display:flex}.usage-title{align-items:center;gap:.75rem;display:flex}.usage-title h3{margin-bottom:0;font-size:1.25rem}.spin-icon{animation:1.5s linear infinite spin}.usage-status-alert{border-radius:var(--border-radius-md);color:var(--text-muted);text-align:center;background:#f1f5f9;padding:1.5rem}.search-bar-container{width:100%;position:relative}.search-icon{color:var(--text-muted);position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-input{padding-left:2.75rem!important}.apps-list{flex-direction:column;gap:1rem;max-height:550px;padding-right:.25rem;display:flex;overflow-y:auto}.app-item{border-radius:var(--border-radius-md);background:#f8fafc;border:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1rem;transition:all .3s;display:flex}.app-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.locked-app{background:#ff475705;border-color:#ff47574d}.app-meta{flex:1;align-items:center;gap:1rem;display:flex}.app-icon-placeholder{border-radius:var(--border-radius-md);background:var(--primary-gradient);color:#fff;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;font-weight:700;display:flex;box-shadow:0 4px 10px #14b8a633}.app-details h4{margin-bottom:.15rem;font-size:1.05rem}.app-package{color:var(--text-muted);word-break:break-all;margin-bottom:.35rem;font-size:.8rem}.usage-meter-container{align-items:center;gap:.5rem;display:flex}.usage-pill{color:#475569;background:#e2e8f0;border-radius:50px;padding:.15rem .5rem;font-size:.8rem;font-weight:600}.lock-toggle-btn{border-radius:var(--border-radius-sm);cursor:pointer;border:none;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:inherit;font-weight:600;transition:all .3s;display:flex}.lock-toggle-btn.btn-success{color:#475569;background:#e2e8f0}.lock-toggle-btn.btn-success:hover{color:#2ed573;background:#2ed57326}.lock-toggle-btn.btn-danger{color:#ff4757;background:#ff47571a;border:1px solid #ff475733}.lock-toggle-btn.btn-danger:hover{color:#fff;background:#ff4757}.limit-pill{color:#4facfe;cursor:pointer;background:#4facfe1a;border:1px dashed #4facfe66;align-items:center;transition:all .2s;display:inline-flex}.limit-pill:hover{background:#4facfe33}.limit-pill.active-limit{color:#fff;background:#4facfe;border-style:solid}.limit-editor{align-items:center;gap:.25rem;display:flex}.limit-input{border-radius:4px!important;width:75px!important;height:24px!important;padding:0 .35rem!important;font-size:.8rem!important}.btn-xs{cursor:pointer;border:none;border-radius:4px;padding:.2rem .4rem;font-size:.75rem;font-weight:600}.btn-xs.btn-success{color:#fff;background:#2ed573}.btn-xs.btn-outline{color:#64748b;background:0 0;border:1px solid #cbd5e1}@media (width<=600px){.app-item{flex-direction:column;align-items:flex-start;gap:1rem}.app-meta{width:100%}.usage-meter-container{justify-content:space-between;width:100%}}.usage-status-alert.warning-banner{color:#ef4444;border-radius:var(--border-radius-sm);text-align:left;background:#ef44441a;border-left:4px solid #ef4444;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.mapboxgl-map{-webkit-tap-highlight-color:#0000;font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;position:relative;overflow:hidden}.mapboxgl-canvas{position:absolute;top:0;left:0}.mapboxgl-map:-webkit-full-screen{width:100%;height:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;z-index:2;position:absolute}.mapboxgl-ctrl-top-left{top:0;left:0}.mapboxgl-ctrl-top{top:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-top-right{top:0;right:0}.mapboxgl-ctrl-right{top:50%;right:0;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translate(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{top:50%;left:0;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px buttontext}}.mapboxgl-ctrl-group button{box-sizing:border-box;background-color:initial;cursor:pointer;border:0;outline:none;width:32px;height:32px;padding:0;display:block;overflow:hidden}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;width:100%;height:100%;display:block}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid buttontext}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-of-type{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#eee}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10%2013c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h9c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-9z%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M14.5%208.5c-.75%200-1.5.75-1.5%201.5v3h-3c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h3v3c0%20.75.75%201.5%201.5%201.5S16%2019.75%2016%2019v-3h3c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-3v-3c0-.75-.75-1.5-1.5-1.5z%22%2F%3E%3C%2Fsvg%3E)}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10%2013c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h9c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-9z%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M14.5%208.5c-.75%200-1.5.75-1.5%201.5v3h-3c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h3v3c0%20.75.75%201.5%201.5%201.5S16%2019.75%2016%2019v-3h3c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-3v-3c0-.75-.75-1.5-1.5-1.5z%22%2F%3E%3C%2Fsvg%3E)}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23000%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10%2013c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h9c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-9z%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23000%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M14.5%208.5c-.75%200-1.5.75-1.5%201.5v3h-3c-.75%200-1.5.75-1.5%201.5S9.25%2016%2010%2016h3v3c0%20.75.75%201.5%201.5%201.5S16%2019.75%2016%2019v-3h3c.75%200%201.5-.75%201.5-1.5S19.75%2013%2019%2013h-3v-3c0-.75-.75-1.5-1.5-1.5z%22%2F%3E%3C%2Fsvg%3E)}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M24%2016v5.5c0%201.75-.75%202.5-2.5%202.5H16v-1l3-1.5-4-5.5%201-1%205.5%204%201.5-3h1zM6%2016l1.5%203%205.5-4%201%201-4%205.5%203%201.5v1H7.5C5.75%2024%205%2023.25%205%2021.5V16h1zm7-11v1l-3%201.5%204%205.5-1%201-5.5-4L6%2013H5V7.5C5%205.75%205.75%205%207.5%205H13zm11%202.5c0-1.75-.75-2.5-2.5-2.5H16v1l3%201.5-4%205.5%201%201%205.5-4%201.5%203h1V7.5z%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M18.5%2016c-1.75%200-2.5.75-2.5%202.5V24h1l1.5-3%205.5%204%201-1-4-5.5%203-1.5v-1h-5.5zM13%2018.5c0-1.75-.75-2.5-2.5-2.5H5v1l3%201.5L4%2024l1%201%205.5-4%201.5%203h1v-5.5zm3-8c0%201.75.75%202.5%202.5%202.5H24v-1l-3-1.5L25%205l-1-1-5.5%204L17%205h-1v5.5zM10.5%2013c1.75%200%202.5-.75%202.5-2.5V5h-1l-1.5%203L5%204%204%205l4%205.5L5%2012v1h5.5z%22%2F%3E%3C%2Fsvg%3E)}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M24%2016v5.5c0%201.75-.75%202.5-2.5%202.5H16v-1l3-1.5-4-5.5%201-1%205.5%204%201.5-3h1zM6%2016l1.5%203%205.5-4%201%201-4%205.5%203%201.5v1H7.5C5.75%2024%205%2023.25%205%2021.5V16h1zm7-11v1l-3%201.5%204%205.5-1%201-5.5-4L6%2013H5V7.5C5%205.75%205.75%205%207.5%205H13zm11%202.5c0-1.75-.75-2.5-2.5-2.5H16v1l3%201.5-4%205.5%201%201%205.5-4%201.5%203h1V7.5z%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M18.5%2016c-1.75%200-2.5.75-2.5%202.5V24h1l1.5-3%205.5%204%201-1-4-5.5%203-1.5v-1h-5.5zM13%2018.5c0-1.75-.75-2.5-2.5-2.5H5v1l3%201.5L4%2024l1%201%205.5-4%201.5%203h1v-5.5zm3-8c0%201.75.75%202.5%202.5%202.5H24v-1l-3-1.5L25%205l-1-1-5.5%204L17%205h-1v5.5zM10.5%2013c1.75%200%202.5-.75%202.5-2.5V5h-1l-1.5%203L5%204%204%205l4%205.5L5%2012v1h5.5z%22%2F%3E%3C%2Fsvg%3E)}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23000%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M24%2016v5.5c0%201.75-.75%202.5-2.5%202.5H16v-1l3-1.5-4-5.5%201-1%205.5%204%201.5-3h1zM6%2016l1.5%203%205.5-4%201%201-4%205.5%203%201.5v1H7.5C5.75%2024%205%2023.25%205%2021.5V16h1zm7-11v1l-3%201.5%204%205.5-1%201-5.5-4L6%2013H5V7.5C5%205.75%205.75%205%207.5%205H13zm11%202.5c0-1.75-.75-2.5-2.5-2.5H16v1l3%201.5-4%205.5%201%201%205.5-4%201.5%203h1V7.5z%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23000%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M18.5%2016c-1.75%200-2.5.75-2.5%202.5V24h1l1.5-3%205.5%204%201-1-4-5.5%203-1.5v-1h-5.5zM13%2018.5c0-1.75-.75-2.5-2.5-2.5H5v1l3%201.5L4%2024l1%201%205.5-4%201.5%203h1v-5.5zm3-8c0%201.75.75%202.5%202.5%202.5H24v-1l-3-1.5L25%205l-1-1-5.5%204L17%205h-1v5.5zM10.5%2013c1.75%200%202.5-.75%202.5-2.5V5h-1l-1.5%203L5%204%204%205l4%205.5L5%2012v1h5.5z%22%2F%3E%3C%2Fsvg%3E)}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23333%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10.5%2014l4-8%204%208h-8z%22%2F%3E%3Cpath%20id%3D%22south%22%20d%3D%22M10.5%2016l4%208%204-8h-8z%22%20fill%3D%22%23ccc%22%2F%3E%3C%2Fsvg%3E)}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10.5%2014l4-8%204%208h-8z%22%2F%3E%3Cpath%20id%3D%22south%22%20d%3D%22M10.5%2016l4%208%204-8h-8z%22%20fill%3D%22%23999%22%2F%3E%3C%2Fsvg%3E)}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23000%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cpath%20d%3D%22M10.5%2014l4-8%204%208h-8z%22%2F%3E%3Cpath%20id%3D%22south%22%20d%3D%22M10.5%2016l4%208%204-8h-8z%22%20fill%3D%22%23ccc%22%2F%3E%3C%2Fsvg%3E)}}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-up .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D%22%23333%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.29289%2011.7071C4.68342%2012.0976%205.31658%2012.0976%205.70711%2011.7071L9%208.41421L12.2929%2011.7071C12.6834%2012.0976%2013.3166%2012.0976%2013.7071%2011.7071C14.0976%2011.3166%2014.0976%2010.6834%2013.7071%2010.2929L9.70711%206.29289C9.31658%205.90237%208.68342%205.90237%208.29289%206.29289L4.29289%2010.2929C3.90237%2010.6834%203.90237%2011.3166%204.29289%2011.7071Z%22%20fill%3D%22%23333333%22%2F%3E%3C%2Fsvg%3E);background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-down .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D%22%23333%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.29289%206.29289C4.68342%205.90237%205.31658%205.90237%205.70711%206.29289L9%209.58579L12.2929%206.29289C12.6834%205.90237%2013.3166%205.90237%2013.7071%206.29289C14.0976%206.68342%2014.0976%207.31658%2013.7071%207.70711L9.70711%2011.7071C9.31658%2012.0976%208.68342%2012.0976%208.29289%2011.7071L4.29289%207.70711C3.90237%207.31658%203.90237%206.68342%204.29289%206.29289Z%22%20fill%3D%22%23333333%22%2F%3E%3C%2Fsvg%3E);background-size:18px 18px}.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D%22%23333%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cpath%20d%3D%22M4.0017%203.0017L4.0017%2015.0017L10.0017%2015.0017V12.0017H12.0017V15.0017H14.0017L14.0017%203.0017C14.0097%202.86829%2013.9894%202.73469%2013.9419%202.60973C13.8945%202.48477%2013.8211%202.37129%2013.7266%202.27678C13.6321%202.18228%2013.5186%202.10889%2013.3937%202.06147C13.2687%202.01405%2013.1351%201.99368%2013.0017%202.0017L5.0017%202.0017C4.86829%201.99368%204.73469%202.01405%204.60973%202.06147C4.48477%202.10889%204.37129%202.18228%204.27678%202.27678C4.18228%202.37129%204.10889%202.48477%204.06147%202.60973C4.01405%202.73469%203.99368%202.86829%204.0017%203.0017ZM8.0017%2014.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017%2010.0017H6.0017L6.0017%208.0017H8.0017V10.0017ZM8.0017%206.0017L6.0017%206.0017V4.0017H8.0017V6.0017ZM12.0017%2010.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017%206.0017H10.0017V4.0017L12.0017%204.0017V6.0017Z%22%20fill%3D%22%23333333%22%2F%3E%3C%2Fsvg%3E);background-size:18px 18px}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D%22%23fff%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cpath%20d%3D%22M4.0017%203.0017L4.0017%2015.0017L10.0017%2015.0017V12.0017H12.0017V15.0017H14.0017L14.0017%203.0017C14.0097%202.86829%2013.9894%202.73469%2013.9419%202.60973C13.8945%202.48477%2013.8211%202.37129%2013.7266%202.27678C13.6321%202.18228%2013.5186%202.10889%2013.3937%202.06147C13.2687%202.01405%2013.1351%201.99368%2013.0017%202.0017L5.0017%202.0017C4.86829%201.99368%204.73469%202.01405%204.60973%202.06147C4.48477%202.10889%204.37129%202.18228%204.27678%202.27678C4.18228%202.37129%204.10889%202.48477%204.06147%202.60973C4.01405%202.73469%203.99368%202.86829%204.0017%203.0017ZM8.0017%2014.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017%2010.0017H6.0017L6.0017%208.0017H8.0017V10.0017ZM8.0017%206.0017L6.0017%206.0017V4.0017H8.0017V6.0017ZM12.0017%2010.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017%206.0017H10.0017V4.0017L12.0017%204.0017V6.0017Z%22%20fill%3D%22%23333333%22%2F%3E%3C%2Fsvg%3E)}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-indoor-toggle .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20fill%3D%22%23000%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2018%2018%22%3E%3Cpath%20d%3D%22M4.0017%203.0017L4.0017%2015.0017L10.0017%2015.0017V12.0017H12.0017V15.0017H14.0017L14.0017%203.0017C14.0097%202.86829%2013.9894%202.73469%2013.9419%202.60973C13.8945%202.48477%2013.8211%202.37129%2013.7266%202.27678C13.6321%202.18228%2013.5186%202.10889%2013.3937%202.06147C13.2687%202.01405%2013.1351%201.99368%2013.0017%202.0017L5.0017%202.0017C4.86829%201.99368%204.73469%202.01405%204.60973%202.06147C4.48477%202.10889%204.37129%202.18228%204.27678%202.27678C4.18228%202.37129%204.10889%202.48477%204.06147%202.60973C4.01405%202.73469%203.99368%202.86829%204.0017%203.0017ZM8.0017%2014.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017%2010.0017H6.0017L6.0017%208.0017H8.0017V10.0017ZM8.0017%206.0017L6.0017%206.0017V4.0017H8.0017V6.0017ZM12.0017%2010.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017%206.0017H10.0017V4.0017L12.0017%204.0017V6.0017Z%22%20fill%3D%22%23333333%22%2F%3E%3C%2Fsvg%3E)}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23333%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23aaa%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20fill%3D%22%23f00%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%2333b5e5%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23e58978%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%2333b5e5%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%20display%3D%22none%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23e54e33%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%20display%3D%22none%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:2s linear infinite mapboxgl-spin}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23999%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20fill%3D%22%23f00%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%2333b5e5%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23e58978%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%2333b5e5%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%20display%3D%22none%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23e54e33%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%20display%3D%22none%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23000%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20display%3D%22none%22%2F%3E%3C%2Fsvg%3E)}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23666%22%3E%3Cpath%20d%3D%22M10%204C9%204%209%205%209%205v.1A5%205%200%200%200%205.1%209H5s-1%200-1%201%201%201%201%201h.1A5%205%200%200%200%209%2014.9v.1s0%201%201%201%201-1%201-1v-.1a5%205%200%200%200%203.9-3.9h.1s1%200%201-1-1-1-1-1h-.1A5%205%200%200%200%2011%205.1V5s0-1-1-1zm0%202.5a3.5%203.5%200%201%201%200%207%203.5%203.5%200%201%201%200-7z%22%2F%3E%3Ccircle%20id%3D%22dot%22%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%222%22%2F%3E%3Cpath%20id%3D%22stroke%22%20d%3D%22M14%205l1%201-9%209-1-1%209-9z%22%20fill%3D%22%23f00%22%2F%3E%3C%2Fsvg%3E)}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20fill-rule%3D%22evenodd%22%20viewBox%3D%220%200%2088%2023%22%3E%3Cdefs%3E%3Cpath%20id%3D%22logo%22%20d%3D%22M11.5%202.25c5.105%200%209.25%204.145%209.25%209.25s-4.145%209.25-9.25%209.25-9.25-4.145-9.25-9.25%204.145-9.25%209.25-9.25zM6.997%2015.983c-.051-.338-.828-5.802%202.233-8.873a4.395%204.395%200%20013.13-1.28c1.27%200%202.49.51%203.39%201.42.91.9%201.42%202.12%201.42%203.39%200%201.18-.449%202.301-1.28%203.13C12.72%2016.93%207%2016%207%2016l-.003-.017zM15.3%2010.5l-2%20.8-.8%202-.8-2-2-.8%202-.8.8-2%20.8%202%202%20.8z%22%2F%3E%3Cpath%20id%3D%22text%22%20d%3D%22M50.63%208c.13%200%20.23.1.23.23V9c.7-.76%201.7-1.18%202.73-1.18%202.17%200%203.95%201.85%203.95%204.17s-1.77%204.19-3.94%204.19c-1.04%200-2.03-.43-2.74-1.18v3.77c0%20.13-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01%200%20.01%200%20.01-.01.13%200%20.22.1.22.22v7.55c0%20.12-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V15c-.7.76-1.69%201.19-2.73%201.19-2.17%200-3.94-1.87-3.94-4.19%200-2.32%201.77-4.19%203.94-4.19%201.03%200%202.02.43%202.73%201.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24%204.24%200%2000-4.16%203.29c-.13.59-.13%201.19%200%201.77a4.233%204.233%200%20004.17%203.3c2.35%200%204.26-1.87%204.26-4.19%200-2.32-1.9-4.17-4.27-4.17zM60.63%205c.13%200%20.23.1.23.23v3.76c.7-.76%201.7-1.18%202.73-1.18%201.88%200%203.45%201.4%203.84%203.28.13.59.13%201.2%200%201.8-.39%201.88-1.96%203.29-3.84%203.29-1.03%200-2.02-.43-2.73-1.18v.77c0%20.12-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34%2011h-1.4c-.13%200-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13%200%20.22.11.23.22v.68c.5-.68%201.3-1.09%202.16-1.1h.03c1.09%200%202.09.6%202.6%201.55.45-.95%201.4-1.55%202.44-1.56%201.62%200%202.93%201.25%202.9%202.78l.03%205.2c0%20.13-.1.23-.23.23h-1.41c-.13%200-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8%200-1.46.7-1.59%201.62l.01%204.68c0%20.13-.11.23-.23.23h-1.41c-.13%200-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85%200-1.54.79-1.6%201.8v4.5c0%20.13-.1.23-.23.23zm53.615%200h-1.61c-.04%200-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213%200%2001-.03-.12c0-.12.09-.21.21-.21h1.61c.13%200%20.24.06.3.17l1.41%202.37%201.4-2.37a.34.34%200%2001.3-.17h1.6c.04%200%20.08.01.12.03.09.06.13.19.06.28l-2.37%203.65%202.43%203.7c0%20.05.01.09.01.13%200%20.12-.09.21-.21.21h-1.61c-.13%200-.24-.06-.3-.17l-1.44-2.42-1.44%202.42a.34.34%200%2001-.3.17zm-7.12-1.49c-1.33%200-2.42-1.12-2.42-2.51%200-1.39%201.08-2.52%202.42-2.52%201.33%200%202.42%201.12%202.42%202.51%200%201.39-1.08%202.51-2.42%202.52zm-19.865%200c-1.32%200-2.39-1.11-2.42-2.48v-.07c.02-1.38%201.09-2.49%202.4-2.49%201.32%200%202.41%201.12%202.41%202.51%200%201.39-1.07%202.52-2.39%202.53zm-8.11-2.48c-.01%201.37-1.09%202.47-2.41%202.47s-2.42-1.12-2.42-2.51c0-1.39%201.08-2.52%202.4-2.52%201.33%200%202.39%201.11%202.41%202.48l.02.08zm18.12%202.47c-1.32%200-2.39-1.11-2.41-2.48v-.06c.02-1.38%201.09-2.48%202.41-2.48s2.42%201.12%202.42%202.51c0%201.39-1.09%202.51-2.42%202.51z%22%2F%3E%3C%2Fdefs%3E%3Cmask%20id%3D%22clip%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22100%25%22%20height%3D%22100%25%22%20fill%3D%22white%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23logo%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%2F%3E%3C%2Fmask%3E%3Cg%20id%3D%22outline%22%20opacity%3D%220.3%22%20stroke%3D%22%23000%22%20stroke-width%3D%223%22%3E%3Ccircle%20mask%3D%22url(%23clip)%22%20cx%3D%2211.5%22%20cy%3D%2211.5%22%20r%3D%229.25%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%20mask%3D%22url(%23clip)%22%2F%3E%3C%2Fg%3E%3Cg%20id%3D%22fill%22%20opacity%3D%220.9%22%20fill%3D%22%23fff%22%3E%3Cuse%20xlink%3Ahref%3D%22%23logo%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");background-repeat:no-repeat;width:88px;height:23px;margin:0 0 -4px -4px;display:block;overflow:hidden}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20fill-rule%3D%22evenodd%22%20viewBox%3D%220%200%2088%2023%22%3E%3Cdefs%3E%3Cpath%20id%3D%22logo%22%20d%3D%22M11.5%202.25c5.105%200%209.25%204.145%209.25%209.25s-4.145%209.25-9.25%209.25-9.25-4.145-9.25-9.25%204.145-9.25%209.25-9.25zM6.997%2015.983c-.051-.338-.828-5.802%202.233-8.873a4.395%204.395%200%20013.13-1.28c1.27%200%202.49.51%203.39%201.42.91.9%201.42%202.12%201.42%203.39%200%201.18-.449%202.301-1.28%203.13C12.72%2016.93%207%2016%207%2016l-.003-.017zM15.3%2010.5l-2%20.8-.8%202-.8-2-2-.8%202-.8.8-2%20.8%202%202%20.8z%22%2F%3E%3Cpath%20id%3D%22text%22%20d%3D%22M50.63%208c.13%200%20.23.1.23.23V9c.7-.76%201.7-1.18%202.73-1.18%202.17%200%203.95%201.85%203.95%204.17s-1.77%204.19-3.94%204.19c-1.04%200-2.03-.43-2.74-1.18v3.77c0%20.13-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01%200%20.01%200%20.01-.01.13%200%20.22.1.22.22v7.55c0%20.12-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V15c-.7.76-1.69%201.19-2.73%201.19-2.17%200-3.94-1.87-3.94-4.19%200-2.32%201.77-4.19%203.94-4.19%201.03%200%202.02.43%202.73%201.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24%204.24%200%2000-4.16%203.29c-.13.59-.13%201.19%200%201.77a4.233%204.233%200%20004.17%203.3c2.35%200%204.26-1.87%204.26-4.19%200-2.32-1.9-4.17-4.27-4.17zM60.63%205c.13%200%20.23.1.23.23v3.76c.7-.76%201.7-1.18%202.73-1.18%201.88%200%203.45%201.4%203.84%203.28.13.59.13%201.2%200%201.8-.39%201.88-1.96%203.29-3.84%203.29-1.03%200-2.02-.43-2.73-1.18v.77c0%20.12-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34%2011h-1.4c-.13%200-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13%200%20.22.11.23.22v.68c.5-.68%201.3-1.09%202.16-1.1h.03c1.09%200%202.09.6%202.6%201.55.45-.95%201.4-1.55%202.44-1.56%201.62%200%202.93%201.25%202.9%202.78l.03%205.2c0%20.13-.1.23-.23.23h-1.41c-.13%200-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8%200-1.46.7-1.59%201.62l.01%204.68c0%20.13-.11.23-.23.23h-1.41c-.13%200-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85%200-1.54.79-1.6%201.8v4.5c0%20.13-.1.23-.23.23zm53.615%200h-1.61c-.04%200-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213%200%2001-.03-.12c0-.12.09-.21.21-.21h1.61c.13%200%20.24.06.3.17l1.41%202.37%201.4-2.37a.34.34%200%2001.3-.17h1.6c.04%200%20.08.01.12.03.09.06.13.19.06.28l-2.37%203.65%202.43%203.7c0%20.05.01.09.01.13%200%20.12-.09.21-.21.21h-1.61c-.13%200-.24-.06-.3-.17l-1.44-2.42-1.44%202.42a.34.34%200%2001-.3.17zm-7.12-1.49c-1.33%200-2.42-1.12-2.42-2.51%200-1.39%201.08-2.52%202.42-2.52%201.33%200%202.42%201.12%202.42%202.51%200%201.39-1.08%202.51-2.42%202.52zm-19.865%200c-1.32%200-2.39-1.11-2.42-2.48v-.07c.02-1.38%201.09-2.49%202.4-2.49%201.32%200%202.41%201.12%202.41%202.51%200%201.39-1.07%202.52-2.39%202.53zm-8.11-2.48c-.01%201.37-1.09%202.47-2.41%202.47s-2.42-1.12-2.42-2.51c0-1.39%201.08-2.52%202.4-2.52%201.33%200%202.39%201.11%202.41%202.48l.02.08zm18.12%202.47c-1.32%200-2.39-1.11-2.41-2.48v-.06c.02-1.38%201.09-2.48%202.41-2.48s2.42%201.12%202.42%202.51c0%201.39-1.09%202.51-2.42%202.51z%22%2F%3E%3C%2Fdefs%3E%3Cmask%20id%3D%22clip%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22100%25%22%20height%3D%22100%25%22%20fill%3D%22white%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23logo%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%2F%3E%3C%2Fmask%3E%3Cg%20id%3D%22outline%22%20opacity%3D%221%22%20stroke%3D%22%23000%22%20stroke-width%3D%223%22%3E%3Ccircle%20mask%3D%22url(%23clip)%22%20cx%3D%2211.5%22%20cy%3D%2211.5%22%20r%3D%229.25%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%20mask%3D%22url(%23clip)%22%2F%3E%3C%2Fg%3E%3Cg%20id%3D%22fill%22%20opacity%3D%221%22%20fill%3D%22%23fff%22%3E%3Cuse%20xlink%3Ahref%3D%22%23logo%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20fill-rule%3D%22evenodd%22%20viewBox%3D%220%200%2088%2023%22%3E%3Cdefs%3E%3Cpath%20id%3D%22logo%22%20d%3D%22M11.5%202.25c5.105%200%209.25%204.145%209.25%209.25s-4.145%209.25-9.25%209.25-9.25-4.145-9.25-9.25%204.145-9.25%209.25-9.25zM6.997%2015.983c-.051-.338-.828-5.802%202.233-8.873a4.395%204.395%200%20013.13-1.28c1.27%200%202.49.51%203.39%201.42.91.9%201.42%202.12%201.42%203.39%200%201.18-.449%202.301-1.28%203.13C12.72%2016.93%207%2016%207%2016l-.003-.017zM15.3%2010.5l-2%20.8-.8%202-.8-2-2-.8%202-.8.8-2%20.8%202%202%20.8z%22%2F%3E%3Cpath%20id%3D%22text%22%20d%3D%22M50.63%208c.13%200%20.23.1.23.23V9c.7-.76%201.7-1.18%202.73-1.18%202.17%200%203.95%201.85%203.95%204.17s-1.77%204.19-3.94%204.19c-1.04%200-2.03-.43-2.74-1.18v3.77c0%20.13-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01%200%20.01%200%20.01-.01.13%200%20.22.1.22.22v7.55c0%20.12-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V15c-.7.76-1.69%201.19-2.73%201.19-2.17%200-3.94-1.87-3.94-4.19%200-2.32%201.77-4.19%203.94-4.19%201.03%200%202.02.43%202.73%201.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24%204.24%200%2000-4.16%203.29c-.13.59-.13%201.19%200%201.77a4.233%204.233%200%20004.17%203.3c2.35%200%204.26-1.87%204.26-4.19%200-2.32-1.9-4.17-4.27-4.17zM60.63%205c.13%200%20.23.1.23.23v3.76c.7-.76%201.7-1.18%202.73-1.18%201.88%200%203.45%201.4%203.84%203.28.13.59.13%201.2%200%201.8-.39%201.88-1.96%203.29-3.84%203.29-1.03%200-2.02-.43-2.73-1.18v.77c0%20.12-.1.23-.23.23h-1.4c-.13%200-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34%2011h-1.4c-.13%200-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13%200%20.22.11.23.22v.68c.5-.68%201.3-1.09%202.16-1.1h.03c1.09%200%202.09.6%202.6%201.55.45-.95%201.4-1.55%202.44-1.56%201.62%200%202.93%201.25%202.9%202.78l.03%205.2c0%20.13-.1.23-.23.23h-1.41c-.13%200-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8%200-1.46.7-1.59%201.62l.01%204.68c0%20.13-.11.23-.23.23h-1.41c-.13%200-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85%200-1.54.79-1.6%201.8v4.5c0%20.13-.1.23-.23.23zm53.615%200h-1.61c-.04%200-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213%200%2001-.03-.12c0-.12.09-.21.21-.21h1.61c.13%200%20.24.06.3.17l1.41%202.37%201.4-2.37a.34.34%200%2001.3-.17h1.6c.04%200%20.08.01.12.03.09.06.13.19.06.28l-2.37%203.65%202.43%203.7c0%20.05.01.09.01.13%200%20.12-.09.21-.21.21h-1.61c-.13%200-.24-.06-.3-.17l-1.44-2.42-1.44%202.42a.34.34%200%2001-.3.17zm-7.12-1.49c-1.33%200-2.42-1.12-2.42-2.51%200-1.39%201.08-2.52%202.42-2.52%201.33%200%202.42%201.12%202.42%202.51%200%201.39-1.08%202.51-2.42%202.52zm-19.865%200c-1.32%200-2.39-1.11-2.42-2.48v-.07c.02-1.38%201.09-2.49%202.4-2.49%201.32%200%202.41%201.12%202.41%202.51%200%201.39-1.07%202.52-2.39%202.53zm-8.11-2.48c-.01%201.37-1.09%202.47-2.41%202.47s-2.42-1.12-2.42-2.51c0-1.39%201.08-2.52%202.4-2.52%201.33%200%202.39%201.11%202.41%202.48l.02.08zm18.12%202.47c-1.32%200-2.39-1.11-2.41-2.48v-.06c.02-1.38%201.09-2.48%202.41-2.48s2.42%201.12%202.42%202.51c0%201.39-1.09%202.51-2.42%202.51z%22%2F%3E%3C%2Fdefs%3E%3Cmask%20id%3D%22clip%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%22100%25%22%20height%3D%22100%25%22%20fill%3D%22white%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23logo%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%2F%3E%3C%2Fmask%3E%3Cg%20id%3D%22outline%22%20opacity%3D%221%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223%22%20fill%3D%22%23fff%22%3E%3Ccircle%20mask%3D%22url(%23clip)%22%20cx%3D%2211.5%22%20cy%3D%2211.5%22%20r%3D%229.25%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%20mask%3D%22url(%23clip)%22%2F%3E%3C%2Fg%3E%3Cg%20id%3D%22fill%22%20opacity%3D%221%22%20fill%3D%22%23000%22%3E%3Cuse%20xlink%3Ahref%3D%22%23logo%22%2F%3E%3Cuse%20xlink%3Ahref%3D%22%23text%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{min-height:20px;box-sizing:initial;background-color:#fff;border-radius:12px;margin:10px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{visibility:visible;padding:2px 28px 2px 8px}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left)>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{cursor:pointer;box-sizing:border-box;background-color:#ffffff80;background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22M4%2010a6%206%200%201%200%2012%200%206%206%200%201%200-12%200m5-3a1%201%200%201%200%202%200%201%201%200%201%200-2%200m0%203a1%201%200%201%201%202%200v3a1%201%200%201%201-2%200%22%2F%3E%3C%2Fsvg%3E);border:0;border-radius:12px;outline:none;width:24px;height:24px;display:none;position:absolute;top:0;right:0}:is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-left,.mapboxgl-ctrl-top-left) .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;right:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{top:0;left:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill-rule%3D%22evenodd%22%20fill%3D%22%23fff%22%3E%3Cpath%20d%3D%22M4%2010a6%206%200%201%200%2012%200%206%206%200%201%200-12%200m5-3a1%201%200%201%200%202%200%201%201%200%201%200-2%200m0%203a1%201%200%201%201%202%200v3a1%201%200%201%201-2%200%22%2F%3E%3C%2Fsvg%3E)}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill-rule%3D%22evenodd%22%3E%3Cpath%20d%3D%22M4%2010a6%206%200%201%200%2012%200%206%206%200%201%200-12%200m5-3a1%201%200%201%200%202%200%201%201%200%201%200-2%200m0%203a1%201%200%201%201%202%200v3a1%201%200%201%201-2%200%22%2F%3E%3C%2Fsvg%3E)}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{margin-left:2px;font-weight:700}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{color:#333;box-sizing:border-box;white-space:nowrap;background-color:#ffffffbf;border:2px solid #333;border-top:#333;padding:0 5px;font-size:10px}.mapboxgl-popup{will-change:transform;pointer-events:none;display:flex;position:absolute;top:0;left:0}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{z-index:1;border:10px solid #0000;width:0;height:0}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{border-top:none;border-bottom-color:#fff;align-self:center}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{border-top:none;border-bottom-color:#fff;border-left:none;align-self:flex-start}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{border-top:none;border-bottom-color:#fff;border-right:none;align-self:flex-end}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{border-top-color:#fff;border-bottom:none;align-self:center}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{border-top-color:#fff;border-bottom:none;border-left:none;align-self:flex-start}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{border-top-color:#fff;border-bottom:none;border-right:none;align-self:flex-end}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{border-left:none;border-right-color:#fff;align-self:center}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{border-left-color:#fff;border-right:none;align-self:center}.mapboxgl-popup-close-button{cursor:pointer;background-color:initial;border:0;border-radius:0 3px 0 0;position:absolute;top:0;right:0}.mapboxgl-popup-close-button:hover{background-color:#eee}.mapboxgl-popup-content{pointer-events:auto;background:#fff;border-radius:3px;padding:10px 10px 15px;position:relative;box-shadow:0 1px 2px #0000001a}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{will-change:transform;opacity:1;transition:opacity .2s;position:absolute;top:0;left:0}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;width:15px;height:15px}.mapboxgl-user-location-dot:before{content:"";animation:2s infinite mapboxgl-user-location-dot-pulse;position:absolute}.mapboxgl-user-location-dot:after{content:"";box-sizing:border-box;border:2px solid #fff;border-radius:50%;width:19px;height:19px;position:absolute;top:-2px;left:-2px;box-shadow:0 0 3px #00000059}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{width:0;height:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{content:"";border-bottom:7.5px solid #4aa1eb;position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px)skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px)skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;width:1px;height:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{opacity:.5;background:#fff;border:2px dotted #202020;width:0;height:0;position:absolute;top:0;left:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{color:#fff;text-align:center;opacity:0;pointer-events:none;background:#000000b3;justify-content:center;align-items:center;width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;transition:opacity .75s ease-in-out 1s;display:flex;position:absolute;top:0;left:0}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{text-align:center;font-size:14px;font-weight:600}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{color:#000;background-color:#bccbd7}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#ccc}.location-map-container{min-height:calc(var(--app-viewport-height,100dvh) - 160px);justify-content:center;align-items:flex-start;display:flex}.map-card{width:100%;max-width:1000px;height:calc(var(--app-viewport-height,100dvh) - 160px);flex-direction:column;gap:1.5rem;display:flex}.map-header{justify-content:space-between;align-items:center;display:flex}.map-title{align-items:center;gap:.75rem;display:flex}.map-title h3{margin-bottom:0;font-size:1.25rem}.map-header-actions{align-items:center;gap:.75rem;display:flex}.trail-toggle-btn{border-radius:var(--border-radius-sm);color:var(--text-main);cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;align-items:center;gap:.5rem;padding:.4rem .85rem;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.trail-toggle-btn:hover:not(:disabled){color:#0f766e;background:#e2e8f0;border-color:#0f766e}.trail-toggle-btn.active{color:#fff;background:#0f766e;border-color:#0f766e;box-shadow:0 2px 6px #0f766e4d}.trail-toggle-btn:disabled{opacity:.6;cursor:not-allowed}.coordinates-badge{border-radius:var(--border-radius-sm);color:#0284c7;background:#4facfe1a;border:1px solid #4facfe40;align-items:center;gap:.5rem;padding:.4rem .85rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.coordinates-badge.clickable{cursor:pointer}.coordinates-badge.clickable:hover{color:#0f766e;background:#0f766e1f;border-color:#0f766e;transform:translateY(-1px)}.coordinates-badge.live-tracking{color:#059669;background:#10b9811f;border-color:#10b98159}.coordinates-badge .recenter-hint{text-transform:uppercase;letter-spacing:.04em;color:inherit;background:#0284c71a;border-radius:4px;margin-left:.25rem;padding:2px 6px;font-size:.72rem;font-weight:700}.coordinates-badge.live-tracking .recenter-hint{color:#047857;background:#10b98133}.map-recenter-btn{z-index:10;color:#1e293b;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #cbd5e1;border-radius:9999px;align-items:center;gap:.5rem;padding:.55rem .95rem;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;position:absolute;bottom:24px;right:16px;box-shadow:0 4px 14px #0000001f}.map-recenter-btn:hover{color:#0f766e;background:#f8fafc;border-color:#0f766e;transform:translateY(-1px);box-shadow:0 6px 18px #0f766e33}.map-recenter-btn.active{color:#fff;background:linear-gradient(135deg,#0f766e,#14b8a6);border-color:#0f766e;box-shadow:0 4px 14px #0f766e59}.map-recenter-btn.active:hover{background:linear-gradient(135deg,#0d655e,#0f766e);transform:translateY(-1px)}.map-token-warning{color:#92400e;border-radius:var(--border-radius-md);background:#fffbeb;border:1px solid #fde68a;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.88rem;display:flex}.map-trail-notice{color:#0f766e;border-radius:var(--border-radius-md);background:#0f766e14;border:1px solid #0f766e40;align-items:center;gap:.5rem;padding:.5rem .85rem;font-size:.85rem;font-weight:500;display:flex}.map-status-alert{border-radius:var(--border-radius-md);color:var(--text-muted);text-align:center;background:#f1f5f9;padding:1rem;font-size:.95rem}.map-wrapper{border-radius:var(--border-radius-lg);border:1px solid #e2e8f0;flex:1;min-height:400px;position:relative;overflow:hidden}.child-map-marker{cursor:pointer;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:relative}.marker-pulse{background:#14b8a673;border-radius:50%;width:100%;height:100%;animation:2s ease-out infinite mapbox-marker-pulse;position:absolute}@keyframes mapbox-marker-pulse{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(2.4)}}.marker-pin{color:#fff;z-index:2;background:#14b8a6;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:relative;box-shadow:0 2px 8px #00000040}.edit-center-marker{color:#fff;cursor:pointer;background:#ff4757;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;box-shadow:0 2px 6px #ff475766}.mapboxgl-popup-content{border-radius:8px!important;padding:8px 12px!important;font-size:.85rem!important;box-shadow:0 4px 12px #00000026!important}@media (width<=768px){.location-map-container{width:100%;height:100%;min-height:0;padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px))}.map-card{max-width:100%!important;height:100%!important;box-shadow:none!important;border:none!important;border-radius:0!important;gap:0!important;padding:0!important}.map-header{display:none!important}.map-status-alert{border-radius:0!important;padding:.75rem!important;font-size:.85rem!important}.map-wrapper{flex:auto;height:auto;min-height:0;border:none!important;border-radius:0!important}}.map-layout{flex-direction:row;flex:1;gap:1.5rem;min-height:0;display:flex}.geofence-panel{border-radius:var(--border-radius-lg);width:320px;box-shadow:var(--shadow-sm);background:#fff;border:1px solid #e2e8f0;flex-direction:column;flex-shrink:0;gap:1.25rem;padding:1.5rem;display:flex}.geofence-panel-header{border-bottom:1px solid #edf2f7;align-items:center;gap:.5rem;padding-bottom:.75rem;display:flex}.geofence-panel-header h4{color:var(--text-main);margin-bottom:0;font-size:1.05rem;font-weight:600}.geofence-status{border-radius:var(--border-radius-md);padding:.75rem;font-size:.95rem;font-weight:600}.geofence-status.active{color:#2ed573;background:#2ed57314;border:1px solid #2ed57326}.geofence-status.inactive{color:var(--text-muted);background:#f8fafc;border:1px solid #e2e8f0;font-weight:500}.geofence-controls{flex-direction:column;gap:1rem;display:flex}.geofence-input-group{flex-direction:column;gap:.5rem;display:flex}.geofence-input-group label{color:var(--text-muted);font-size:.85rem;font-weight:600}.geofence-slider-value{color:var(--text-main);font-size:.95rem;font-weight:700}.geofence-slider{accent-color:#14b8a6;cursor:pointer;width:100%}.geofence-btn{border-radius:var(--border-radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.geofence-btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:0 4px 6px #14b8a626}.geofence-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 12px #14b8a640}.geofence-btn-primary:disabled{opacity:.6;cursor:not-allowed}.geofence-btn-secondary{color:var(--text-main);background:#f1f5f9;border:1px solid #e2e8f0}.geofence-btn-secondary:hover{background:#e2e8f0}.geofence-btn-danger{color:#ff4757;background:#ff475714;border:1px solid #ff475726}.geofence-btn-danger:hover{background:#ff475740}.geofence-instructions{color:var(--text-muted);border-radius:var(--border-radius-sm);background:#14b8a60a;border-left:3px solid #14b8a6;padding:.75rem;font-size:.8rem;line-height:1.4}@media (width<=900px){.map-layout{flex-direction:column;height:auto}.geofence-panel{width:100%;height:auto}.map-card{min-height:calc(var(--app-viewport-height,100dvh) - 160px);height:auto!important}.map-wrapper{flex:none;height:400px}}@media (width<=768px){.location-map-container{width:100%;height:100%;min-height:0;padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px))}.map-card{height:100%!important;min-height:0!important}.map-layout{flex:auto;gap:0;height:100%;min-height:0;overflow:hidden}.geofence-panel{-webkit-overflow-scrolling:touch;border-left:0;border-right:0;border-radius:0;flex:none;width:100%;max-height:42%;padding:1rem;overflow-y:auto}.map-wrapper{flex:auto;height:auto;min-height:220px}}.chat-container{--chat-accent:#128c7e;--chat-accent-strong:#075e54;--chat-accent-soft:#128c7e1f;--chat-border:#e2e8f0;--chat-surface:#fff;--chat-bg:#f6f8fb;--chat-muted:#64748b;--chat-text:#172033;--chat-green:#16a34a;--chat-blue:#2563eb;height:calc(100vh - 120px);height:calc(var(--app-viewport-height,100dvh) - 120px);background:var(--chat-bg);border:1px solid var(--chat-border);border-radius:14px;grid-template-columns:340px minmax(0,1fr);min-height:560px;display:grid;overflow:hidden;box-shadow:0 14px 32px #0f172a14}.dashboard-main.fullscreen-route .chat-container{flex:1;height:100%;min-height:0}.chat-sidebar{background:var(--chat-surface);border-right:1px solid var(--chat-border);flex-direction:column;min-width:0;display:flex}.sidebar-header{border-bottom:1px solid var(--chat-border);justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:10px 16px;display:flex}.sidebar-header-left{flex-direction:column;flex:none;display:flex}.sidebar-eyebrow{letter-spacing:0;color:var(--chat-muted);text-transform:uppercase;margin:0 0 3px;font-size:.72rem;font-weight:700}.sidebar-header h3{color:var(--chat-text);margin:0;font-size:1.2rem}.total-unread-badge,.unread-badge-bubble{background:var(--chat-accent-strong);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 8px;font-size:.75rem;font-weight:800;line-height:1;display:inline-flex}.chat-search-box{border:1px solid var(--chat-border);max-width:175px;min-height:36px;color:var(--chat-muted);background:#f8fafc;border-radius:8px;flex:1;align-items:center;gap:8px;margin-left:auto;padding:0 12px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.chat-search-box:focus-within{background:#fff;border-color:#128c7e9e;box-shadow:0 0 0 3px #128c7e1f}.chat-search-box input{width:100%;min-width:0;color:var(--chat-text);font:inherit;background:0 0;border:0;outline:0;font-size:.92rem}.chat-search-box input::placeholder{color:#94a3b8}.kids-chat-list{flex:1;min-height:0;padding:4px 10px 14px;overflow-y:auto}.kid-chat-item{width:100%;min-height:74px;color:var(--chat-text);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;margin:0 0 4px;padding:12px;transition:background .18s,border-color .18s,transform .18s;display:flex}.kid-chat-item:hover{background:#f8fafc;border-color:#edf2f7}.kid-chat-item.selected{background:#eefaf6;border-color:#128c7e47}.kid-avatar{color:#64748b;background:#eef2f7;border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;position:relative}.header-avatar{background:var(--chat-accent-soft);color:var(--chat-accent-strong)}.status-dot-inner{background:#94a3b8;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;bottom:1px;right:1px}.status-dot-inner.online{background:var(--chat-green)}.status-dot-inner.offline{background:#94a3b8}.kid-meta{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.kid-meta-top{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.kid-meta-top strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.95rem;overflow:hidden}.kid-sub{color:var(--chat-muted);font-size:.82rem}.empty-list-state{color:var(--chat-muted);text-align:center;justify-items:center;gap:10px;margin:24px 12px;padding:24px 12px;display:grid}.empty-list-state p{margin:0;font-size:.92rem;line-height:1.45}.chat-main{background:#f8fafc;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.chat-header{border-bottom:1px solid var(--chat-border);z-index:4;background:#fffffff5;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:8px 16px;display:flex}.chat-header-left,.chat-header-actions,.active-kid-info{align-items:center;min-width:0;display:flex}.chat-header-left{gap:12px}.active-kid-info{flex-direction:column;align-items:flex-start;gap:2px}.active-kid-info h3{text-overflow:ellipsis;white-space:nowrap;max-width:260px;color:var(--chat-text);margin:0;font-size:1.05rem;overflow:hidden}.status-text-sub{color:var(--chat-muted);font-size:.8rem;font-weight:600}.chat-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.connection-pill,.message-count-pill,.history-start-label{border:1px solid var(--chat-border);min-height:32px;color:var(--chat-muted);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:.8rem;font-weight:700;display:inline-flex}.connection-pill.connected{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.connection-pill.disconnected{color:#b45309;background:#fffbeb;border-color:#fde68a}.icon-toolbar-btn,.chat-back-btn,.input-action-btn,.send-message-btn,.reply-cancel-btn,.message-action-trigger{cursor:pointer;color:inherit;font:inherit;border:0;justify-content:center;align-items:center;display:inline-flex}.icon-toolbar-btn,.chat-back-btn{border:1px solid var(--chat-border);color:#475569;background:#f8fafc;border-radius:8px;width:38px;height:38px;transition:background .18s,border-color .18s,color .18s}.icon-toolbar-btn:hover,.chat-back-btn:hover,.icon-toolbar-btn.active{color:var(--chat-accent-strong);background:#eefaf6;border-color:#128c7e59}.chat-back-btn{display:none}.message-search-row{border-bottom:1px solid var(--chat-border);background:#fff;align-items:center;gap:10px;padding:10px 14px;display:flex}.message-search-box{flex:1;min-width:0;margin:0}.search-result-count{color:var(--chat-muted);white-space:nowrap;font-size:.82rem;font-weight:700}.chat-alert{color:#b91c1c;background:#fff1f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:9px;margin:10px 14px 0;padding:10px 12px;font-size:.9rem;font-weight:600;display:flex}.chat-alert span{flex:1;min-width:0}.chat-alert button{color:inherit;cursor:pointer;background:0 0;border:0;display:inline-flex}.messages-list{-webkit-overflow-scrolling:touch;background:linear-gradient(#f8fafce6,#f1f5f9c7),radial-gradient(circle at 1px 1px,#94a3b82e 1px,#0000 0) 0 0/18px 18px;flex-direction:column;flex:1;gap:8px;min-height:0;padding:18px clamp(14px,3vw,28px) 24px;display:flex;overflow-y:auto}.chat-loading,.empty-chat-state,.no-chat-selected{min-height:280px;color:var(--chat-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.empty-chat-state h3,.no-chat-selected h3{color:var(--chat-text);margin:0;font-size:1.1rem}.empty-chat-state p,.no-chat-selected p{max-width:430px;color:var(--chat-muted);margin:0;line-height:1.5}.empty-chat-state.compact{min-height:180px}.no-chat-icon-wrap{width:96px;height:96px;color:var(--chat-accent-strong);background:#eefaf6;border-radius:24px;place-items:center;display:grid;position:relative;box-shadow:0 14px 30px #128c7e24}.no-chat-icon-wrap svg:not(.no-chat-icon){color:#2563eb;background:#fff;border-radius:8px;padding:3px;position:absolute;bottom:13px;right:11px}.no-chat-icon-wrap svg:last-child{color:#0f766e;right:39px}.spinner{animation:1s linear infinite chat-spin}@keyframes chat-spin{to{transform:rotate(360deg)}}.history-control-row{justify-content:center;align-items:center;min-height:34px;display:flex}.load-older-btn{border:1px solid var(--chat-border);color:#475569;cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:0 14px;font-size:.82rem;font-weight:800;transition:background .18s,color .18s,border-color .18s;display:inline-flex}.load-older-btn:hover:not(:disabled){color:var(--chat-text);background:#f8fafc;border-color:#cbd5e1}.load-older-btn:disabled{cursor:not-allowed;opacity:.65}.history-start-label{background:#ffffffc7;min-height:28px;font-size:.76rem}.message-render-block{flex-direction:column;gap:8px;display:flex}.date-separator{z-index:2;pointer-events:none;justify-content:center;margin:4px 0;display:flex;position:sticky;top:4px}.date-separator span{color:var(--chat-muted);background:#ffffffe6;border:1px solid #e2e8f0e0;border-radius:999px;padding:5px 10px;font-size:.75rem;font-weight:800;box-shadow:0 6px 16px #0f172a0f}.message-bubble-wrapper{width:100%;display:flex}.message-bubble-wrapper.incoming{justify-content:flex-start}.message-bubble-wrapper.outgoing{justify-content:flex-end}.message-bubble{word-break:break-word;border:1px solid #0000;border-radius:13px;flex-direction:column;gap:6px;min-width:92px;max-width:min(680px,72%);padding:10px 12px 8px;display:flex;position:relative;box-shadow:0 8px 18px #0f172a0f}.incoming .message-bubble{border-color:var(--chat-border);color:var(--chat-text);background:#fff;border-bottom-left-radius:4px}.outgoing .message-bubble{color:#fff;background:linear-gradient(135deg,#128c7e 0%,#075e54 100%);border-bottom-right-radius:4px}.message-bubble-wrapper.grouped .message-bubble{margin-top:-2px}.message-actions{z-index:12;position:absolute;top:5px}.incoming .message-actions{right:-42px}.outgoing .message-actions{left:-42px}.message-action-trigger{border:1px solid var(--chat-border);color:#475569;opacity:0;pointer-events:none;background:#fffffff2;border-radius:999px;width:30px;height:30px;transition:opacity .18s,transform .18s,background .18s;box-shadow:0 8px 18px #0f172a14}.message-bubble:hover .message-action-trigger,.message-bubble.menu-open .message-action-trigger,.message-action-trigger:focus-visible{opacity:1;pointer-events:auto}.message-action-trigger:hover{color:var(--chat-accent-strong);background:#eefaf6}.message-dropdown-menu,.reaction-picker-popup{border:1px solid var(--chat-border);z-index:30;background:#fff;border-radius:8px;min-width:154px;position:absolute;top:34px;overflow:hidden;box-shadow:0 18px 38px #0f172a29}.incoming .message-dropdown-menu,.incoming .reaction-picker-popup{right:0}.outgoing .message-dropdown-menu,.outgoing .reaction-picker-popup{left:0}.message-dropdown-menu button,.message-dropdown-menu a{width:100%;min-height:38px;color:var(--chat-text);cursor:pointer;font:inherit;text-align:left;background:#fff;border:0;align-items:center;gap:9px;padding:0 12px;font-size:.88rem;font-weight:700;text-decoration:none;display:flex}.message-dropdown-menu button:hover,.message-dropdown-menu a:hover{background:#f8fafc}.reaction-picker-popup{grid-template-columns:repeat(6,1fr);gap:4px;width:212px;padding:8px;display:grid;overflow:visible}.emoji-item{cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.12rem;display:inline-flex}.emoji-item:hover{background:#f1f5f9}.quoted-reply{border-left:3px solid var(--chat-accent-strong);max-width:100%;color:var(--chat-text);background:#0f172a0f;border-radius:8px;align-items:flex-start;gap:7px;padding:7px 9px;font-size:.84rem;font-weight:700;line-height:1.35;display:flex}.quoted-reply span{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.outgoing .quoted-reply{color:#fff;background:#ffffff2e;border-left-color:#ffffffe6}.message-text{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:.96rem;line-height:1.48}.message-media{background:#0f172a14;border:1px solid #0f172a14;border-radius:10px;flex-direction:column;width:min(360px,62vw);max-width:100%;display:flex;overflow:hidden}.media-image,.media-player{object-fit:cover;background:#0f172a;width:100%;max-height:280px;display:block}.media-download-btn{color:#334155;background:#fffffff0;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 10px;font-size:.82rem;font-weight:800;text-decoration:none;display:inline-flex}.media-download-btn:hover{color:var(--chat-accent-strong);background:#fff}.message-info-footer{align-self:flex-end;align-items:center;gap:4px;line-height:1;display:inline-flex}.message-time{opacity:.78;font-size:.72rem;font-weight:700}.incoming .message-time{color:var(--chat-muted)}.outgoing .message-time,.outgoing .status-sent{color:#ffffffdb}.message-status{align-items:center;display:inline-flex}.status-seen{color:#38bdf8}.reaction-badge{border:1px solid var(--chat-border);min-width:28px;height:24px;color:var(--chat-text);background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.95rem;display:inline-flex;position:absolute;bottom:-13px;right:14px;box-shadow:0 8px 20px #0f172a1a}.incoming .reaction-badge{right:-10px}.typing-indicator-bubble{border:1px solid var(--chat-border);background:#fff;border-radius:18px 18px 18px 5px;align-items:center;gap:5px;width:fit-content;min-height:36px;padding:0 14px;display:inline-flex;box-shadow:0 8px 18px #0f172a0f}.typing-dot{background:#94a3b8;border-radius:50%;width:7px;height:7px;animation:1.3s infinite both typing-bounce}.typing-dot:nth-child(2){animation-delay:.18s}.typing-dot:nth-child(3){animation-delay:.36s}@keyframes typing-bounce{0%,80%,to{opacity:.45;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.jump-to-bottom-btn{z-index:8;background:var(--chat-accent-strong);color:#fff;cursor:pointer;min-height:36px;font:inherit;border:0;border-radius:999px;padding:0 14px;font-size:.84rem;font-weight:800;position:absolute;bottom:98px;right:28px;box-shadow:0 12px 26px #075e5447}.reply-banner{border-top:1px solid var(--chat-border);border-left:4px solid var(--chat-accent-strong);background:#fff;align-items:center;gap:12px;padding:10px 18px;display:flex}.reply-banner-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.reply-banner-title{color:var(--chat-accent-strong);font-size:.78rem;font-weight:800}.reply-banner-text{min-width:0;color:var(--chat-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.reply-cancel-btn{color:#64748b;background:#f8fafc;border-radius:8px;width:34px;height:34px}.reply-cancel-btn:hover{color:#b91c1c;background:#fee2e2}.chat-input-bar{border-top:1px solid var(--chat-border);z-index:5;background:#fffffffa;align-items:flex-end;gap:10px;padding:12px 18px;display:flex}.input-action-btn,.send-message-btn{border-radius:50%;flex:0 0 44px;width:44px;height:44px;transition:transform .18s,opacity .18s,background .18s}.input-action-btn{color:#475569;background:#f1f5f9}.input-action-btn:hover:not(:disabled){background:#e2e8f0;transform:translateY(-1px)}.send-message-btn{color:#fff;background:linear-gradient(135deg,#128c7e 0%,#075e54 100%);box-shadow:0 10px 22px #075e5438}.send-message-btn:hover:not(:disabled){transform:translateY(-1px)}.input-action-btn:disabled,.send-message-btn:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.composer-field-wrap{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.chat-input-field{resize:none;border:1.5px solid var(--chat-border);width:100%;min-height:44px;max-height:132px;color:var(--chat-text);font:inherit;background:#f8fafc;border-radius:10px;outline:0;padding:11px 14px;font-size:.95rem;line-height:1.35;transition:background .2s,border-color .2s,box-shadow .2s;overflow-y:auto}.chat-input-field:focus{background:#fff;border-color:#128c7e9e;box-shadow:0 0 0 3px #128c7e1f}.composer-hints{color:#94a3b8;justify-content:space-between;gap:10px;min-height:14px;padding:0 4px;font-size:.72rem;font-weight:700;display:flex}.composer-hints span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (width<=1100px){.chat-container{grid-template-columns:300px minmax(0,1fr)}.message-bubble{max-width:min(620px,78%)}.message-count-pill{display:none}}@media (width<=900px){.chat-container{height:100%;min-height:0;box-shadow:none;border:0;border-radius:0;grid-template-columns:1fr}.chat-sidebar,.chat-main{width:100%;min-height:0}.chat-container.has-active-chat .chat-sidebar,.chat-container:not(.has-active-chat) .chat-main{display:none}.chat-back-btn{display:inline-flex}.message-bubble{max-width:84%}.incoming .message-actions{right:-34px}.outgoing .message-actions{left:-34px}.message-action-trigger{opacity:1;pointer-events:auto}}@media (width<=768px){.chat-container{height:100%;min-height:0;padding-bottom:0}.sidebar-header{gap:8px;min-height:auto;padding:8px 12px}.chat-search-box{margin:0}.kid-chat-item{min-height:68px;padding:10px}.chat-header{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px;min-height:auto;padding:6px 10px}.chat-header-left{flex:none;min-width:0}.header-avatar{flex-basis:38px;width:38px;height:38px}.active-kid-info h3{max-width:160px;font-size:.98rem}.chat-header-actions{flex:1;justify-content:flex-end;gap:6px;width:auto;padding-left:0}.connection-pill{min-height:30px;font-size:.76rem}.icon-toolbar-btn,.chat-back-btn{width:34px;height:34px}.message-search-row{gap:8px;padding:8px 10px}.search-result-count{display:none}.chat-alert{margin:8px 10px 0;font-size:.84rem}.messages-list{overscroll-behavior:contain;gap:6px;padding:12px 10px 16px}.message-bubble{border-radius:12px;max-width:calc(100% - 42px);padding:9px 10px 7px}.message-text{font-size:.93rem}.message-media{width:min(285px,72vw)}.media-image,.media-player{max-height:220px}.incoming .message-actions{right:-35px}.outgoing .message-actions{left:-35px}.message-action-trigger{width:28px;height:28px}.message-dropdown-menu,.reaction-picker-popup{top:31px}.outgoing .message-dropdown-menu,.outgoing .reaction-picker-popup{left:auto;right:0}.incoming .message-dropdown-menu,.incoming .reaction-picker-popup{left:0;right:auto}.reaction-picker-popup{width:198px}.jump-to-bottom-btn{right:12px;bottom:calc(96px + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px))}.reply-banner{padding:9px 10px}.chat-input-bar{padding:9px 10px;padding-bottom:calc(9px + env(safe-area-inset-bottom,0px) + var(--app-bottom-safe-area,0px));gap:8px;position:sticky;bottom:0}.input-action-btn,.send-message-btn{flex-basis:40px;width:40px;height:40px}.chat-input-field{min-height:40px;padding:9px 11px;font-size:.92rem}.composer-hints{display:none}.empty-chat-state,.no-chat-selected{min-height:220px;padding:18px}}@media (width<=420px){.active-kid-info h3{max-width:126px}.connection-pill{text-overflow:ellipsis;max-width:126px;overflow:hidden}.message-bubble{max-width:calc(100% - 36px)}.message-media{width:min(245px,70vw)}.reaction-picker-popup{grid-template-columns:repeat(6,1fr);width:184px}.emoji-item{width:26px;height:26px}}.storage-page{--surface:var(--card-bg,#fff);--surface-soft:#f8fafc;--border:#e2e8f0;--text-primary:var(--text-main,#2d3436);--text-secondary:var(--text-muted,#636e72);--primary:#14b8a6;--secondary:#0f766e;flex-direction:column;gap:1rem;display:flex}.storage-toolbar{background:var(--surface);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.storage-toolbar span{color:var(--text-muted);text-transform:uppercase;font-size:.75rem;font-weight:800}.storage-toolbar h2{margin:.2rem 0}.storage-toolbar p{color:var(--text-secondary);word-break:break-all;margin:0}.storage-actions{gap:.5rem;display:flex}.storage-actions button,.storage-row{border:1px solid var(--border);cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;display:inline-flex}.storage-actions button{background:var(--surface-soft);color:var(--text-primary);min-height:40px;padding:0 .85rem;font-weight:800}.storage-actions button:disabled,.storage-row:disabled{cursor:default;opacity:.55}.storage-status{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:.8rem 1rem}.storage-list{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.storage-row{color:var(--text-primary);text-align:left;background:0 0;border-width:0 0 1px;border-radius:0;justify-content:space-between;width:100%;min-height:62px;padding:.75rem 1rem}.storage-row:last-child{border-bottom:0}.storage-row:not(:disabled):hover{background:var(--surface-soft)}.storage-icon{color:var(--primary);display:inline-flex}.storage-name{flex-direction:column;flex:1;min-width:0;display:flex}.storage-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.storage-name small{color:var(--text-muted);margin-top:.2rem}.spin{animation:1s linear infinite storage-spin}@keyframes storage-spin{to{transform:rotate(360deg)}}@media (width<=760px){.storage-toolbar{flex-direction:column;align-items:stretch}.storage-actions button{flex:1;justify-content:center}}.storage-row.file{cursor:pointer}.storage-row.file:hover{background:var(--surface-soft)}.storage-row.file .storage-icon{color:var(--secondary)!important}.download-icon{color:var(--text-muted);opacity:.7;transition:opacity .2s,color .2s}.storage-row:hover .download-icon{color:var(--primary);opacity:1}.preview-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#0f172abf;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.2s ease-out fadeIn;display:flex;position:fixed;top:0;left:0}.preview-modal-content{background:var(--surface);border:1px solid var(--border);border-radius:2px;flex-direction:column;width:90%;max-width:650px;max-height:85vh;animation:.25s cubic-bezier(.34,1.56,.64,1) scaleIn;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #00000040,0 10px 10px -5px #0003}.preview-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.preview-modal-header h4{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:80%;margin:0;font-size:1.1rem;font-weight:700;overflow:hidden}.preview-close-btn{background:var(--surface-soft);color:var(--text-secondary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;transition:background .2s,color .2s;display:flex}.preview-close-btn:hover{color:#fff;background:#ff4757}.preview-modal-body{background:#0f172a;flex:1;justify-content:center;align-items:center;min-height:250px;padding:3px;display:flex;overflow:auto}.preview-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:50vh}.preview-modal-footer{border-top:1px solid var(--border);background:var(--surface-soft);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.preview-modal-footer span{color:var(--text-muted);font-size:.85rem}.preview-download-btn{background:var(--primary);color:#fff;border-radius:8px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s}.preview-download-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #2ed5734d}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes wave{0%,to{transform:scaleY(1)}50%{transform:scaleY(2.2)}}.web-filter-page{flex-direction:column;gap:1rem;width:100%;max-width:1120px;margin:0 auto;display:flex}.web-filter-hero,.web-filter-card,.web-filter-empty{background:var(--card-bg,#fff);box-shadow:var(--shadow-sm,0 10px 30px #0f172a0f);border:1px solid #94a3b838;border-radius:8px}.web-filter-hero{justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;display:flex}.web-filter-eyebrow,.web-filter-card-title,.web-filter-alert,.web-filter-stat,.domain-row,.attempt-row{align-items:center;display:flex}.web-filter-eyebrow{color:#0f766e;letter-spacing:.04em;text-transform:uppercase;gap:.4rem;margin-bottom:.35rem;font-size:.78rem;font-weight:800}.web-filter-hero h2{color:var(--text-primary,#0f172a);margin:0;font-size:1.55rem}.web-filter-hero p{color:var(--text-muted,#64748b);margin:.25rem 0 0}.web-filter-grid{flex-direction:row;align-items:stretch;gap:1rem;display:flex}.web-filter-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.web-filter-card{padding:1rem}.dns-card{flex-shrink:0;justify-content:space-between;align-items:center;width:280px;display:flex}.web-filter-card-title{gap:.75rem}.web-filter-card-title.compact{margin-bottom:.9rem}.web-filter-card-title h3{color:var(--text-primary,#0f172a);margin:0;font-size:1rem}.web-filter-card-title span,.domain-row span,.attempt-row span,.global-rule-footnote{color:var(--text-muted,#64748b);font-size:.82rem}.web-filter-switch{width:56px;height:32px;position:relative}.web-filter-switch input{opacity:0;width:0;height:0}.web-filter-slider{cursor:pointer;background:#cbd5e1;border-radius:999px;transition:all .2s;position:absolute;inset:0}.web-filter-slider:before{content:"";background:#fff;border-radius:999px;width:24px;height:24px;transition:all .2s;position:absolute;top:4px;left:4px;box-shadow:0 2px 8px #0f172a2e}.web-filter-switch input:checked+.web-filter-slider{background:#0f766e}.web-filter-switch input:checked+.web-filter-slider:before{transform:translate(24px)}.dns-resolver-box{color:#0f766e;background:#f0fdfa;border-radius:8px;flex-direction:column;grid-column:1/-1;gap:.15rem;padding:.9rem;display:flex}.dns-resolver-box strong{color:#134e4a;font-size:1.05rem}.dns-resolver-box small{color:#0f766e}.stats-card{flex-direction:row;flex-grow:1;justify-content:space-between;align-items:stretch;gap:.75rem;display:flex}.web-filter-stat{background:#f8fafc;border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:.6rem;display:flex}.web-filter-stat span{color:var(--text-muted,#64748b);margin-bottom:.15rem;font-size:.82rem}.web-filter-stat strong{color:#0f766e;font-size:1.25rem}.domain-form{grid-template-columns:minmax(0,1fr) auto;gap:.6rem;margin-bottom:1rem;display:grid}.domain-list,.attempt-list{flex-direction:column;gap:.65rem;display:flex}.domain-row,.attempt-row{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;gap:.75rem;padding:.8rem}.domain-row>div,.attempt-row>div{flex-direction:column;gap:.2rem;min-width:0;display:flex}.domain-row strong,.attempt-row strong{color:var(--text-primary,#0f172a);word-break:break-word}.icon-btn{color:#475569;cursor:pointer;background:#e2e8f0;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.icon-btn.danger{color:#dc2626;background:#dc26261a}.combined-list{flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:.5rem;min-height:80px;display:flex}.domain-chip,.matched-rule{border-radius:6px;align-items:center;font-size:.82rem;font-weight:600;line-height:1.4;display:inline-flex}.domain-chip{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd;padding:.35rem .75rem}.domain-chip.muted{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.global-rule-footnote{margin-top:.9rem}.attempts-card{margin-bottom:1rem}.matched-rule{color:#b91c1c;background:#fee2e2;flex:none;padding:.3rem .55rem}.web-filter-alert{border-radius:8px;gap:.5rem;padding:.85rem 1rem;font-weight:700}.web-filter-alert.error{color:#b91c1c;background:#fef2f2}.web-filter-alert.success{color:#047857;background:#ecfdf5}.web-filter-empty,.empty-row{color:var(--text-muted,#64748b);text-align:center}.web-filter-empty{padding:4rem 1.5rem}.web-filter-empty h2{color:var(--text-primary,#0f172a);margin:.75rem 0 .25rem}.empty-row{background:#f8fafc;border-radius:8px;padding:1.2rem}.web-filter-spin{animation:1s linear infinite web-filter-spin}@keyframes web-filter-spin{to{transform:rotate(360deg)}}@media (width<=900px){.web-filter-grid{flex-direction:column;align-items:stretch}.dns-card{width:100%}.stats-card{flex-direction:column}.web-filter-columns{grid-template-columns:1fr}}@media (width<=600px){.web-filter-hero,.dns-card,.domain-row,.attempt-row{flex-direction:column;align-items:flex-start}.domain-form{grid-template-columns:1fr}.web-filter-switch{align-self:flex-start}}.minimal-info-popup{background:var(--card-bg,#fff);z-index:100;border:1px solid #94a3b84d;border-radius:8px;flex-direction:column;gap:.6rem;width:280px;margin-top:.5rem;padding:.9rem;animation:.15s ease-out popupFadeIn;display:flex;position:absolute;top:100%;left:2rem;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.minimal-info-popup p{color:var(--text-muted,#475569);text-align:left;margin:0;font-size:.85rem;line-height:1.4}.popup-close-btn{color:#0f766e;cursor:pointer;background:0 0;border:none;border-radius:4px;align-self:flex-end;padding:.2rem .5rem;font-size:.8rem;font-weight:700;transition:background .1s}.popup-close-btn:hover{background:#f1f5f9}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.schedule-bedtime-shell{gap:1.25rem;max-width:860px;margin:0 auto;display:grid}.schedule-hero,.schedule-panel,.schedule-empty{width:100%}.schedule-hero{justify-content:space-between;align-items:center;gap:1rem;display:flex}.schedule-hero-main{align-items:center;gap:1rem;display:flex}.schedule-icon{color:#fff;background:#0f766e;border-radius:8px;flex:none;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex;box-shadow:0 12px 24px #0f766e2e}.schedule-kicker{color:#0f766e;letter-spacing:0;text-transform:uppercase;margin:0 0 .25rem;font-size:.78rem;font-weight:800}.schedule-hero h2,.schedule-panel h3,.schedule-empty h2{color:var(--text-primary);margin:0}.schedule-hero p,.schedule-panel p,.schedule-empty p{color:var(--text-muted);margin:.35rem 0 0;line-height:1.55}.schedule-panel{gap:1.25rem;display:grid}.schedule-panel-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.schedule-power{color:#475569;cursor:pointer;min-width:96px;height:42px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;font-weight:900;display:inline-flex}.schedule-refresh{color:#475569;background:#fff;border:1px solid #cbd5e1;min-width:auto;padding:0 .85rem}.schedule-refresh span{font-size:.85rem}.schedule-power.active{color:#fff;background:#16a34a;border-color:#16a34a}.schedule-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.schedule-time-grid label{color:#334155;gap:.45rem;font-size:.85rem;font-weight:800;display:grid}.schedule-time-grid label span{align-items:center;gap:.35rem;display:inline-flex}.schedule-time-grid input{color:#0f172a;height:44px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:0 .8rem}.schedule-actions{justify-content:flex-end;display:flex}.schedule-save{color:#fff;cursor:pointer;height:42px;font:inherit;background:#0f766e;border:1px solid #0f766e;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;padding:0 1rem;font-weight:900;display:inline-flex}.schedule-save:disabled,.schedule-power:disabled{cursor:not-allowed;opacity:.68}.schedule-status{color:#047857;background:#ecfdf5;border-radius:8px;padding:.75rem .85rem;font-size:.9rem;font-weight:800}.schedule-empty{text-align:center;padding:4rem 2rem}.schedule-empty svg{color:#0f766e}.schedule-spin{animation:1.5s linear infinite spin}@media (width<=700px){.schedule-hero,.schedule-panel-header{flex-direction:column;align-items:stretch}.schedule-time-grid{grid-template-columns:1fr}.schedule-actions,.schedule-save,.schedule-power{width:100%}}.notifications-container{flex-direction:column;gap:1.5rem;padding:1.5rem;animation:.3s ease-out fadeIn;display:flex}.notifications-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.25rem;display:flex}.notifications-eyebrow{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;font-weight:800;display:block}.notifications-header h1{color:var(--text);letter-spacing:-.025em;margin:.2rem 0 .4rem;font-size:1.75rem;font-weight:800}.notifications-desc{color:var(--muted);max-width:550px;margin:0;font-size:.875rem;line-height:1.4;display:block}.btn-refresh{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);cursor:pointer;border-radius:6px;flex-shrink:0;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.8rem;font-weight:700;transition:all .15s;display:flex}.btn-refresh:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);transform:translateY(-1px)}.notifications-error-box{color:#ef4444;background:#ef444408;border:1px solid #ef444426;border-radius:6px;padding:.75rem 1rem;font-size:.85rem;font-weight:600}.notifications-loading{text-align:center;color:var(--muted);padding:2rem;font-size:.9rem;font-weight:600}.notifications-list{flex-direction:column;gap:.75rem;display:flex}.notify-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 1px 2px #00000005}.notify-card:hover{border-color:var(--border-hover);box-shadow:0 4px 10px #0000000a}.notify-card.notify-new{background:#2563eb0a!important;border-color:#2563eb33!important}.notify-card.notify-new:after{content:"";background-color:#3b82f6;border-radius:50%;width:7px;height:7px;position:absolute;top:12px;right:12px;box-shadow:0 0 4px #3b82f699}.notify-card.border-danger{border-left:3px solid #ef4444}.notify-card-body{align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex}.notify-card-icon-wrapper{background:var(--surface-soft);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:.5rem;display:flex}.notify-card-icon-wrapper .text-danger{color:#ef4444;background:#ef444414}.notify-card-icon-wrapper .text-warning{color:#f59e0b;background:#f59e0b14}.notify-card-icon-wrapper .text-info{color:#3b82f6;background:#3b82f614}.notify-card-content{flex-direction:column;flex-grow:1;gap:.35rem;padding-right:15px;display:flex}.notify-card-row-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.notify-card-title{color:var(--text);margin:0;font-size:.95rem;font-weight:700}.notify-card-time{color:var(--muted);align-items:center;font-size:.75rem;font-weight:500;display:flex}.notify-card-message{color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.5}.notify-rich-details{flex-wrap:wrap;gap:.6rem;margin-top:.35rem;display:flex}.detail-pill{background:var(--surface-soft);border:1px solid var(--border);color:var(--text);border-radius:6px;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.75rem;text-decoration:none;display:inline-flex}.detail-pill strong{font-weight:700}.detail-pill.location-link{color:var(--primary);background:#2563eb08;border-color:#2563eb33;transition:all .2s}.detail-pill.location-link:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-1px)}.btn-download-child{color:#fff;cursor:pointer;background:#f59e0b;border:none;border-radius:6px;align-self:flex-start;align-items:center;gap:.4rem;margin-top:.35rem;padding:.4rem .85rem;font-size:.75rem;font-weight:700;transition:all .15s;display:flex}.btn-download-child:hover{background:#d97706;transform:translate(1px)}.notifications-empty-state{text-align:center;border:1.5px dashed var(--border);background:var(--surface-soft);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1.5rem;display:flex}.empty-icon{color:var(--muted);opacity:.6;margin-bottom:1rem}.notifications-empty-state h3{color:var(--text);margin:0 0 .35rem;font-size:1.1rem;font-weight:700}.notifications-empty-state p{color:var(--muted);max-width:350px;margin:0;font-size:.85rem;line-height:1.45}.animate-spin{animation:1s linear infinite spin}@media (width<=600px){.notifications-container{gap:1rem;padding:1rem}.notifications-header{justify-content:space-between;align-items:center;padding-bottom:.75rem;flex-direction:row!important}.notifications-eyebrow,.notifications-desc{display:none!important}.notifications-header h1{margin:0;font-size:1.3rem}.btn-refresh{padding:.45rem .75rem;font-size:.75rem}.notify-card-body{gap:.75rem;padding:.85rem}.notify-card-row-top{flex-direction:column;align-items:flex-start;gap:.15rem}.notify-card-time{align-self:flex-start;font-size:.7rem}}.referrals-page{flex-direction:column;gap:2rem;max-width:900px;margin:0 auto;padding:1.5rem 1rem 4rem;font-family:Outfit,sans-serif;display:flex}.referrals-loading{color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:60vh;display:flex}.referrals-spinner{border:3px solid #128c7e26;border-top-color:#128c7e;border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}.referral-hero{text-align:center;background:linear-gradient(135deg,#eefcf8 0%,#f0fdfa 100%);border:1px solid #b2ebd9;border-radius:16px;padding:2.5rem 2rem;position:relative;overflow:hidden;box-shadow:0 4px 20px #128c7e0a}.referral-hero-badge{color:#075e54;letter-spacing:.05em;text-transform:uppercase;background:#128c7e14;border:1px solid #128c7e33;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:1rem;padding:.35rem .85rem;font-size:.78rem;font-weight:700;display:inline-flex}.referral-hero-title{color:#0f2e27;letter-spacing:-.02em;margin:0 0 .85rem;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800;line-height:1.25}.referral-hero-sub{color:#405a54;max-width:600px;margin:0 auto 2rem;font-size:.96rem;line-height:1.6}.referral-hero-sub strong{color:#075e54;font-weight:700}.referral-code-card{max-width:440px;box-shadow:none;background:0 0;border:none;margin:1.5rem auto 0;padding:0}.code-label{color:#557069;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .75rem;font-size:.78rem;font-weight:600}.referral-code-display{background:#fff;border:1px solid #128c7e33;border-radius:10px;justify-content:space-between;align-items:center;gap:.5rem;min-width:0;margin-bottom:1.25rem;padding:.75rem 1.25rem;display:flex;box-shadow:0 4px 12px #128c7e0a}.referral-code-text{color:#0f2e27;letter-spacing:.1em;-webkit-user-select:all;user-select:all;text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-family:Courier New,Courier,monospace;font-size:1.5rem;font-weight:800;overflow:hidden}.copy-btn{color:#128c7e;cursor:pointer;background:#128c7e1a;border:none;border-radius:6px;flex-shrink:0;align-items:center;gap:.4rem;padding:.45rem .9rem;font-family:inherit;font-size:.82rem;font-weight:700;transition:all .2s;display:inline-flex}.copy-btn:hover{color:#fff;background:#128c7e}.copy-btn.copied{color:#065f46;background:#d1fae5}.share-actions{flex-wrap:wrap;gap:.75rem;display:flex}.share-btn{cursor:pointer;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;min-width:140px;padding:.65rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.share-btn.whatsapp{color:#fff;background:#25d366}.share-btn.whatsapp:hover{background:#20ba59;transform:translateY(-1px)}.share-btn.link{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.share-btn.link:hover{color:#1e293b;background:#e2e8f0}.referral-stats-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.25rem;display:grid}.referral-stat-card{background:#fff;border:1px solid #edf2f7;border-radius:12px;align-items:center;gap:.85rem;padding:.85rem 1.1rem;transition:all .2s;display:flex;box-shadow:0 4px 12px #00000005}.referral-stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000000a}.referral-stat-card.accent{background:#faf8ff;border-color:#e1d5f9}.stat-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.stat-icon.emerald{color:#0f5132;background:#eafaf1}.stat-icon.amber{color:#664d03;background:#fff8e6}.stat-icon.blue{color:#084298;background:#ebf5ff}.stat-icon.purple{color:#6f42c1;background:#f5f3ff}.stat-info{flex-direction:column;gap:.15rem;display:flex}.stat-info strong{color:#1e293b;font-size:1.3rem;font-weight:800}.stat-info span{color:#64748b;font-size:.78rem;font-weight:500}.credit-notice{color:#856404;background:#fffbeb;border:1px solid #ffeeba;border-radius:10px;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;font-size:.9rem;line-height:1.5;display:flex}.credit-star{color:#fbbf24;flex-shrink:0;margin-top:2px}.credit-notice strong{color:#533f03}.section-title{color:#1e293b;letter-spacing:-.01em;margin:0 0 1.5rem;font-size:1.2rem;font-weight:700}.how-grid-minimal{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.how-card-minimal{background:#fff;border:1px solid #edf2f7;border-radius:12px;align-items:flex-start;gap:.85rem;padding:1.25rem;display:flex;box-shadow:0 4px 12px #00000005}.how-icon-wrap-minimal{color:#128c7e;background:#eefaf6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.how-icon-wrap-minimal.text-emerald{color:#059669;background:#ecfdf5}.how-text-minimal h3{color:#1e293b;margin:0 0 .25rem;font-size:.95rem;font-weight:700}.how-text-minimal p{color:#64748b;margin:0;font-size:.8rem;line-height:1.45}.referral-history-section{flex-direction:column;gap:1.25rem;display:flex}.history-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.history-tabs{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;gap:.25rem;padding:.25rem;display:flex}.history-tab{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:.4rem;padding:.35rem .85rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.history-tab:hover{color:#1e293b}.history-tab.active{color:#128c7e;background:#fff;box-shadow:0 2px 6px #0000000d}.tab-count{color:#475569;background:#e2e8f0;border-radius:999px;padding:.05rem .45rem;font-size:.72rem}.history-tab.active .tab-count{color:#128c7e;background:#eefaf6}.history-empty{color:#64748b;text-align:center;background:#fff;border:1px solid #edf2f7;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3.5rem 1rem;font-size:.9rem;display:flex;box-shadow:0 4px 12px #00000005}.empty-icon{opacity:.35;color:#128c7e}.history-table-wrap{background:#fff;border:1px solid #edf2f7;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000005}.history-table{border-collapse:collapse;width:100%;font-size:.9rem}.history-table thead tr{background:#f8fafc;border-bottom:1px solid #edf2f7}.history-table th{text-align:left;color:#475569;text-transform:uppercase;letter-spacing:.06em;padding:.9rem 1.25rem;font-size:.75rem;font-weight:700}.history-table td{color:#334155;border-bottom:1px solid #f1f5f9;padding:1rem 1.25rem}.history-table tbody tr:last-child td{border-bottom:none}.history-table tbody tr:hover td{background:#fbfcfd}.td-name{color:#1e293b;font-weight:600}.td-email{color:#64748b;font-family:monospace;font-size:.82rem}.td-date{color:#64748b;white-space:nowrap;font-size:.85rem}.status-pill{border-radius:999px;align-items:center;gap:.3rem;padding:.28rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-pill.pending{color:#856404;background:#fff3cd}.status-pill.rewarded{color:#0f5132;background:#d1fae5}.reward-days{color:#128c7e;font-weight:700}.reward-pending{color:#94a3b8;font-size:.8rem;font-style:italic}@media (width<=640px){.how-grid-minimal{grid-template-columns:1fr;gap:1rem}.referral-stats-row{grid-template-columns:1fr 1fr}.referral-code-text{letter-spacing:.12em;font-size:1.4rem}}
