@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap";html,body,#root{margin:0;width:100%;min-height:100vh}*{margin:0;padding:0;box-sizing:border-box;font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,sans-serif}.page-root{min-height:100vh;position:relative;isolation:isolate;background:#fff;padding:.7rem 1.35rem .9rem;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto}.page-root--dashboard{overflow-y:hidden;min-height:100dvh}.page-root__bg{position:absolute;inset:0 0 auto;z-index:0;pointer-events:none}.page-root__bg-image{display:block;width:100%;min-width:100%;height:auto}.page-root__bg-fade{position:absolute;left:0;right:0;bottom:0;height:clamp(120px,16vw,240px);background:linear-gradient(180deg,#fff0,#fff)}.top-nav,.dashboard,.page-footer{position:relative;z-index:1}.top-nav{z-index:20;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.6rem 0;margin-bottom:.55rem;flex-shrink:0}.brand{display:flex;align-items:center;gap:.55rem}.brand-logo{width:110px;height:auto;display:block}.nav-links{display:flex;gap:1.5rem;color:#4a5f7e;font-size:.9rem}.nav-link{border:none;background:none;cursor:pointer;padding:.15rem 0;color:inherit;position:relative;font-weight:500;letter-spacing:.02em;transition:color .18s ease}.nav-link:after{content:"";position:absolute;left:0;right:0;bottom:-.35rem;margin-inline:auto;width:0;height:2px;border-radius:999px;background:linear-gradient(90deg,#0f8cf4,#34c4ff);transition:width .18s ease}.nav-link:hover{color:#1b365b}.nav-link:hover:after{width:70%}.nav-link--active{color:#0f8cf4}.nav-link--active:after{width:70%}.nav-actions{display:flex;align-items:center;gap:.75rem}.nav-user-label{font-size:.9rem;font-weight:500;color:#1a3152;max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu{position:relative}.nav-bell{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:#4a5f7e;padding:.3rem;border-radius:8px;transition:color .18s ease,background .18s ease}.nav-bell:hover{color:#1b365b;background:#0f8cf414}.nav-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;font-size:.82rem;font-weight:600;letter-spacing:.01em;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:box-shadow .18s ease,transform .12s ease;-webkit-user-select:none;user-select:none}.nav-avatar:hover{box-shadow:0 4px 14px #0874f866;transform:translateY(-1px)}.nav-avatar:active{transform:translateY(0)}.user-menu-backdrop{position:fixed;inset:0;z-index:99}.user-menu-dropdown{position:absolute;top:calc(100% + .5rem);right:0;z-index:100;min-width:160px;background:#fff;border:1px solid rgba(210,225,243,.9);border-radius:12px;box-shadow:0 8px 24px #0a1e3c1f;padding:.4rem;display:flex;flex-direction:column}.user-menu-item{background:none;border:none;cursor:pointer;text-align:left;padding:.55rem .9rem;border-radius:8px;font-size:.9rem;font-weight:500;color:#1a3152;transition:background .15s ease}.user-menu-item:hover:not(:disabled){background:#0f8cf414}.user-menu-item--disabled{opacity:.4;cursor:default}.user-menu-divider{height:1px;background:#d2e1f3e6;margin:.3rem .4rem}.user-menu-item--logout{color:#c0392b}.user-menu-item--logout:hover{background:#c0392b14}.btn{border-radius:999px;border:none;padding:.55rem 1.4rem;font-size:.9rem;cursor:pointer;font-weight:500;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.btn-ghost{background:#ffffffb3;color:#234066;border:1px solid rgba(210,225,243,.9)}.btn-primary{background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;box-shadow:0 14px 26px #0d59c080}.dashboard{display:flex;flex-direction:column;gap:.65rem;padding-bottom:.5rem}.dashboard-preview{width:min(920px,48vw);min-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:.72rem}.dashboard-preview__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.dashboard-preview__title{font-size:2.55rem;font-weight:800;color:#243d5d;line-height:1.15;margin-bottom:.75rem}.dashboard-preview__location{border:1px solid #cfe1f4;background:#f5fafffa;color:#315a88;border-radius:999px;font-size:.96rem;padding:.52rem 1.05rem;font-weight:600;box-shadow:inset 0 1px #ffffffe6}.dashboard-preview__header-right{display:flex;align-items:center;gap:.7rem}.dashboard-preview__updated{font-size:1rem;color:#6c86a5}.dashboard-preview__search{border:1px solid #cfe1f4;background:#f8fcfffa;color:#3a638f;border-radius:999px;font-size:.94rem;padding:.52rem 1rem;font-weight:600;box-shadow:inset 0 1px #ffffffe6}.dashboard-preview__cards{display:grid;grid-template-columns:1fr 1fr;gap:.72rem}.dashboard-preview__locations{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:-.15rem}.dashboard-admin-override{margin-top:.9rem;margin-bottom:.9rem;border:1px solid rgba(214,226,241,.95);background:#ffffffeb;border-radius:22px;box-shadow:0 18px 34px #14305617;padding:1rem;display:flex;flex-direction:column;gap:.85rem}.dashboard-admin-override--active{border-color:#0d7ef559;box-shadow:0 18px 34px #14305617,0 0 0 1px #0d7ef51f}.dashboard-admin-override__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dashboard-admin-override__header h3{margin:.15rem 0 0;font-size:1.05rem;color:#1a3152}.dashboard-admin-override__eyebrow{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5b7da5}.dashboard-admin-override__toggle,.dashboard-admin-override__btn{border:1px solid #d2e1f3;border-radius:12px;background:#fff;color:#33577f;font-size:.86rem;font-weight:700;padding:.62rem .9rem;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .12s ease}.dashboard-admin-override__toggle:hover,.dashboard-admin-override__btn:hover{border-color:#0d7ef559;background:#f4f9fff2}.dashboard-admin-override__btn--primary{background:linear-gradient(135deg,#0d7ef5,#28a6ff);border-color:transparent;color:#fff;box-shadow:0 10px 20px #0d7ef52e}.dashboard-admin-override__btn--primary:hover{background:linear-gradient(135deg,#0b72de,#1e9cf6);border-color:transparent}.dashboard-admin-override__copy,.dashboard-admin-override__status,.dashboard-admin-override__error{margin:0;font-size:.86rem;line-height:1.45}.dashboard-admin-override__copy{color:#4d6788}.dashboard-admin-override__status{color:#0f63be;font-weight:700}.dashboard-admin-override__error{color:#c0392b}.dashboard-admin-override__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.dashboard-admin-override__field{display:flex;flex-direction:column;gap:.35rem}.dashboard-admin-override__field span{font-size:.76rem;font-weight:700;color:#5b7798;text-transform:uppercase;letter-spacing:.04em}.dashboard-admin-override__field input{width:100%;border:1.5px solid rgba(210,225,243,.95);border-radius:12px;background:#f8fbfff2;color:#1a3152;font-size:.92rem;padding:.68rem .8rem;outline:none}.dashboard-admin-override__field input:focus{border-color:#0d7ef56b;box-shadow:0 0 0 3px #0d7ef51f}.dashboard-admin-override__actions{display:flex;flex-wrap:wrap;gap:.65rem}.dashboard-locations-btn{display:inline-flex;align-items:center;gap:.45rem;border:1px solid #c8daf0;border-radius:999px;background:#f0f8ffeb;color:#1e3d5f;font-size:.82rem;font-weight:650;font-family:inherit;padding:.38rem .85rem;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dashboard-locations-btn:hover{background:#ddeffff2;border-color:#8cbef0;box-shadow:0 1px 6px #0d7ef51a}.dashboard-locations-btn svg{color:#3a7fd5;flex-shrink:0}.dashboard-locations-btn__count{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;font-size:.68rem;font-weight:700;min-width:1.2rem;height:1.2rem;border-radius:999px;padding:0 .3rem;line-height:1}.dashboard-preview-card{border:1px solid rgba(214,226,241,.95);background:#ffffffe6;border-radius:22px;box-shadow:0 18px 34px #14305617;overflow:hidden;display:flex;flex-direction:column}.dashboard-preview-card__top{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem .5rem}.dashboard-preview-card__eyebrow{font-size:1.15rem;letter-spacing:.02em;font-weight:700;color:#203f65;display:inline-flex;align-items:center;gap:.45rem}.dashboard-preview-card__eyebrow svg{color:#5d7ea3}.dashboard-preview-card__pill,.dashboard-preview-card__room-select{border:1px solid #d8e6f5;border-radius:999px;padding:.34rem .72rem;font-size:.8rem;color:#4e769e;background:#eef7ff;font-weight:600}.dashboard-preview-card__pill--tooltip{position:relative;cursor:help}.dashboard-preview-card__tooltip{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:min(320px,46vw);background:#18314df5;color:#f4f8ff;border-radius:10px;padding:.55rem .65rem;font-size:.76rem;font-weight:500;line-height:1.4;box-shadow:0 10px 24px #0a1e3c38;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .16s ease,transform .16s ease;pointer-events:none}.dashboard-preview-card__pill--tooltip:hover .dashboard-preview-card__tooltip,.dashboard-preview-card__pill--tooltip:focus-within .dashboard-preview-card__tooltip{opacity:1;visibility:visible;transform:translateY(0)}.dashboard-preview-card__content{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.1rem .95rem .7rem;flex:1}.dashboard-preview-card__ring{display:flex;justify-content:center;align-items:center}.dashboard-preview-card__copy{text-align:center;color:#5f7896;font-size:.87rem;line-height:1.35;max-width:34ch}.dashboard-preview-card__metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;width:100%;max-width:460px;grid-auto-rows:56px;align-content:start}.dashboard-preview-card__metric-tile{border:1px solid rgba(222,233,246,.9);border-radius:12px;background:#f8fcffeb;padding:.38rem .52rem;min-height:56px;display:flex;flex-direction:column;justify-content:flex-start;gap:.16rem}.dashboard-preview-card__metrics-grid .dashboard-preview-card__metric-tile:nth-child(5){grid-column:1 / -1}.dashboard-preview-card__metrics-grid--outdoor .dashboard-preview-card__metric-tile:nth-child(5){grid-column:auto}.dashboard-preview-card__metric-tile strong{font-size:.74rem;font-weight:700;color:#4a6586}.dashboard-preview-card__metric-tile span{font-size:.9rem;font-weight:700;color:#183f66;display:flex;align-items:center;gap:.38rem}.dashboard-preview-card__metric-tile span i{width:36px;height:12px;border-radius:999px;background:radial-gradient(circle at 12% 52%,#4fb78f 0 1px,transparent 1px),radial-gradient(circle at 24% 38%,#4fb78f 0 1px,transparent 1px),radial-gradient(circle at 36% 60%,#4fb78f 0 1px,transparent 1px),radial-gradient(circle at 48% 46%,#4fb78f 0 1px,transparent 1px),radial-gradient(circle at 62% 66%,#4fb78f 0 1px,transparent 1px),radial-gradient(circle at 74% 44%,#4fb78f 0 1px,transparent 1px),radial-gradient(circle at 88% 58%,#4fb78f 0 1px,transparent 1px);opacity:.8}.dashboard-preview-card__split-metric{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;width:100%}.dashboard-preview-card__split-metric-item{min-width:0}.dashboard-preview-card__split-metric-item--stack{display:flex;flex-direction:column;align-items:flex-start;gap:.06rem;flex:1 1 0}.dashboard-preview-card__split-metric-item--align-end{align-items:flex-end;text-align:right}.dashboard-preview-card__split-metric-item small{color:#6d84a0;font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1}.dashboard-preview-card__split-metric-item span{font-size:.9rem;font-weight:700;color:#183f66;line-height:1.15;display:block}.dashboard-preview-card__status{border-top:1px solid #e1ebf6;background:#f5fbff;color:#3a6489;font-size:.85rem;font-weight:600;padding:.45rem .85rem;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.dashboard-preview-card__status span{min-width:0}.dashboard-preview-card__status-copy{display:flex;flex-direction:column;gap:.14rem;min-width:0}.dashboard-preview-card__refresh-btn{border:1px solid #cddff2;border-radius:999px;background:#fff;color:#2f5f8d;font-size:.72rem;font-weight:700;padding:.32rem .66rem;cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.dashboard-preview-card__refresh-btn:hover:not(:disabled){background:#edf6ff;border-color:#bad5f3}.dashboard-preview-card__refresh-btn:disabled{opacity:.65;cursor:default}.dashboard-preview-card__refresh-wrap{position:relative;display:inline-flex}.dashboard-preview-card__refresh-tooltip{position:absolute;right:0;bottom:calc(100% + 8px);z-index:25;min-width:210px;background:#18314df5;color:#f4f8ff;border-radius:9px;padding:.45rem .55rem;font-size:.74rem;line-height:1.35;box-shadow:0 10px 24px #0a1e3c38;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .16s ease,transform .16s ease;pointer-events:none}.dashboard-preview-card__refresh-wrap--cooldown:hover .dashboard-preview-card__refresh-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.dashboard-preview-card__connect-btn{margin-top:.6rem;border:none;border-radius:12px;background:linear-gradient(135deg,#0d7ef5,#28a6ff);color:#fff;font-size:.9rem;font-weight:700;padding:.6rem .95rem;cursor:pointer;width:fit-content}.dashboard-preview-card__meta-row{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:.2rem;flex-wrap:wrap;min-height:24px}.dashboard-preview-card__meta-row--placeholder{visibility:hidden}.dashboard-preview-card__meta-chip{border:1px solid #d3e4f6;border-radius:999px;background:#f4fafff2;color:#456a93;font-size:.72rem;font-weight:700;padding:.22rem .52rem}.dashboard-preview-card__meta-chip--live{border-color:#bde5c9;background:#e9f9eff2;color:#2f8f58}.dashboard-preview-card__connect-wrap small{display:block;margin-top:.42rem;color:#6b86a5;font-size:.75rem;line-height:1.35}.dashboard-preview-card__error{margin-top:.55rem;background:#e158581a;border:1px solid rgba(225,88,88,.2);color:#b33b3b;border-radius:9px;padding:.42rem .55rem;font-size:.76rem;line-height:1.35}.dashboard-preview-card__warning{margin-top:.55rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.24);color:#9a5b06;border-radius:9px;padding:.42rem .55rem;font-size:.76rem;line-height:1.35}.dashboard-preview__scale{border:1px solid rgba(214,226,241,.95);background:#ffffffe6;border-radius:18px;box-shadow:0 18px 34px #14305617;padding:.8rem .95rem}.dashboard-preview__scale p{font-size:1rem;font-weight:700;color:#1a3152;margin-bottom:.45rem}.dashboard-preview__scale-bar{height:22px;border-radius:999px;background:linear-gradient(90deg,#2fc168 0 16.6%,#f2c01a 16.6% 33.2%,#ef8f2d 33.2% 49.8%,#e64747 49.8% 66.4%,#8d47c8 66.4% 83%,#7b1b6f 83% 100%);margin-bottom:.35rem}.dashboard-preview__scale-labels{display:grid;grid-template-columns:repeat(6,1fr);gap:.4rem;margin-bottom:.55rem}.dashboard-preview__scale-labels span{text-align:center;font-size:.66rem;color:#3f5f82;font-weight:600}.dashboard-preview__scale small{font-size:.78rem;color:#446587;font-weight:600}.dashboard-preview-recs{border:1px solid rgba(214,226,241,.95);background:#ffffffe6;border-radius:18px;box-shadow:0 18px 34px #14305617;overflow:hidden}.dashboard-preview-recs__tabs{display:flex;align-items:center;justify-content:space-between;gap:.3rem;border-bottom:1px solid #deebf7;padding:.5rem .65rem 0;background:#f7fbffeb}.dashboard-preview-recs__tab-group{display:flex;gap:.3rem;flex-wrap:wrap}.dashboard-preview-recs__tab{border:none;background:transparent;color:#6c86a5;font-size:.9rem;font-weight:700;padding:.72rem .85rem;cursor:pointer;border-radius:10px 10px 0 0}.dashboard-preview-recs__tab--active{color:#1f7de5;box-shadow:inset 0 -2px #1f7de5;background:#e6f2ff9e}.dashboard-preview-recs__refresh{border:1px solid #d2e1f3;border-radius:999px;background:#fff;color:#35567f;font-size:.78rem;font-weight:700;padding:.4rem .75rem;cursor:pointer;white-space:nowrap;transition:border-color .15s ease,background .15s ease,opacity .15s ease}.dashboard-preview-recs__refresh:hover:not(:disabled){border-color:#0d7ef559;background:#f4f9fff2}.dashboard-preview-recs__refresh:disabled{opacity:.65;cursor:default}.dashboard-preview-recs__body{padding:.95rem;min-height:200px}.dashboard-preview-recs__error{margin:0 0 .85rem;border:1px solid rgba(239,102,90,.24);background:#fff1eff0;color:#b8473b;border-radius:12px;padding:.72rem .85rem;font-size:.84rem;line-height:1.45}.dashboard-preview-recs__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.dashboard-preview-recs__item{border:1px solid #dce9f7;background:linear-gradient(180deg,#fff,#f5faff);border-radius:12px;padding:.62rem;display:flex;flex-direction:column;gap:.45rem}.dashboard-preview-recs__item h4{font-size:.9rem;color:#1f4269}.dashboard-preview-recs__item p{font-size:.78rem;color:#5a7799;line-height:1.45;flex:1}.dashboard-preview-recs__item span{font-size:.7rem;font-weight:700;color:#2f6aa7;background:#dcefffc7;border:1px solid #c9e0f6;border-radius:999px;padding:.28rem .6rem;width:fit-content}.dashboard-preview-recs__ai{border:1px solid #dce9f7;background:linear-gradient(145deg,#f4faff,#eef7ff 52%,#f7f6ff);border-radius:16px;padding:1rem}.dashboard-preview-recs__ai h4{font-size:.95rem;color:#22476f;margin-bottom:.4rem}.dashboard-preview-recs__ai p{font-size:.78rem;color:#5a7799;line-height:1.5}.dashboard-preview-recs__chips{margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.45rem}.dashboard-preview-recs__chips span{background:#ffffffd9;border:1px solid #d1e3f7;border-radius:999px;padding:.35rem .62rem;color:#355d86;font-size:.68rem;font-weight:600}.dashboard-preview-recs__ai-hint{font-size:.78rem;color:#5a7799;line-height:1.5;margin-top:.3rem}.dashboard-preview-recs__ai-error{font-size:.75rem;color:#c0392b;margin-top:.5rem}.dashboard-preview-recs__ai-btn{margin-top:.85rem;background:linear-gradient(135deg,#3a8ef5,#6b5cf6);color:#fff;border:none;border-radius:999px;padding:.45rem 1.1rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:opacity .15s}.dashboard-preview-recs__ai-btn:hover:not(:disabled){opacity:.88}.dashboard-preview-recs__ai-btn:disabled{opacity:.55;cursor:default}.ai-recs__cards{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:.1rem}.ai-recs__card{border-radius:12px;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.4rem}.ai-recs__card--outdoor{background:linear-gradient(145deg,#f0f8ff,#e3f2fd);border:1px solid #b8d9f5}.ai-recs__card--indoor{background:linear-gradient(145deg,#f5f0ff,#ede7fd);border:1px solid #cbbef7}.ai-recs__card-header{display:flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ai-recs__card--outdoor .ai-recs__card-header{color:#1a6bb5}.ai-recs__card--indoor .ai-recs__card-header{color:#5b35a8}.ai-recs__card-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.35rem}.ai-recs__card-list li{font-size:.77rem;line-height:1.45;color:#2d3748;padding-left:1rem;position:relative}.ai-recs__card-list li:before{content:"→";position:absolute;left:0;font-size:.7rem;top:.05em}.ai-recs__card--outdoor .ai-recs__card-list li:before{color:#1a6bb5}.ai-recs__card--indoor .ai-recs__card-list li:before{color:#5b35a8}.ai-recs__card-hint{font-size:.75rem;line-height:1.5;color:#7a8fa8;margin:0;font-style:italic}@media(max-width:500px){.ai-recs__cards{grid-template-columns:1fr}}.dashboard-preview__scale--indoor-submenu{margin-top:.8rem}.indoor-page-tabs{display:inline-flex;align-items:center;gap:.45rem;margin-top:.9rem;margin-bottom:.9rem}.indoor-page-tab{border:1px solid rgba(210,225,243,.96);background:#f8fbfffa;color:#5c789a;border-radius:999px;padding:.45rem .9rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.indoor-page-tab:hover{border-color:#8cbef0;color:#215387}.indoor-page-tab--active{background:linear-gradient(135deg,#0874f8,#02b4ff);border-color:transparent;color:#fff}.indoor-history-empty{margin-top:1rem;min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px dashed rgba(197,215,235,.98);border-radius:18px;background:radial-gradient(circle at top,#ecf5ffe6,#f9fcfff7 58%),#fffffff0;padding:1.5rem;text-align:center}.indoor-history-empty h3{font-size:1rem;color:#21466f;margin-bottom:.35rem}.indoor-history-empty p{font-size:.86rem;color:#6885a5;line-height:1.55;max-width:42rem}.indoor-history-empty__error{color:#b05656;font-weight:600}.indoor-history-empty__action{margin-top:.35rem}.page-root--dashboard .page-footer{display:none}.dashboard-preview__message{border:1px solid rgba(214,226,241,.95);background:#f5fafff5;border-radius:16px;padding:1rem 1.15rem;color:#2e577f;font-size:1.07rem;font-weight:600}.dash-search-row{display:flex;flex-direction:column;gap:.45rem}.dash-search-form-wrap{position:relative}.dash-search-form{display:flex;align-items:center;gap:.65rem;background:#ffffffb8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.65);border-radius:16px;padding:.65rem .65rem .65rem 1rem;box-shadow:0 4px 20px #0a1e3c12}.dash-search-icon{color:#7a92aa;flex-shrink:0;display:flex}.dash-search-field{flex:1;border:none;background:transparent;font-size:.95rem;color:#1a3152;outline:none;min-width:0}.dash-search-field::placeholder{color:#7a92aa}.dash-search-btn{background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;border:none;cursor:pointer;padding:.55rem 1.2rem;border-radius:11px;font-size:.875rem;font-weight:600;white-space:nowrap;transition:opacity .18s ease;flex-shrink:0}.dash-search-btn:disabled{opacity:.6;cursor:default}.dash-search-btn:hover:not(:disabled){opacity:.88}.dash-search-suggestions{position:absolute;top:calc(100% + .4rem);left:0;right:0;background:#fffffff7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(210,225,243,.9);border-radius:14px;box-shadow:0 8px 24px #0a1e3c1f;z-index:50;display:flex;flex-direction:column;overflow:hidden}.dash-search-suggestion{background:none;border:none;cursor:pointer;text-align:left;padding:.65rem 1rem;font-size:.9rem;color:#1a3152;transition:background .15s ease}.dash-search-suggestion:hover{background:#0f8cf412}.dash-search-suggestion--muted{color:#7a92aa;cursor:default}.dash-search-meta{display:flex;align-items:center;gap:.5rem;padding:0 .3rem;font-size:.78rem;color:#6080a0}.dash-meta-sep{width:3px;height:3px;border-radius:50%;background:#96b0c8;flex-shrink:0}.dash-card{background:#ffffffb8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.65);border-radius:20px;box-shadow:0 4px 20px #0a1e3c12;padding:1.35rem 1.4rem}.dash-main-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:1rem;align-items:stretch}.dash-bottom-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:1rem;align-items:start}.dash-card-title{font-size:.95rem;font-weight:700;color:#1a3152;margin-bottom:1rem}.dash-card--outdoor{padding:1.35rem 1.4rem}.dash-outdoor-inner{display:flex;gap:1.25rem;align-items:flex-start}.dash-outdoor-left{flex:1;display:flex;flex-direction:column;align-items:center;gap:.35rem;min-width:0}.dash-outdoor-right{flex:0 0 200px}.dash-breakdown{width:100%;margin-top:.5rem;border-top:1px solid rgba(210,225,243,.6);padding-top:.75rem}.dash-breakdown-label{font-size:.7rem;font-weight:700;color:#7a92aa;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.55rem}.dash-breakdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:.35rem .75rem}.dash-breakdown-item{display:flex;justify-content:space-between;align-items:center;font-size:.8rem}.dash-breakdown-name{color:#5070a0;font-weight:500}.dash-breakdown-val{color:#1a3152;font-weight:600}.dash-weather-card{background:linear-gradient(160deg,#dbeeff,#c7e8ff 55%,#d4f0e8);border-radius:16px;padding:1rem 1.1rem 1.1rem;border:1px solid rgba(180,220,250,.6);height:100%;display:flex;flex-direction:column;gap:.65rem}.dash-weather-title{font-size:.8rem;font-weight:700;color:#1a6aaa;letter-spacing:.01em}.dash-weather-main{display:flex;align-items:center;gap:.5rem}.dash-weather-sun-icon{width:28px;height:28px;color:#f59e0b;flex-shrink:0}.dash-weather-sun-icon--night-clear,.dash-weather-sun-icon--night-cloudy{color:#5b67c8}.dash-weather-sun-icon--partly-cloudy,.dash-weather-sun-icon--sunny{color:#f59e0b}.dash-weather-sun-icon--cloudy,.dash-weather-sun-icon--fog{color:#7d93ab}.dash-weather-sun-icon--rain{color:#3b82f6}.dash-weather-sun-icon--snow{color:#8bb7d9}.dash-weather-sun-icon--wind{color:#0f766e}.dash-weather-sun-icon--storm{color:#7c3aed}.dash-weather-temp{font-size:1.6rem;font-weight:700;color:#1a3152;line-height:1}.dash-weather-condition{font-size:.9rem;font-weight:600;color:#3a6090}.dash-weather-details{display:flex;flex-direction:column;gap:.4rem;border-top:1px solid rgba(150,200,240,.5);padding-top:.6rem}.dash-weather-detail{display:flex;align-items:center;gap:.45rem;font-size:.8rem;color:#3a6090}.dash-weather-detail svg{flex-shrink:0;color:#5090c0}.dash-weather-detail strong{color:#1a3152}.dash-card--ai-recs{min-height:220px;padding:0;overflow:hidden;display:flex;flex-direction:column}.recs-tabs{display:flex;border-bottom:1px solid rgba(210,225,243,.7);padding:0 .5rem;gap:.1rem;flex-shrink:0}.recs-tab{background:none;border:none;cursor:pointer;padding:.8rem .9rem .7rem;font-size:.82rem;font-weight:600;color:#7a92aa;position:relative;transition:color .18s ease;white-space:nowrap}.recs-tab:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;border-radius:999px 999px 0 0;background:linear-gradient(90deg,#0874f8,#02b4ff);opacity:0;transition:opacity .18s ease}.recs-tab:hover{color:#1a3152}.recs-tab--active{color:#0874f8}.recs-tab--active:after{opacity:1}.recs-tab-body{flex:1;padding:1.1rem 1.3rem}.recs-empty{height:100%}.dash-outdoor-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.dash-outdoor-card-header .dash-card-title{margin-bottom:0}.dash-location-search-btn{display:inline-flex;align-items:center;gap:.4rem;background:#0f8cf414;border:1px solid rgba(15,140,244,.2);color:#0874f8;border-radius:999px;padding:.35rem .85rem;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .18s ease,border-color .18s ease;white-space:nowrap}.dash-location-search-btn:hover{background:#0f8cf424;border-color:#0f8cf459}.dash-location-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.dash-location-chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(210,225,243,.9);background:#fff9;overflow:hidden;transition:border-color .15s ease}.dash-location-chip--active{border-color:#0f8cf473;background:#0f8cf414}.dash-location-chip__label{background:none;border:none;cursor:pointer;padding:.28rem .65rem;font-size:.75rem;font-weight:600;color:#5070a0;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease}.dash-location-chip--active .dash-location-chip__label{color:#0874f8}.dash-location-chip__label:disabled{cursor:default}.dash-location-chip__label:not(:disabled):hover{color:#0874f8}.dash-location-chip__remove{background:none;border:none;border-left:1px solid rgba(210,225,243,.7);cursor:pointer;padding:.28rem .45rem;color:#9ab0c8;display:inline-flex;align-items:center;transition:color .15s ease,background .15s ease}.dash-location-chip__remove:hover{color:#c0392b;background:#c0392b12}.loc-modal-backdrop{position:fixed;inset:0;z-index:200;background:#0a193259;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.loc-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:201;width:min(520px,calc(100vw - 2rem));background:#fffffff7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(210,225,243,.9);border-radius:22px;box-shadow:0 24px 60px #0a1e462e;overflow:hidden}.loc-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.3rem .9rem;border-bottom:1px solid rgba(210,225,243,.7)}.loc-modal-title-row{display:flex;align-items:center;gap:.5rem;color:#1a3152}.loc-modal-title{font-size:.95rem;font-weight:700;color:#1a3152}.loc-modal-close{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:#7a92aa;padding:.3rem;border-radius:8px;transition:color .15s ease,background .15s ease}.loc-modal-close:hover{color:#1a3152;background:#0f8cf412}.loc-modal-body{padding:1.1rem 1.3rem 1.3rem;display:flex;flex-direction:column;gap:.9rem}.loc-modal-form-wrap{display:flex;flex-direction:column}.loc-modal-form{display:flex;align-items:center;gap:.6rem;background:#f4f7fc;border:1.5px solid rgba(210,225,243,.9);border-radius:14px;padding:.6rem .9rem;transition:border-color .18s ease}.loc-modal-form:focus-within{border-color:#0f8cf473;background:#fff}.loc-modal-search-icon{color:#7a92aa;flex-shrink:0}.loc-modal-input{flex:1;border:none;background:transparent;font-size:.93rem;color:#1a3152;outline:none;min-width:0}.loc-modal-input::placeholder{color:#9ab0c8}.loc-modal-submit{flex-shrink:0;border:none;border-radius:999px;background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;font-size:.82rem;font-weight:600;padding:.35rem .9rem;cursor:pointer;font-family:inherit;transition:opacity .15s ease;white-space:nowrap}.loc-modal-submit:hover:not(:disabled){opacity:.88}.loc-modal-submit:disabled{opacity:.55;cursor:wait}.loc-modal-suggestions{margin-top:.4rem;background:#fff;border:1px solid rgba(210,225,243,.9);border-radius:14px;max-height:220px;overflow-y:auto;display:flex;flex-direction:column}.loc-modal-suggestion{display:flex;align-items:flex-start;gap:.55rem;background:none;border:none;cursor:pointer;text-align:left;padding:.65rem 1rem;font-size:.88rem;color:#1a3152;line-height:1.4;transition:background .15s ease;flex-shrink:0}.loc-modal-suggestion:hover{background:#0f8cf412}.loc-modal-suggestion svg{color:#7a92aa;flex-shrink:0}.loc-modal-suggestion--muted{color:#7a92aa;cursor:default;padding:.65rem 1rem;font-size:.88rem}.loc-modal-divider{display:flex;align-items:center;gap:.75rem;color:#9ab0c8;font-size:.78rem}.loc-modal-divider:before,.loc-modal-divider:after{content:"";flex:1;height:1px;background:#d2e1f3cc}.loc-modal-my-location{display:flex;align-items:center;justify-content:center;gap:.55rem;background:none;border:1.5px solid rgba(210,225,243,.9);border-radius:12px;padding:.7rem 1rem;font-size:.88rem;font-weight:600;color:#0874f8;cursor:pointer;transition:background .18s ease,border-color .18s ease}.loc-modal-my-location:hover{background:#0f8cf40f;border-color:#0f8cf44d}.loc-modal-location-note{display:flex;flex-direction:column;gap:.45rem;margin-top:.8rem;padding:.85rem .95rem;border-radius:14px;background:#f4f9fff2;border:1px solid rgba(204,222,244,.95);color:#56708f;font-size:.82rem;line-height:1.45}.loc-modal-location-note p{margin:0}.loc-modal-location-note__detected{color:#17385f;font-weight:700}.loc-modal-error{font-size:.8rem;color:#c0392b;text-align:center}.loc-modal-result{display:flex;align-items:center;gap:.6rem;background:#ddefff80;border:1px solid #c0d9f0;border-radius:10px;padding:.75rem 1rem;color:#1a3152}.loc-modal-result svg{flex-shrink:0;color:#0f8cf4}.loc-modal-result-label{font-size:.92rem;font-weight:600;line-height:1.35}.loc-modal-result-actions{display:flex;gap:.6rem;align-items:center;margin-top:.6rem}.loc-modal-add-btn{border:none;border-radius:999px;background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;font-size:.88rem;font-weight:600;padding:.5rem 1.2rem;cursor:pointer;font-family:inherit;transition:opacity .15s ease}.loc-modal-add-btn:disabled{opacity:.65;cursor:wait}.loc-modal-back-btn{background:none;border:none;color:#4a5f7e;font-size:.85rem;font-weight:500;cursor:pointer;font-family:inherit;padding:.5rem .4rem;transition:color .15s ease}.loc-modal-back-btn:hover:not(:disabled){color:#1a3152}.loc-modal-back-btn:disabled{opacity:.5;cursor:wait}.loc-modal-saved-list{display:flex;flex-direction:column;gap:.25rem}.loc-modal-saved-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .65rem;border-radius:8px;transition:background .15s ease}.loc-modal-saved-item:hover{background:#ddefff66}.loc-modal-saved-item--active{background:#ddefff80;border:1px solid rgba(140,190,240,.35)}.loc-modal-saved-item__active-badge{font-size:.68rem;font-weight:600;color:#0874f8;background:#0874f814;border-radius:999px;padding:.12rem .5rem;margin-left:auto;flex-shrink:0;letter-spacing:.02em}.loc-modal-saved-item__label{display:flex;align-items:center;gap:.5rem;background:none;border:none;font-family:inherit;font-size:.88rem;font-weight:500;color:#1a3152;cursor:pointer;padding:0;text-align:left;flex:1;min-width:0}.loc-modal-saved-item__label:not(:disabled):hover{color:#0874f8}.loc-modal-saved-item__label:disabled{cursor:default;opacity:1}.loc-modal-saved-item__label svg{flex-shrink:0;color:#5e8bbf}.loc-modal-saved-item__remove{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#9cb0c8;cursor:pointer;padding:.2rem;border-radius:6px;flex-shrink:0;transition:color .15s ease,background .15s ease}.loc-modal-saved-item__remove:hover{color:#d44;background:#dc3c3c14}.dash-aqi-loc{display:flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:500;color:#5070a0;align-self:flex-start}.dash-aqi-ring-wrap{margin:.1rem 0}.dash-aqi-text{text-align:center}.dash-aqi-quality-label{font-size:1.1rem;font-weight:700;color:#1a3152;line-height:1.2}.dash-aqi-quality-sub{font-size:.75rem;color:#6080a0;margin-top:.1rem}.dash-aqi-source-msg{font-size:.72rem;color:#7a92aa;text-align:center;line-height:1.45;border-top:1px solid rgba(210,225,243,.7);padding-top:.55rem;align-self:stretch;margin-top:.2rem}.dash-card--metric{display:flex;flex-direction:column;gap:.25rem}.dash-metric-label-row{display:flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:700;color:#7a92aa;text-transform:uppercase;letter-spacing:.08em}.dash-metric-value{font-size:2.8rem;font-weight:700;color:#1a3152;line-height:1;margin-top:.5rem}.dash-metric-unit{font-size:.75rem;color:#7a92aa;font-weight:500}.dash-metric-level{font-size:.8rem;font-weight:600;margin-top:.5rem}.dash-level-1{color:#16a34a}.dash-level-2{color:#65a30d}.dash-level-3{color:#ca8a04}.dash-level-4{color:#ea580c}.dash-level-5{color:#dc2626}.dash-level-6{color:#7c3aed}.dash-metric-pollen{font-size:2rem;font-weight:700;color:#1a3152;margin-top:.5rem;line-height:1}.dash-pollen-dot{width:10px;height:10px;border-radius:50%;margin-top:.5rem}.dash-pollen-dot--low{background:#16a34a}.dash-pollen-dot--medium{background:#ca8a04}.dash-pollen-dot--high{background:#ea580c}.dash-pollen-dot--very-high{background:#dc2626}.dash-page-header{margin-bottom:.25rem}.dash-page-title{font-size:1.4rem;font-weight:700;color:#1a3152;line-height:1.2}.dash-page-sub{font-size:.82rem;color:#6080a0;margin-top:.2rem}.dash-bottom{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.dash-section-heading{font-size:.72rem;font-weight:700;color:#7a92aa;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.9rem}.dash-rec-row{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid rgba(210,225,243,.45)}.dash-rec-row:last-child{border-bottom:none;padding-bottom:0}.dash-rec-icon{width:30px;height:30px;border-radius:9px;background:#0f8cf414;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-rec-icon img{width:16px;height:16px;object-fit:contain}.dash-rec-title{flex:1;font-size:.83rem;color:#3a5070;font-weight:500}.dash-rec-value{font-size:.85rem;font-weight:700;color:#0874f8;white-space:nowrap}.layout-main{display:flex;flex-direction:column;flex:1;min-height:0}.hero{display:grid;grid-template-columns:1fr 400px;gap:2rem;align-items:start;max-width:1400px;margin:0 auto;width:100%}.hero-left{display:flex;flex-direction:column;gap:1.5rem}.hero-right{display:flex;flex-direction:column;gap:1rem;align-items:stretch;position:sticky;top:1rem}.hero-copy{max-width:100%;transform:none}.eyebrow{text-transform:uppercase;font-size:.8rem;letter-spacing:.14em;color:#3c7bd1;font-weight:600;margin-bottom:.6rem}.hero-copy h1{font-size:2.75rem;line-height:1.2;color:#132a4a;margin-bottom:.85rem}.hero-copy h1 span{color:#1c8fff}.hero-subtitle{font-size:1.05rem;color:#4f6687;line-height:1.5;margin-bottom:1.35rem}.hero-search-card{display:flex;align-items:center;gap:.6rem;background:#fffffffa;border-radius:999px;padding:.35rem .35rem .35rem 1.15rem;box-shadow:0 20px 36px #215bac38,0 0 0 1px #d2e0f4e6;margin-bottom:.75rem;max-width:560px}.hero-search-input{flex:1;display:flex;align-items:center;gap:.5rem;min-height:2.75rem}.hero-search-field{width:100%;border:none;background:transparent;font-size:.95rem;color:#1a3152;outline:none}.hero-search-field::placeholder{color:#8b9bb5}.hero-search-suggestions{max-width:560px;margin-top:-.2rem;margin-bottom:.75rem;padding:.45rem;border-radius:1rem;background:#fffffff5;box-shadow:0 18px 36px #215bac29,0 0 0 1px #d2e0f4e6;display:flex;flex-direction:column;gap:.15rem}.hero-search-suggestion{border:none;background:transparent;text-align:left;padding:.7rem .85rem;border-radius:.8rem;color:#1a3152;font-size:.9rem;cursor:pointer;transition:background .15s ease,color .15s ease}.hero-search-suggestion:hover{background:#0284c714;color:#0f2d52}.hero-search-suggestion--muted{color:#7b8aa3;cursor:default}.hero-search-icon{display:flex;color:#94a3b8;flex-shrink:0}.hero-search-btn{padding-inline:1.4rem;padding-block:.55rem;font-weight:600;font-size:.95rem;background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;border:none;border-radius:999px;box-shadow:0 3px 12px #0d59c066;display:inline-flex;align-items:center;gap:.35rem;transition:box-shadow .2s ease,transform .12s ease}.hero-search-btn:hover{box-shadow:0 5px 16px #0d59c080;transform:translateY(-1px)}.hero-search-btn:disabled{cursor:wait;opacity:.85;transform:none}.hero-search-btn-arrow{font-size:1rem;opacity:.9}.hero-search-placeholder{font-size:.95rem;color:#8b9bb5}.hero-meta-row{display:flex;align-items:center;gap:.5rem;margin-top:.35rem;font-size:.8rem;color:#64748b;font-weight:400}.link-button{border:none;background:none;padding:0;cursor:pointer;color:#0284c7;font-size:inherit;font-weight:500;text-underline-offset:.2em;transition:color .15s ease}.link-button:hover{color:#0369a1}.hero-meta-label{letter-spacing:.01em}.hero-meta-dot{width:3px;height:3px;border-radius:999px;background:#cbd5e1}.hero-panel{background-image:linear-gradient(180deg,#ffffff61,#ffffff94),var(--ring-panel-image);background-size:cover;background-position:center 42%;background-repeat:no-repeat;border-radius:18px;padding:1rem 1.2rem;box-shadow:0 24px 48px #285faa47,0 0 0 1px #d7e4f5e6;width:100%;margin:0}.hero-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}.hero-panel-header-left{display:flex;align-items:center;gap:.5rem}.hero-panel-menu{display:flex;color:#64748b;cursor:pointer}.hero-panel-location{font-size:.9rem;font-weight:600;color:#1a3152;margin:0}.hero-panel-today{display:inline-flex;align-items:center;gap:.25rem;border:none;background:none;padding:.25rem .5rem;font-size:.8rem;color:#64748b;cursor:pointer}.hero-panel-today-arrow{font-size:.6rem;opacity:.8}.hero-panel-body{display:flex;flex-direction:column;gap:.65rem}.hero-panel-main{display:flex;gap:1.1rem;align-items:center}.hero-panel-stats{display:flex;flex-direction:column;gap:.35rem;flex:0 1 auto;width:max-content}.hero-panel-stat{display:flex;align-items:center;justify-content:space-between;gap:2rem}.hero-panel-stat-left{display:flex;align-items:center;gap:.5rem}.hero-panel-stat-icon{display:flex;align-items:center;justify-content:center;color:#1a3152;flex-shrink:0}.hero-panel-stat-label{font-size:.8rem;font-weight:500;color:#1a3152}.hero-panel-stat-right{display:flex;align-items:baseline;gap:.25rem}.hero-panel-stat-right--level-1,.hero-panel-stat-right--level-1 .hero-panel-stat-num,.hero-panel-stat-right--level-1 .hero-panel-stat-unit{color:#3cad57}.hero-panel-stat-right--level-2,.hero-panel-stat-right--level-2 .hero-panel-stat-num,.hero-panel-stat-right--level-2 .hero-panel-stat-unit{color:#8fcf42}.hero-panel-stat-right--level-3,.hero-panel-stat-right--level-3 .hero-panel-stat-num,.hero-panel-stat-right--level-3 .hero-panel-stat-unit{color:#d8b800}.hero-panel-stat-right--level-4,.hero-panel-stat-right--level-4 .hero-panel-stat-num,.hero-panel-stat-right--level-4 .hero-panel-stat-unit{color:#e39a00}.hero-panel-stat-right--level-5,.hero-panel-stat-right--level-5 .hero-panel-stat-num,.hero-panel-stat-right--level-5 .hero-panel-stat-unit{color:#ef7f00}.hero-panel-stat-right--level-6,.hero-panel-stat-right--level-6 .hero-panel-stat-num,.hero-panel-stat-right--level-6 .hero-panel-stat-unit{color:#d63a2c}.hero-panel-stat-num{font-size:1.15rem;font-weight:700;color:#1a3152}.hero-panel-stat-unit{font-size:.78rem;font-weight:500;color:#1a3152;opacity:.85}.hero-panel-stat-right--pollen{align-items:center;gap:.4rem}.hero-panel-stat-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.hero-panel-stat-dot--medium{background:#e89c3a}.hero-panel-stat-pollen{font-size:.85rem;font-weight:600;color:#1a3152}.hero-panel-recs{border-top:1px solid #e5ecf6;padding-top:.65rem;display:flex;flex-direction:column;gap:.55rem}.hero-panel-source{display:flex;flex-direction:column;gap:.2rem}.hero-panel-source-title{font-size:.82rem;font-weight:700;color:#1a3152}.hero-panel-source-copy{font-size:.78rem;color:#425571;line-height:1.4}.hero-panel-recs-title{font-size:.85rem;font-weight:600;color:#1a3152;margin-bottom:.05rem}.hero-rec-row{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;color:#425571;gap:.5rem}.hero-rec-left{display:inline-flex;align-items:center;gap:.4rem}.hero-rec-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.hero-rec-icon img{width:100%;height:100%;object-fit:contain}.hero-rec-title{color:#8497b0}.hero-rec-value{font-weight:500}.hero-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:.65rem 1rem;border-radius:14px;background:#fffffff0;box-shadow:0 14px 32px #295cab2e,0 0 0 1px #d9e5f5e6;max-width:900px;flex-shrink:0}.hero-strip-item{padding-inline:.75rem;text-align:center;min-height:3.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem}.hero-strip-icon{display:flex;color:#64748b;margin-bottom:.15rem}.hero-strip-item+.hero-strip-item{border-left:1px solid rgba(226,232,240,.9)}.hero-strip-title{font-size:.9rem;font-weight:600;color:#1e293b;line-height:1.25}.hero-strip-subtitle{font-size:.78rem;color:#64748b;line-height:1.3}.section-title{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0 0 .75rem}.daily-plan-section{max-width:900px}.daily-plan-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.daily-plan-card{background:#fffffffa;border-radius:16px;padding:1rem 1.15rem;box-shadow:0 14px 32px #295cab2e,0 0 0 1px #d9e5f5e6;display:flex;flex-direction:column;gap:.35rem}.daily-plan-card-label{font-size:.85rem;font-weight:600;color:#1e293b}.daily-plan-card-value{font-size:.9rem;color:#475569}.daily-plan-card-value--good{color:#16a34a;font-weight:600}.daily-plan-bar{height:6px;border-radius:999px;background:#e2e8f0;margin-top:.25rem}.daily-plan-bar--good{background:linear-gradient(90deg,#22c55e,#4ade80);width:70%}.connect-devices-section{max-width:900px}.connect-devices-section .devices-inline-banner{margin-top:.5rem}.indoor-sensor-summary{margin-top:1rem;padding:1.1rem 1.15rem;border-radius:18px;background:#fffffff7;box-shadow:0 16px 32px #295cab29,0 0 0 1px #d9e5f5e6;display:flex;flex-direction:column;gap:.9rem}.indoor-sensor-summary__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.indoor-sensor-summary__header-status{display:inline-flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}.indoor-sensor-summary__eyebrow{font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0284c7}.indoor-sensor-summary__title{font-size:1.12rem;font-weight:700;color:#1a3254;margin-top:.2rem}.indoor-sensor-summary__badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:.45rem .75rem;border-radius:999px;background:#e2e8f0e6;color:#475569;font-size:.8rem;font-weight:700}.indoor-sensor-summary__badge--live{background:#dcfce7f2;color:#15803d}.indoor-sensor-summary__copy{font-size:.92rem;line-height:1.5;color:#47607f}.indoor-sensor-summary__error{font-size:.85rem;color:#d63a2c;background:#d63a2c12;border-radius:8px;padding:.55rem .8rem;margin:0}.indoor-sensor-summary__warning{font-size:.85rem;color:#9a5b06;background:#f59e0b1a;border:1px solid rgba(245,158,11,.24);border-radius:8px;padding:.55rem .8rem;margin:0}.indoor-sensor-summary__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.indoor-sensor-summary__stat{display:flex;flex-direction:column;gap:.35rem;padding:.9rem;border-radius:16px;background:linear-gradient(180deg,#f7fbfffa,#f1f7ffeb);box-shadow:inset 0 0 0 1px #d6e3f4d9}.indoor-sensor-summary__label{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}.indoor-sensor-summary__value{font-size:1.5rem;font-weight:700;color:#1a3254;line-height:1}.indoor-sensor-summary__unit{margin-left:.25rem;font-size:.75rem;font-weight:600;color:#64748b}.indoor-sensor-summary__footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.84rem;color:#64748b;flex-wrap:wrap}.indoor-sensor-summary__footer-right{display:inline-flex;align-items:center;gap:.7rem;flex-wrap:wrap}.indoor-sensor-summary__battery-chip{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;flex-shrink:0;padding:.45rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600;line-height:1}.indoor-sensor-summary__battery-chip--healthy{background:#dcfce7f2;color:#15803d;box-shadow:inset 0 0 0 1px #86efaca6}.indoor-sensor-summary__battery-chip--low{background:#fee2e2f5;color:#dc2626;box-shadow:inset 0 0 0 1px #fca5a5b3}.indoor-sensor-summary__battery-icon{display:inline-flex;align-items:center;justify-content:center}.connect-devices-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.connect-device-card{background:#fffffffa;border-radius:16px;padding:1.1rem 1.15rem;border:none;box-shadow:0 14px 32px #295cab2e,0 0 0 1px #d9e5f5e6;display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;cursor:pointer;text-align:left;transition:box-shadow .2s ease,transform .12s ease}.connect-device-card:hover{box-shadow:0 18px 40px #295cab38;transform:translateY(-2px)}.connect-device-icon{display:flex;width:48px;height:48px}.connect-device-icon img{width:100%;height:100%;object-fit:contain}.connect-device-title{font-size:1rem;font-weight:700;color:#1e293b}.connect-device-subtitle{font-size:.85rem;color:#64748b}.devices-inline-section{display:flex;justify-content:center;margin-top:0;flex-shrink:0}.devices-inline-banner{display:flex;align-items:stretch;gap:0;padding:.8rem 1.1rem;border-radius:18px;background:#f6fafffa;box-shadow:0 16px 32px #2156a042,0 0 0 1px #d6e3f4f2;max-width:900px;width:100%}.devices-inline-item{border:none;background:transparent;display:flex;align-items:center;flex:1 1 0;gap:.7rem;padding:.7rem 1.4rem;cursor:pointer;border-radius:14px;transition:background .16s ease}.devices-inline-item+.devices-inline-item{border-left:1px solid rgba(210,223,240,.85)}.devices-inline-item:hover{background:#e8f3ffe6}.devices-inline-item--active{background:#e0f0fffa}.devices-inline-image-wrap{width:60px;height:60px;display:inline-flex;align-items:center;justify-content:center}.devices-inline-image{width:60px;height:60px;object-fit:contain;transform:scale(2.1)}.devices-inline-copy{display:flex;flex-direction:column;gap:.05rem;text-align:left}.devices-inline-title{font-size:1rem;font-weight:600;color:#1a3254}.devices-inline-subtitle{font-size:.9rem;color:#647793}.globe-cta-section{display:flex;justify-content:flex-start}.globe-cta-section--right,.globe-cta-section--right .globe-cta{width:100%}.globe-cta{border:none;cursor:pointer;width:min(100%,420px);min-height:96px;border-radius:16px;padding:.75rem .9rem .7rem 1rem;background:linear-gradient(102deg,#f7fcffeb,#f4faffb3 38%,#f1f9ff61 62%,#ecf7ff24),var(--globe-banner-image);background-size:100% 100%,cover;background-position:center,center;background-repeat:no-repeat;box-shadow:0 20px 42px #25569a38,0 0 0 1px #dfebf8f2;display:flex;align-items:center;justify-content:flex-start;gap:.9rem;text-align:left;transition:transform .2s ease,box-shadow .2s ease;overflow:hidden}.globe-cta:hover{transform:translateY(-2px);box-shadow:0 24px 48px #25569a42,0 0 0 1px #dfebf8f2}.globe-cta-copy{display:flex;flex-direction:column;gap:.32rem}.globe-cta-title{font-size:1.55rem;line-height:1.06;font-weight:700;color:#1a3458}.globe-cta-subtitle{font-size:.9rem;color:#5f7898;max-width:27ch}.globe-cta-action{margin-top:.35rem;display:inline-flex;align-items:center;gap:.35rem;width:fit-content;border-radius:999px;padding:.3rem .82rem;background:#ffffffeb;color:#2f5f93;border:1px solid rgba(204,222,241,.95);font-size:.84rem;font-weight:600}.globe-cta-action span{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#4ca9ff,#2f76d3);color:#fff;font-size:.82rem;line-height:1}.aqi-ring{position:relative;width:150px;height:150px;border-radius:999px;background:#fff;box-shadow:0 14px 32px #123e7829,0 1px #ffffffe6;display:flex;align-items:center;justify-content:center}.aqi-ring-svg{width:100%;height:100%}.aqi-ring-track{fill:#e8eef6;stroke:none}.aqi-ring-progress{fill:var(--aqi-ring-color);stroke:none;filter:drop-shadow(0 0 4px var(--aqi-ring-glow)) drop-shadow(0 0 10px var(--aqi-ring-glow-soft));transition:opacity .4s ease-out,filter .4s ease-out;animation:aqi-ring-glow 3.8s ease-in-out infinite}@keyframes aqi-ring-glow{0%,to{opacity:.94;filter:drop-shadow(0 0 3px var(--aqi-ring-glow)) drop-shadow(0 0 8px var(--aqi-ring-glow-soft))}50%{opacity:1;filter:drop-shadow(0 0 5px var(--aqi-ring-glow)) drop-shadow(0 0 13px var(--aqi-ring-glow-soft))}}.aqi-ring-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#13253b;text-align:center}.aqi-ring-title{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#8b9bb2}.aqi-ring-value{font-size:2.8rem;line-height:1;font-weight:600;margin-top:.1rem}.aqi-ring-value--label{max-width:6.5rem;font-size:1.2rem;line-height:1.15;text-align:center;white-space:pre-line}.stats-chart-section{display:flex;justify-content:stretch;margin:0;width:100%}.pm25-chart-card{background:linear-gradient(180deg,#f6f9fdfa,#f1f5faf5),#fffffffa;border-radius:1.25rem;padding:1rem 1rem 1.05rem;box-shadow:0 16px 36px #285faa33,inset 0 0 0 1px #ffffffe6,0 0 0 1px #d5e2f2cc;width:100%;min-width:0}.pm25-chart-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.9rem}.pm25-chart-tabs{display:flex;gap:.35rem;flex-wrap:wrap}.pm25-chart-tab{border:none;background:none;padding:.2rem .45rem;font-size:.95rem;font-weight:500;color:#64789a;cursor:pointer;border-radius:999px;transition:background .2s,color .2s}.pm25-chart-tab:hover{color:#1a3152}.pm25-chart-tab:disabled{cursor:not-allowed;opacity:.45}.pm25-chart-tab--active{min-width:4rem;padding:.45rem 1rem;background:linear-gradient(180deg,#45a6ff,#1f73df);color:#fff;box-shadow:inset 0 1px #ffffff38}.pm25-chart-status{display:flex;align-items:center;gap:.35rem;color:#66799a}.pm25-chart-status-dot{width:.5rem;height:.5rem;border-radius:999px;background:#09a942;box-shadow:0 0 0 .18rem #09a94214}.pm25-chart-status-live{font-size:.85rem;font-weight:700;color:#173b69}.pm25-chart-status-separator,.pm25-chart-status-copy{font-size:.82rem;color:#66799a}.pm25-chart-meta{display:flex;align-items:center;justify-content:flex-start;gap:.45rem;margin-bottom:.7rem}.pm25-chart-label{font-size:.95rem;font-weight:500;letter-spacing:-.01em;color:#173b69}.pm25-chart-info{width:1.1rem;height:1.1rem;border-radius:999px;border:1.5px solid #6d81a1;color:#6d81a1;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.pm25-chart-wrap{width:100%;height:5.25rem;margin-bottom:0;position:relative;border-radius:1rem;background:linear-gradient(180deg,#fff,#f8fafcfa,#f1f5f9f2);overflow:hidden}.pm25-chart-hitbox{width:90%;height:100%;border:none;padding:0;background:transparent;cursor:pointer;display:block;margin:0 auto}.pm25-chart-current-marker{position:absolute;top:.5rem;left:50%;transform:translate(-50%);pointer-events:none}.pm25-chart-svg{width:100%;height:100%;display:block}.pm25-chart-inspector{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;margin-bottom:.8rem;padding:.85rem 1rem .95rem;border-radius:.85rem;background:#fff;border:1px solid rgba(226,232,240,.95);box-shadow:inset 0 1px #ffffffe6,0 1px 2px #0000000a}.pm25-chart-inspector-top{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.pm25-chart-inspector-value{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;color:#0f172a}.pm25-chart-inspector-confidence{display:inline-flex;align-items:center;border-radius:999px;padding:.32rem .6rem;font-size:.58rem;font-weight:700;letter-spacing:.04em;gap:.35rem;text-transform:uppercase}.pm25-chart-inspector-confidence--high{background:#83d29e57;color:#0ca33d}.pm25-chart-inspector-confidence-dot{width:.4rem;height:.4rem;border-radius:999px;background:currentColor;flex-shrink:0}.pm25-chart-inspector-confidence--medium{background:#ffd58047;color:#b45309}.pm25-chart-inspector-confidence--low{background:#75cbbc38;color:#0f766e}.pm25-chart-inspector-confidence--unknown{background:#64748b24;color:#475569}.pm25-chart-inspector-detail{font-size:.73rem;color:#64748b}.pm25-chart-inspector-row{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;min-height:1.5rem}.pm25-chart-inspector-bottom{width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.38rem;flex-wrap:nowrap}.pm25-chart-inspector-icon{display:inline-flex;color:#7285a4;flex-shrink:0;width:1.2rem;height:1.2rem;align-items:center;justify-content:center;margin-left:0}.pm25-chart-inspector-label{font-size:.66rem;font-weight:500;color:#7285a4}.pm25-chart-inspector-copy{font-size:.72rem;color:#526b91}.pm25-chart-inspector-row--source{display:flex;align-items:center;gap:.35rem}.pm25-chart-source-logo{width:1.85rem;height:1.85rem;object-fit:contain;flex-shrink:0}.pm25-chart-inspector-copy--source{font-size:.76rem;color:#2580ff;font-weight:500}.pm25-chart-current-pill{color:#4f6987;font-size:.95rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.pm25-chart-note{font-size:.72rem;line-height:1.4;color:#6f8299}.plan-selector-section{display:flex;justify-content:stretch;margin:0;width:100%}.plan-selector-card{background:#fffffffa;border-radius:14px;padding:.9rem 1rem 1rem;box-shadow:0 16px 36px #285faa33,0 0 0 1px #d7e4f5e6;width:100%;min-width:0}.plan-selector-title{font-size:1rem;font-weight:600;color:#1a3152;text-align:center;margin:0 0 .65rem}.plan-selector-tabs{display:flex;gap:.4rem;margin-bottom:.75rem}.plan-selector-tab{flex:1;border:none;padding:.4rem .6rem;font-size:.85rem;font-weight:500;border-radius:999px;cursor:pointer;background:#eef2f7;color:#4a5f7e;transition:background .2s,color .2s}.plan-selector-tab:hover{background:#e2e8f0;color:#1a3152}.plan-selector-tab--active{background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff}.plan-selector-tab--active:hover{background:linear-gradient(135deg,#0668e0,#019de8);color:#fff}.plan-selector-features{list-style:none;margin:0 0 .75rem;padding:0;display:flex;flex-direction:column;gap:.3rem}.plan-selector-feature{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:#1a3152}.plan-selector-check{display:inline-flex;align-items:center;justify-content:center;color:#16a34a;flex-shrink:0}.plan-selector-cta{width:100%;border:none;padding:.5rem 1rem;font-size:.9rem;font-weight:600;border-radius:999px;cursor:pointer;background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;box-shadow:0 8px 20px #0d59c059;transition:transform .15s ease,box-shadow .15s ease}.plan-selector-cta:hover{box-shadow:0 12px 28px #0d59c080}.page-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding:1.25rem 2rem 1.5rem;margin-top:auto;flex-shrink:0;min-height:4rem}.footer-left{display:flex;align-items:center;gap:.85rem;max-width:48%}.footer-logo{height:28px;width:auto;display:block;flex-shrink:0;opacity:.92}.footer-tagline{font-size:.8rem;color:#64748b;margin:0;line-height:1.4;max-width:320px;letter-spacing:.01em}.footer-right{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.footer-link{color:#64748b;text-decoration:none;font-weight:500;letter-spacing:.02em;transition:color .18s ease}.footer-link:hover{color:#0f8cf4}.footer-dot{color:#94a3b8;-webkit-user-select:none;user-select:none;font-weight:300;font-size:.65rem;opacity:.8}.placeholder-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:#f0f6ff;color:#1a3152;font-family:inherit}.placeholder-page h1{font-size:2rem;font-weight:600}.placeholder-page p{font-size:1rem;color:#4a5f7e}@media(max-width:1300px){.dashboard-preview{width:min(980px,68vw);min-width:0}.dashboard-preview__title{font-size:2.15rem}.dashboard-preview-card__content{align-items:center}.dashboard-preview-card__copy{font-size:.9rem}.dashboard-preview-card__metric-tile span{font-size:.95rem}}@media(max-width:900px){.dashboard-preview{width:100%;min-width:0}.dashboard-admin-override__header{flex-direction:column;align-items:flex-start}.dashboard-admin-override__grid{grid-template-columns:1fr}.dashboard-preview__header{flex-direction:column;align-items:flex-start}.dashboard-preview-recs__tabs{flex-direction:column;align-items:stretch}.dashboard-preview-recs__refresh{align-self:flex-start}.dashboard-preview__cards,.dashboard-preview-card__content{grid-template-columns:1fr}.dashboard-preview-card__ring{justify-content:flex-start}.dashboard-preview__title{font-size:1.62rem}.dashboard-preview__updated,.dashboard-preview__search,.dashboard-preview__location{font-size:.85rem}.dashboard-preview-card__eyebrow{font-size:.95rem}.dashboard-preview-card__copy{font-size:.9rem}.dashboard-preview-card__metrics-grid{grid-template-columns:1fr}.dashboard-preview-card__metric-tile span{font-size:.95rem}.dashboard-preview__scale{padding:.9rem}.dashboard-preview__scale p{font-size:1rem}.dashboard-preview__scale-bar{height:20px}.dashboard-preview__scale-labels{grid-template-columns:repeat(3,1fr)}.dashboard-preview-recs__grid{grid-template-columns:1fr}.nav-links{gap:1rem;font-size:.85rem}.pm25-chart-card{padding:1.35rem 1.25rem 1.2rem;border-radius:2rem}.pm25-chart-tab{font-size:1.35rem}.pm25-chart-tab--active{min-width:auto;padding:.7rem 1.4rem}.pm25-chart-status{gap:.45rem}.pm25-chart-status-live,.pm25-chart-status-separator,.pm25-chart-status-copy{font-size:1rem}.pm25-chart-label{font-size:2rem}.pm25-chart-info{width:2rem;height:2rem;font-size:1.2rem}.pm25-chart-inspector{padding:1.15rem 1.2rem 1.25rem;gap:.7rem}.pm25-chart-inspector-value{font-size:3rem}.pm25-chart-inspector-confidence{padding:.55rem .9rem;font-size:.85rem}.pm25-chart-inspector-bottom{gap:.7rem}.pm25-chart-inspector-label,.pm25-chart-inspector-copy,.pm25-chart-inspector-copy--source{font-size:.92rem}.pm25-chart-wrap{height:17rem}.pm25-chart-current-pill{font-size:1.45rem}.globe-cta{padding:.95rem .95rem .9rem 1rem;min-height:118px}.globe-cta-title{font-size:1.32rem}.globe-cta-subtitle{font-size:.84rem}.devices-title{font-size:1.6rem}.device-links{grid-template-columns:1fr;gap:1px;background:#cedef0e6;box-shadow:none}.device-link+.device-link{border-left:none}.indoor-sensor-summary__header{flex-direction:column;align-items:stretch}.indoor-sensor-summary__header-status{justify-content:flex-start}.indoor-sensor-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.location-menu{position:relative;align-self:flex-start}.location-menu-backdrop{position:fixed;inset:0;z-index:99}.location-menu-trigger{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #d4e3f3;border-radius:999px;background:#f6fbfff5;color:#2f5784;font-size:.8rem;font-weight:600;padding:.32rem .75rem;cursor:pointer;font-family:inherit;transition:border-color .15s ease,background .15s ease;max-width:280px}.location-menu-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-menu-trigger:hover{border-color:#8cbef0;background:#ddeffff5}.location-menu-chevron{flex-shrink:0;transition:transform .15s ease}.location-menu-chevron--open{transform:rotate(180deg)}.location-menu-dropdown{position:absolute;top:calc(100% + .45rem);left:0;z-index:100;min-width:220px;width:max-content;max-width:320px;background:#fff;border:1px solid rgba(210,225,243,.9);border-radius:12px;box-shadow:0 8px 24px #0a1e3c1f;padding:.4rem;display:flex;flex-direction:column}.location-menu-item{display:flex;align-items:center;border-radius:8px;transition:background .15s ease}.location-menu-item:hover{background:#0f8cf414}.location-menu-item--active{background:#0f8cf41a;color:#0a72cc}.location-menu-item>button:first-child{flex:1;display:flex;align-items:center;text-align:left;padding:.5rem .8rem;background:none;border:none;font-size:.88rem;font-weight:500;color:inherit;cursor:pointer;font-family:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.location-menu-item>button:first-child:disabled{cursor:default;opacity:.7}.location-menu-remove{flex-shrink:0;background:none;border:none;color:#8aa1bc;font-size:1rem;line-height:1;padding:.4rem .65rem;cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease;font-family:inherit}.location-menu-item:hover .location-menu-remove{opacity:1}.location-menu-remove:hover{color:#c0392b}.location-menu-divider{height:1px;background:#d2e1f3e6;margin:.3rem .4rem;flex-shrink:0}.location-menu-add{background:none;border:none;text-align:left;width:100%;padding:.5rem .8rem;border-radius:8px;font-size:.88rem;font-weight:600;color:#0f8cf4;cursor:pointer;font-family:inherit;transition:background .15s ease}.location-menu-add:hover{background:#0f8cf414}.device-setup-overlay{position:fixed;inset:0;background:#0a19328c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.device-setup-modal{position:relative;width:100%;max-width:560px;border-radius:24px;padding:2rem;background:radial-gradient(circle at top right,rgba(191,231,255,.5),transparent 32%),linear-gradient(180deg,#fffffffc,#f8fbfff5);box-shadow:0 32px 64px #285faa52,0 0 0 1px #d7e4f5e6}.device-setup-close{position:absolute;top:1rem;right:1rem;border:none;background:none;cursor:pointer;color:#8497b0;display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:6px;transition:color .15s ease,background .15s ease}.device-setup-close:hover{color:#1a3152;background:#e2e8f0b3}.device-setup-eyebrow{font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#0284c7;margin-bottom:.7rem}.device-setup-title{font-size:1.8rem;font-weight:700;color:#1a3152;margin:0 0 .45rem}.device-setup-subtitle{font-size:.95rem;color:#4f6687;line-height:1.6;margin:0}.device-setup-brand-card{margin-top:1.4rem;padding:1.15rem 1.2rem;border-radius:18px;background:#f0f8ffeb;box-shadow:inset 0 0 0 1px #d2e0f4f2;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.device-setup-brand-label{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0284c7;margin-bottom:.3rem}.device-setup-brand-title{font-size:1.12rem;font-weight:700;color:#1a3152;margin:0 0 .2rem}.device-setup-brand-copy{font-size:.9rem;color:#4f6687;margin:0}.device-setup-brand-badge{flex-shrink:0;border-radius:999px;padding:.42rem .7rem;background:#0284c71f;color:#0369a1;font-size:.78rem;font-weight:700}.device-setup-checklist{margin-top:1.4rem;display:flex;flex-direction:column;gap:.7rem}.device-setup-checklist-item{border-radius:14px;padding:.85rem .95rem;background:#f8fbfff2;box-shadow:inset 0 0 0 1px #dbe7f5f2;color:#36506f;font-size:.92rem}.device-setup-form{margin-top:1.35rem;display:flex;flex-direction:column;gap:1rem}.device-setup-field{display:flex;flex-direction:column;gap:.4rem}.device-setup-label{font-size:.85rem;font-weight:600;color:#1a3152}.device-setup-input{width:100%;border:1px solid rgba(210,224,244,.95);border-radius:10px;padding:.7rem .9rem;font-size:.95rem;color:#1a3152;background:#f8fbfffa;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.device-setup-input:focus{border-color:#0f8cf4;box-shadow:0 0 0 3px #0f8cf41f}.device-setup-input:disabled{opacity:.7;cursor:wait}.device-setup-error{font-size:.85rem;color:#d63a2c;background:#d63a2c12;border-radius:8px;padding:.55rem .8rem;margin:0}.device-setup-success-card{margin-top:1.4rem;border-radius:18px;padding:1rem 1.1rem;background:#f0fdf4f2;box-shadow:inset 0 0 0 1px #bbf7d0e6;display:flex;flex-direction:column;gap:.7rem}.device-setup-success-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#1f3e2f;font-size:.92rem}.device-setup-success-label{color:#4b6a57;font-weight:700}.device-setup-device-list{margin-top:1.35rem;display:flex;flex-direction:column;gap:.75rem}.device-setup-device-item{border:none;width:100%;text-align:left;border-radius:16px;padding:.95rem 1rem;background:#f8fbfffa;box-shadow:inset 0 0 0 1px #d6e3f4eb;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;transition:box-shadow .16s ease,transform .12s ease,background .16s ease}.device-setup-device-item:hover{transform:translateY(-1px);background:#f2f9fffa}.device-setup-device-item--active{background:#ebf5fffa;box-shadow:inset 0 0 0 2px #0f8cf480,0 10px 24px #0f8cf41a}.device-setup-device-name{font-size:1rem;font-weight:700;color:#1a3152}.device-setup-device-meta{font-size:.85rem;color:#5d728f}.device-setup-actions{margin-top:1.5rem;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}@media(max-width:640px){.device-setup-modal{padding:1.4rem 1.2rem;border-radius:20px}.device-setup-title{font-size:1.45rem}.device-setup-brand-card{flex-direction:column;align-items:flex-start}.device-setup-actions{justify-content:stretch}.device-setup-actions .btn{width:100%}}.login-modal-overlay{position:fixed;inset:0;background:#0a19328c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.login-modal{background:#fff;border-radius:20px;padding:2rem;width:100%;max-width:400px;box-shadow:0 32px 64px #285faa52,0 0 0 1px #d7e4f5e6;position:relative}.login-modal-close{position:absolute;top:1rem;right:1rem;border:none;background:none;cursor:pointer;color:#8497b0;display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:6px;transition:color .15s ease,background .15s ease}.login-modal-close:hover{color:#1a3152;background:#e2e8f0b3}.login-modal-title{font-size:1.5rem;font-weight:700;color:#1a3152;margin:0 0 .3rem}.login-modal-subtitle{font-size:.9rem;color:#4f6687;margin:0 0 1.5rem}.login-modal-form{display:flex;flex-direction:column;gap:1rem}.login-modal-field{display:flex;flex-direction:column;gap:.4rem}.login-modal-label{font-size:.85rem;font-weight:600;color:#1a3152}.login-modal-input{width:100%;border:1px solid rgba(210,224,244,.95);border-radius:10px;padding:.65rem .9rem;font-size:.95rem;color:#1a3152;background:#f8fbfffa;outline:none;transition:border-color .18s ease,box-shadow .18s ease;font-family:inherit}.login-modal-input::placeholder{color:#8b9bb5}.login-modal-input:focus{border-color:#0f8cf4;box-shadow:0 0 0 3px #0f8cf41f}.login-modal-input:disabled{opacity:.7;cursor:wait}.login-modal-error{font-size:.85rem;color:#d63a2c;background:#d63a2c12;border-radius:8px;padding:.55rem .8rem;margin:0}.login-modal-submit{margin-top:.25rem;width:100%;padding-block:.7rem;font-size:.95rem}.login-modal-submit:disabled{cursor:wait;opacity:.85;transform:none}.register-modal-overlay{position:fixed;inset:0;background:#0a19328c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.register-modal{background:#fff;border-radius:20px;padding:2rem;width:100%;max-width:400px;box-shadow:0 32px 64px #285faa52,0 0 0 1px #d7e4f5e6;position:relative}.register-modal-close{position:absolute;top:1rem;right:1rem;border:none;background:none;cursor:pointer;color:#8497b0;display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:6px;transition:color .15s ease,background .15s ease}.register-modal-close:hover{color:#1a3152;background:#e2e8f0b3}.register-modal-title{font-size:1.5rem;font-weight:700;color:#1a3152;margin:0 0 .3rem}.register-modal-subtitle{font-size:.9rem;color:#4f6687;margin:0 0 1.5rem}.register-modal-form{display:flex;flex-direction:column;gap:1rem}.register-modal-field{display:flex;flex-direction:column;gap:.4rem}.register-modal-label{font-size:.85rem;font-weight:600;color:#1a3152}.register-modal-optional{font-weight:400;color:#8497b0}.register-modal-input{width:100%;border:1px solid rgba(210,224,244,.95);border-radius:10px;padding:.65rem .9rem;font-size:.95rem;color:#1a3152;background:#f8fbfffa;outline:none;transition:border-color .18s ease,box-shadow .18s ease;font-family:inherit;box-sizing:border-box}.register-modal-input::placeholder{color:#8b9bb5}.register-modal-input:focus{border-color:#0f8cf4;box-shadow:0 0 0 3px #0f8cf41f}.register-modal-input:disabled{opacity:.7;cursor:wait}.register-modal-error{font-size:.85rem;color:#d63a2c;background:#d63a2c12;border-radius:8px;padding:.55rem .8rem;margin:0}.register-modal-submit{margin-top:.25rem;width:100%;padding-block:.7rem;font-size:.95rem}.register-modal-submit:disabled{cursor:wait;opacity:.85;transform:none}.suggestions-panel{display:flex;flex-direction:column;gap:.85rem}.suggestions-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.suggestions-panel__eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7390b1;margin-bottom:.24rem}.suggestions-panel__title{font-size:1.15rem;font-weight:700;color:#1c3f67;letter-spacing:-.02em}.suggestions-panel__count{flex-shrink:0;display:inline-flex;align-items:center;min-height:32px;border-radius:999px;border:1px solid rgba(206,223,241,.95);background:#f7fbfffa;padding:.35rem .72rem;color:#6280a2;font-size:.76rem;font-weight:700}.suggestions-panel__stack{display:flex;flex-direction:column;gap:.82rem}.suggestions-panel--empty{min-height:188px;align-items:center;justify-content:center;border:1px dashed rgba(197,215,235,.98);border-radius:18px;background:radial-gradient(circle at top,#e9f4ffe0,#f7fbfff5 58%),#ffffffeb;padding:1.25rem;text-align:center}.suggestions-panel--loading{min-height:188px;align-items:center;justify-content:center;border:1px dashed rgba(197,215,235,.98);border-radius:18px;background:radial-gradient(circle at top,#eef6fff0,#f8fbfffa 58%),#fffffff0;padding:1.25rem;text-align:center}.suggestions-panel__loading-icon{width:56px;height:56px;border-radius:18px;background:linear-gradient(180deg,#fffffffa,#e8f4fffa);border:1px solid rgba(204,223,242,.95);box-shadow:0 10px 24px #1a447917;display:inline-flex;align-items:center;justify-content:center}.suggestions-panel__loading-icon span{width:22px;height:22px;border-radius:999px;border:2.5px solid rgba(106,164,233,.24);border-top-color:#2f8cff;animation:suggestions-panel-spin .9s linear infinite}.suggestions-panel__loading-copy h3{font-size:1.02rem;color:#21466f;margin-top:.1rem}.suggestions-panel__loading-copy p{margin-top:.34rem;font-size:.84rem;color:#6983a1;line-height:1.5}.suggestions-panel__empty-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(180deg,#fffffff2,#e8f4fffa);border:1px solid rgba(204,223,242,.95);box-shadow:0 10px 24px #1a447917;display:inline-flex;align-items:center;justify-content:center}.suggestions-panel__empty-icon span{width:18px;height:18px;border-radius:999px;background:linear-gradient(135deg,#76b8ff,#3790ff);box-shadow:0 0 0 7px #61a8ff1f}.suggestions-panel__empty-copy h3{font-size:1.02rem;color:#21466f;margin-top:.1rem}.suggestions-panel__empty-copy p{margin-top:.34rem;font-size:.84rem;color:#6983a1;line-height:1.5}@keyframes suggestions-panel-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.suggestion-card{--suggestion-accent: #4c9dff;--suggestion-soft: rgba(226, 241, 255, .9);--suggestion-border: rgba(205, 224, 244, .96);--suggestion-ink: #25507d;position:relative;border:1px solid var(--suggestion-border);border-left:4px solid var(--suggestion-accent);border-radius:18px;background:linear-gradient(180deg,#fffffffa,#f8fbfffa),#fff;box-shadow:0 14px 30px #183b6914;padding:1rem 1.05rem 1.02rem;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.suggestion-card:hover{transform:translateY(-1px);box-shadow:0 18px 34px #183b691c}.suggestion-card--high{--suggestion-accent: #d95b5b;--suggestion-soft: rgba(255, 235, 235, .96);--suggestion-border: rgba(241, 202, 202, .98);--suggestion-ink: #983737}.suggestion-card--medium{--suggestion-accent: #e19a3a;--suggestion-soft: rgba(255, 245, 229, .97);--suggestion-border: rgba(243, 223, 189, .98);--suggestion-ink: #9a621a}.suggestion-card--low{--suggestion-accent: #50a477;--suggestion-soft: rgba(232, 245, 237, .97);--suggestion-border: rgba(201, 228, 211, .98);--suggestion-ink: #2f7450}.suggestion-card__topline{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem}.suggestion-card__badge{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;background:var(--suggestion-soft);color:var(--suggestion-ink);padding:.36rem .68rem;font-size:.73rem;font-weight:800;letter-spacing:.03em}.suggestion-card__badge-dot{width:.5rem;height:.5rem;border-radius:999px;background:var(--suggestion-accent);box-shadow:0 0 0 4px var(--suggestion-soft)}.suggestion-card__family{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7a93af}.suggestion-card__body{display:flex;flex-direction:column;gap:.75rem}.suggestion-card__tags{display:flex;flex-wrap:wrap;gap:.42rem}.suggestion-card__tag{display:inline-flex;align-items:center;border-radius:999px;background:#f1f7fff5;border:1px solid rgba(215,229,244,.98);color:#537196;padding:.28rem .56rem;font-size:.72rem;font-weight:700;line-height:1}.suggestion-card__tag--label{background:#f8fbfffa;color:#35577f}.suggestion-card__tag--severity{background:var(--suggestion-soft);border-color:var(--suggestion-border);color:var(--suggestion-ink)}.suggestion-card__section{display:flex;flex-direction:column;gap:.34rem}.suggestion-card__section--impact{border-top:1px solid rgba(223,234,245,.96);padding-top:.72rem}.suggestion-card__section-label{font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7390b1}.suggestion-card__section-copy{margin:0;font-size:.9rem;line-height:1.58;color:#456483}@media(max-width:900px){.suggestions-panel__header{flex-direction:column;align-items:flex-start}.suggestion-card{padding:.92rem .94rem .95rem}.suggestion-card__topline{flex-wrap:wrap}}.outdoor-day-advice{display:flex;flex-direction:column;gap:.95rem;padding:1rem;border:1px solid #dce9f7;border-radius:18px;background:radial-gradient(circle at top left,rgba(222,238,255,.88),transparent 40%),linear-gradient(180deg,#fffffffa,#f4f9fff5)}.outdoor-day-advice--empty{align-items:center;justify-content:center;min-height:250px;text-align:center}.outdoor-day-advice__empty-icon{width:3rem;height:3rem;border-radius:999px;background:linear-gradient(180deg,#e1effff5,#f1f7fff5);display:inline-flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #c7dcf6d9}.outdoor-day-advice__empty-icon span{width:1.2rem;height:1.2rem;border-radius:999px;background:linear-gradient(180deg,#89bdf5,#3f85e4);opacity:.8}.outdoor-day-advice__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.outdoor-day-advice__mode-switch{display:inline-flex;gap:.35rem;padding:.28rem;border-radius:999px;background:#e9f2fceb;border:1px solid rgba(205,223,243,.95);margin-bottom:.7rem}.outdoor-day-advice__mode-tab{border:none;background:transparent;color:#6b84a2;padding:.44rem .78rem;border-radius:999px;font-size:.76rem;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease}.outdoor-day-advice__mode-tab:hover:not(:disabled){background:#ffffffc7;color:#315b88}.outdoor-day-advice__mode-tab--active{background:linear-gradient(135deg,#1877e8,#40a5ff);color:#fff;box-shadow:0 10px 18px #206ac433}.outdoor-day-advice__mode-tab:disabled{opacity:.52;cursor:not-allowed}.outdoor-day-advice__eyebrow{margin:0 0 .22rem;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#6d88a6;font-weight:700}.outdoor-day-advice__title{margin:0;font-size:1.2rem;color:#1c3a5c}.outdoor-day-advice__location{margin:.24rem 0 0;font-size:.82rem;color:#64809e}.outdoor-day-advice__availability{margin:.45rem 0 0;font-size:.76rem;line-height:1.45;color:#6c84a1}.outdoor-day-advice__badge{padding:.45rem .78rem;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap;border:1px solid transparent}.outdoor-day-advice__badge--good{background:#e1f8ecf5;color:#0d7a47;border-color:#96ddb4e6}.outdoor-day-advice__badge--caution{background:#fff5dcfa;color:#9a6500;border-color:#f5d58aeb}.outdoor-day-advice__badge--danger{background:#ffece7fa;color:#ae4432;border-color:#f5b5abeb}.outdoor-day-advice__hero{display:flex;align-items:stretch;justify-content:space-between;gap:.85rem}.outdoor-day-advice__hero-copy{flex:1;min-width:0}.outdoor-day-advice__hero-copy h4{margin:0 0 .35rem;font-size:1.04rem;color:#1f4269}.outdoor-day-advice__hero-copy p{margin:0;font-size:.84rem;line-height:1.55;color:#567390}.outdoor-day-advice__air-pill{min-width:150px;border-radius:16px;padding:.8rem .9rem;display:flex;flex-direction:column;justify-content:center;gap:.15rem;border:1px solid transparent}.outdoor-day-advice__air-pill span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.outdoor-day-advice__air-pill strong{font-size:.96rem}.outdoor-day-advice__air-pill--good,.outdoor-day-advice__air-pill--ok{background:#e7f8edfa;color:#0d7a47;border-color:#9fe0b8e0}.outdoor-day-advice__air-pill--caution{background:#fff7e4fa;color:#9b6805;border-color:#f0d28fe0}.outdoor-day-advice__air-pill--warning,.outdoor-day-advice__air-pill--danger{background:#ffeee9fa;color:#b14634;border-color:#f0b6aee0}.outdoor-day-advice__air-pill--muted{background:#f2f7fcfa;color:#667c95;border-color:#d3dfece0}.outdoor-day-advice__quick-notes{display:flex;flex-wrap:wrap;gap:.6rem}.outdoor-day-advice__quick-note{min-width:0;flex:1 1 140px;padding:.7rem .8rem;border-radius:14px;border:1px solid rgba(208,224,243,.95);background:#ffffffdb}.outdoor-day-advice__quick-note span{display:block;font-size:.68rem;color:#7188a5;font-weight:700;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.12em}.outdoor-day-advice__quick-note strong{color:#26496f;font-size:.84rem}.outdoor-day-advice__metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.outdoor-day-advice__metric{border:1px solid rgba(210,226,244,.95);background:#ffffffdb;border-radius:14px;padding:.8rem;display:flex;flex-direction:column;gap:.25rem}.outdoor-day-advice__metric span{font-size:.72rem;color:#7288a4;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.outdoor-day-advice__metric strong{color:#234668;font-size:1rem}.outdoor-day-advice__metric small{color:#6f849d;font-size:.73rem}.outdoor-day-advice__advice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.outdoor-day-advice__advice-card{border:1px solid rgba(210,226,244,.95);border-radius:15px;background:linear-gradient(180deg,#fffffff0,#f7fbfff0);padding:.85rem .9rem}.outdoor-day-advice__advice-card span{display:inline-flex;margin-bottom:.4rem;font-size:.72rem;color:#2466a4;background:#e2f0ffeb;border:1px solid rgba(196,221,249,.95);border-radius:999px;padding:.25rem .58rem;font-weight:700}.outdoor-day-advice__advice-card p{margin:0;color:#567390;font-size:.82rem;line-height:1.55}@media(max-width:1100px){.outdoor-day-advice__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.outdoor-day-advice__header,.outdoor-day-advice__hero{flex-direction:column}.outdoor-day-advice__air-pill{min-width:0}.outdoor-day-advice__metrics,.outdoor-day-advice__advice-list{grid-template-columns:1fr}}.indoor-history-panel{display:flex;flex-direction:column;gap:1rem;--ih-blue: #4a90e2;--ih-navy: #1a3152;--ih-muted: #6080a0}.indoor-history-panel__top{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.indoor-history-panel__brand{display:flex;align-items:center;gap:.65rem;min-width:0}.indoor-history-panel__house{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#4a90e21f;color:var(--ih-blue);flex-shrink:0}.indoor-history-panel__page-title{margin:0;font-size:clamp(1rem,2.5vw,1.2rem);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ih-navy);line-height:1.2}.indoor-history-panel__device-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .9rem;border-radius:12px;border:1px solid rgba(210,225,243,.95);background:#ffffff8c;font-size:.8rem;flex-shrink:0}.indoor-history-panel__device-label{font-weight:600;color:var(--ih-muted)}.indoor-history-panel__device-name{font-weight:700;color:var(--ih-navy);max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.indoor-history-panel__controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.indoor-history-panel__range-group{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem;border-radius:14px;background:#f0f6ffd9;border:1px solid rgba(210,225,243,.7)}.indoor-history-panel__range-btn{border:none;background:transparent;color:#5c789a;border-radius:11px;padding:.42rem .95rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.indoor-history-panel__range-btn:hover{color:#215387}.indoor-history-panel__range-btn--active{background:var(--ih-blue);color:#fff;box-shadow:0 4px 12px #4a90e259}.indoor-history-panel__mock-details{border:1px dashed rgba(120,160,200,.55);border-radius:12px;background:#fafcffd9;padding:.35rem .75rem .65rem}.indoor-history-panel__mock-summary{cursor:pointer;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6a86a8;list-style:none}.indoor-history-panel__mock-summary::-webkit-details-marker{display:none}.indoor-history-panel__mock-summary:after{content:"▸";display:inline-block;margin-left:.4rem;font-size:.7rem;transition:transform .15s ease}.indoor-history-panel__mock-details[open] .indoor-history-panel__mock-summary:after{transform:rotate(90deg)}.indoor-history-panel__mock-body{margin-top:.55rem;padding-top:.45rem;border-top:1px solid rgba(210,225,243,.6)}.indoor-history-panel__mock-hint{margin:0 0 .65rem;font-size:.78rem;line-height:1.45;color:#6a87a6}.indoor-history-panel__mock-hint code{font-size:.72rem;background:#e6f0ffe6;padding:.1rem .28rem;border-radius:4px}.indoor-history-panel__mock-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.indoor-history-panel__mock-btn{border:1px solid rgba(180,205,230,.95);background:#ffffffe6;color:#3d5a78;font-size:.78rem;font-weight:700;padding:.4rem .75rem;border-radius:10px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.indoor-history-panel__mock-btn:hover:not(:disabled){border-color:var(--ih-blue);color:#1a3152}.indoor-history-panel__mock-btn:disabled{opacity:.55;cursor:not-allowed}.indoor-history-panel__mock-btn--primary{border-color:#4a90e273;background:#4a90e21f;color:#1e4a7a}.indoor-history-panel__mock-notice{margin:.55rem 0 0;font-size:.76rem;color:#3a7f57;font-weight:600}.indoor-history-panel__mock-error{margin:.45rem 0 0;font-size:.76rem;color:#b45309;font-weight:600}.indoor-history-panel__metric-dropdown{position:relative;min-width:160px}.indoor-history-panel__metric-trigger{display:flex;align-items:center;gap:.5rem;width:100%;justify-content:flex-start;border:1px solid rgba(200,220,245,.98);background:linear-gradient(180deg,#e8f2fff2,#f8fbfffa);border-radius:14px;padding:.55rem .85rem;font-size:.88rem;font-weight:700;color:var(--ih-navy);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.indoor-history-panel__metric-trigger:hover,.indoor-history-panel__metric-trigger--open{border-color:#4a90e28c;box-shadow:0 8px 24px #183b6914}.indoor-history-panel__metric-trigger .indoor-history-metric-icon{width:22px;height:22px;flex-shrink:0}.indoor-history-panel__metric-trigger-text{flex:1;text-align:left}.indoor-history-panel__chevron{flex-shrink:0;color:#6b8aad;transition:transform .2s ease}.indoor-history-panel__metric-trigger--open .indoor-history-panel__chevron{transform:rotate(180deg)}.indoor-history-panel__metric-menu{position:absolute;z-index:20;right:0;top:calc(100% + 6px);min-width:100%;margin:0;padding:.4rem;list-style:none;border-radius:14px;border:1px solid rgba(220,232,246,.98);background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 16px 40px #142d5024}.indoor-history-panel__metric-option{display:flex;align-items:center;gap:.55rem;width:100%;border:none;background:transparent;border-radius:11px;padding:.5rem .55rem;font-size:.86rem;font-weight:600;color:var(--ih-navy);cursor:pointer;text-align:left;transition:background .12s ease}.indoor-history-panel__metric-option:hover{background:#f0f7fff2}.indoor-history-panel__metric-option--active{background:#4a90e224;color:#1e4a7a}.indoor-history-panel__metric-option-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}.indoor-history-panel__metric-option-icon .indoor-history-metric-icon{width:18px;height:18px}.indoor-history-panel__metric-option-icon--us_aqi{background:#22c55e24;color:#15803d}.indoor-history-panel__metric-option-icon--co2_ppm{background:#4a90e224;color:#2563eb}.indoor-history-panel__metric-option-icon--pm25_ug_m3{background:#eab30829;color:#a16207}.indoor-history-panel__metric-option-icon--pm10_ug_m3{background:#f9731624;color:#c2410c}.indoor-history-panel__metric-option-icon--temperature_c{background:#3b82f624;color:#1d4ed8}.indoor-history-panel__metric-option-icon--humidity_pct{background:#0ea5e924;color:#0369a1}.indoor-history-panel__metric-option-label{flex:1}.indoor-history-panel__check{flex-shrink:0;color:var(--ih-blue)}.indoor-history-panel__check-placeholder{width:16px;height:16px;flex-shrink:0}.indoor-history-panel__summary-row{display:flex;flex-direction:column;gap:.35rem}.indoor-history-panel__history-title{margin:0;font-size:1.05rem;font-weight:700;color:var(--ih-navy)}.indoor-history-panel__current-level{margin:0;font-size:.95rem;color:var(--ih-navy)}.indoor-history-panel__current-label{font-weight:600;color:#3d5a78}.indoor-history-panel__current-level strong{font-weight:800;font-size:1.05rem}.indoor-history-panel__filter-bar{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;padding:.55rem .75rem;border-radius:12px;border:1px solid rgba(215,228,242,.95);background:#ffffff73;font-size:.82rem;font-weight:600;color:#4a6688}.indoor-history-panel__filter-bar-icon{display:flex;color:var(--ih-blue)}.indoor-history-panel__filter-sep{width:1px;height:16px;background:#b4c8dcd9}.indoor-history-panel__filter-period{flex:1;min-width:0}.indoor-history-panel__filter-chevron{margin-left:auto;color:#7a92aa;flex-shrink:0}.indoor-history-panel__state{min-height:220px;display:flex;align-items:center;justify-content:center;gap:1rem;border:1px dashed rgba(197,215,235,.98);border-radius:18px;background:radial-gradient(circle at top,#ecf5ffe6,#f9fcfff7 58%),#fffffff0;padding:1.5rem;text-align:center;color:#5d7898}.indoor-history-panel__state h4{color:#21466f;font-size:1rem;margin-bottom:.3rem}.indoor-history-panel__state p{font-size:.86rem;line-height:1.5}.indoor-history-panel__state--error{border-color:#f2d1d1fa;background:#fff5f5f5}.indoor-history-panel__spinner{width:26px;height:26px;border-radius:999px;border:3px solid rgba(106,164,233,.24);border-top-color:var(--ih-blue);animation:indoor-history-spin .9s linear infinite}.indoor-history-panel__chart-card{display:flex;flex-direction:column;gap:.65rem}.indoor-history-panel__chart-shell{position:relative;width:100%;overflow:hidden;border-radius:12px;border:1px solid #e3eaf2;background:#fff}.indoor-history-panel__chart-layout{display:grid;grid-template-columns:minmax(2.6rem,3.35rem) minmax(0,1fr);grid-template-rows:minmax(220px,1fr) auto;gap:0 .4rem;align-items:stretch}.indoor-history-panel__y-axis-ticks{grid-column:1;grid-row:1;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:2px .25rem 2px 0;min-height:0;font-size:11px;font-weight:600;color:#9eb0c4;line-height:1;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.indoor-history-panel__y-axis-tick{display:block;white-space:nowrap}.indoor-history-panel__chart-plot-wrap{grid-column:2;grid-row:1;position:relative;width:100%;min-width:0;height:clamp(220px,28vw,320px)}.indoor-history-panel__chart{width:100%;height:100%;display:block}.indoor-history-panel__x-axis-ticks{grid-column:2;grid-row:2;display:flex;justify-content:space-between;align-items:flex-start;gap:.2rem;padding:.35rem 0 .15rem;min-height:1.35rem;font-size:11px;font-weight:600;color:#8fa3b8;line-height:1.2;-webkit-user-select:none;user-select:none}.indoor-history-panel__x-axis-tick{flex:1;min-width:0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.indoor-history-panel__x-axis-tick--start{text-align:left;flex:1.15}.indoor-history-panel__x-axis-tick--end{text-align:right;flex:1.15}.indoor-history-panel__plot-bg{fill:#f3f6f9}.indoor-history-panel__grid-line{stroke:#dde3ea;stroke-width:1;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}.indoor-history-panel__grid-line--vertical{stroke:#e1e7ee;stroke-dasharray:2 5}.indoor-history-panel__area{fill:url(#indoorHistoryArea)}.indoor-history-panel__line-path{fill:none;stroke:#5ecfff;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.indoor-history-panel__hover-line{stroke:#5ecfff73;stroke-width:1px;stroke-dasharray:3 4}.indoor-history-panel__tooltip{position:absolute;z-index:5;top:.65rem;transform:translate(-50%);padding:.55rem .75rem;border-radius:12px;background:#fffffffa;border:1px solid rgba(220,232,246,.95);box-shadow:0 12px 28px #142d501f;pointer-events:none;min-width:120px;text-align:center}.indoor-history-panel__tooltip-time{font-size:.72rem;font-weight:700;color:#7a92aa;letter-spacing:.04em;margin-bottom:.2rem}.indoor-history-panel__tooltip-value{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-size:.88rem;font-weight:800;color:var(--ih-navy)}.indoor-history-panel__tooltip-dot{width:7px;height:7px;border-radius:50%;background:#5ecfff;flex-shrink:0}.indoor-history-panel__legend{display:flex;flex-wrap:wrap;gap:.7rem 1.2rem;margin-top:.15rem;color:#6783a3;font-size:.8rem;font-weight:600}.indoor-history-panel__legend-item{display:inline-flex;align-items:center;gap:.45rem}.indoor-history-panel__legend-item--muted{font-weight:500;opacity:.85}.indoor-history-panel__legend-swatch{width:1.35rem;height:.5rem;border-radius:999px;flex-shrink:0}.indoor-history-panel__legend-swatch--line{background:linear-gradient(90deg,#7dd3fc,#5ecfff);height:.42rem}.indoor-history-panel__legend-swatch--gap{background:#e7eff9e0;border:1px solid rgba(214,226,240,.95)}.indoor-history-panel__caption{margin:0;font-size:.78rem;line-height:1.5;color:#7a92aa}.indoor-history-panel__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:.75rem;margin-top:.25rem;border-top:1px solid rgba(215,228,242,.75)}.indoor-history-panel__footer-status{margin:0;font-size:.8rem;color:#5c789a}.indoor-history-panel__footer-status strong{color:var(--ih-navy);font-weight:700}.indoor-history-panel__refresh-btn{border:1px solid rgba(74,144,226,.45);background:#fff9;color:var(--ih-blue);font-size:.8rem;font-weight:700;padding:.45rem 1rem;border-radius:12px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.indoor-history-panel__refresh-btn:hover{background:#4a90e21a;border-color:var(--ih-blue)}@keyframes indoor-history-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:640px){.indoor-history-panel__metric-dropdown{width:100%;min-width:0}.indoor-history-panel__controls{flex-direction:column;align-items:stretch}.indoor-history-panel__range-group{justify-content:center}.indoor-history-panel__chart-plot-wrap{height:220px}.indoor-history-panel__footer{flex-direction:column;align-items:flex-start}}.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width: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;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translate(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;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{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.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{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:32px;outline:none;overflow:hidden;padding:0;width:32px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@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-child{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 xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%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 xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%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 xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%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 xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%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 xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%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 xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%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 xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-arrow-up .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 11.7071C4.68342 12.0976 5.31658 12.0976 5.70711 11.7071L9 8.41421L12.2929 11.7071C12.6834 12.0976 13.3166 12.0976 13.7071 11.7071C14.0976 11.3166 14.0976 10.6834 13.7071 10.2929L9.70711 6.29289C9.31658 5.90237 8.68342 5.90237 8.29289 6.29289L4.29289 10.2929C3.90237 10.6834 3.90237 11.3166 4.29289 11.7071Z' fill='%23333333'/%3E%3C/svg%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 fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.29289 6.29289C4.68342 5.90237 5.31658 5.90237 5.70711 6.29289L9 9.58579L12.2929 6.29289C12.6834 5.90237 13.3166 5.90237 13.7071 6.29289C14.0976 6.68342 14.0976 7.31658 13.7071 7.70711L9.70711 11.7071C9.31658 12.0976 8.68342 12.0976 8.29289 11.7071L4.29289 7.70711C3.90237 7.31658 3.90237 6.68342 4.29289 6.29289Z' fill='%23333333'/%3E%3C/svg%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 fill='%23333' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%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 fill='%23fff' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%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 fill='%23000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.0017 3.0017L4.0017 15.0017L10.0017 15.0017V12.0017H12.0017V15.0017H14.0017L14.0017 3.0017C14.0097 2.86829 13.9894 2.73469 13.9419 2.60973C13.8945 2.48477 13.8211 2.37129 13.7266 2.27678C13.6321 2.18228 13.5186 2.10889 13.3937 2.06147C13.2687 2.01405 13.1351 1.99368 13.0017 2.0017L5.0017 2.0017C4.86829 1.99368 4.73469 2.01405 4.60973 2.06147C4.48477 2.10889 4.37129 2.18228 4.27678 2.27678C4.18228 2.37129 4.10889 2.48477 4.06147 2.60973C4.01405 2.73469 3.99368 2.86829 4.0017 3.0017ZM8.0017 14.0017H6.0017V12.0017H8.0017V14.0017ZM8.0017 10.0017H6.0017L6.0017 8.0017H8.0017V10.0017ZM8.0017 6.0017L6.0017 6.0017V4.0017H8.0017V6.0017ZM12.0017 10.0017H10.0017V8.0017H12.0017V10.0017ZM12.0017 6.0017H10.0017V4.0017L12.0017 4.0017V6.0017Z' fill='%23333333'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}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 xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media(-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.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{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-left .mapboxgl-ctrl-attrib-button,.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{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top: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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%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 viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%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{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.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{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#eee}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.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{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";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%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.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{font-size:16px;font-weight:700;text-align:center}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#ccc;color:#000}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#ccc}.globe-page{position:relative;height:100vh;width:100%;overflow:hidden;background:linear-gradient(180deg,#0d1424,#152238,#0f1a2e)}.globe-back-btn{position:absolute;left:12px;top:12px;z-index:10;padding:.6rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffffeb;color:#163153;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.9rem;font-weight:500;box-shadow:0 4px 20px #00000026;transition:background .2s ease,box-shadow .2s ease}.globe-back-btn:hover{background:#fff;box-shadow:0 6px 24px #0003}.globe-error{position:absolute;left:12px;top:56px;z-index:10;max-width:520px;padding:.75rem 1rem;border-radius:14px;border:1px solid rgba(244,63,94,.35);background:#ffecf0f2;color:#9f1239;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:.9rem;box-shadow:0 8px 24px #9f123926}.globe-panel{position:absolute;right:12px;top:12px;z-index:10;width:min(420px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow-y:auto;border-radius:20px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(165deg,#fffffff5,#f8fcfff0 40%,#f0f8ffeb);box-shadow:0 24px 48px #114c8f38,0 0 0 1px #fff9 inset;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:1.25rem 1.2rem 1.35rem;color:#163458}.globe-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem;padding-bottom:.75rem;border-bottom:1px solid rgba(180,211,239,.5)}.globe-panel__title{margin:0;font-size:1.12rem;font-weight:800;letter-spacing:-.02em;color:#0f3d6b}.globe-panel__badge{display:inline-flex;align-items:center;border-radius:999px;padding:.28rem .65rem;font-size:.7rem;font-weight:700;letter-spacing:.04em;color:#0c5285;background:linear-gradient(135deg,#b7f7d8f2,#b5dcfff2);border:1px solid rgba(120,190,230,.6);box-shadow:0 2px 8px #0c52851f}.globe-panel__tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem}.globe-panel__tag{border-radius:999px;padding:.28rem .6rem;font-size:.72rem;font-weight:600;color:#1a548a;background:#ffffffd9;border:1px solid rgba(180,211,239,.7)}.globe-panel__section{border-radius:14px;border:1px solid rgba(189,214,238,.6);background:linear-gradient(155deg,#ffffffe6,#f5fbffd9);padding:.85rem .9rem;margin-bottom:.75rem;box-shadow:0 2px 12px #114c8f0f}.globe-panel__section:last-of-type{margin-bottom:.9rem}.globe-panel__section-title{margin:0 0 .4rem;font-size:.88rem;font-weight:800;color:#1b4775}.globe-panel__section p{margin:0;font-size:.82rem;line-height:1.5;color:#36597d}.globe-panel__section p+p{margin-top:.4rem}.globe-panel__legend{display:grid;gap:.35rem}.globe-panel__legend-item{display:grid;grid-template-columns:14px 1fr auto;gap:.6rem;align-items:center;border-radius:10px;padding:.35rem .5rem;background:#ffffffbf;border:1px solid rgba(194,218,240,.6);transition:background .15s ease}.globe-panel__legend-item:hover{background:#fffffff2}.globe-panel__legend-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 1px #ffffffe6,0 1px 3px #00000026;flex-shrink:0}.globe-panel__legend-label{font-size:.8rem;color:#234c77;font-weight:500}.globe-panel__legend-meaning{font-size:.75rem;color:#4f6f93;font-weight:600}.globe-popup .mapboxgl-popup-content{min-width:220px;max-width:320px;padding:0;border-radius:16px;border:1px solid rgba(255,255,255,.35);background:linear-gradient(165deg,#fffffffa,#f8fcfff5);box-shadow:0 20px 40px #114c8f47,0 0 0 1px #ffffffb3 inset;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overflow:hidden}.globe-popup .mapboxgl-popup-tip{border-top-color:#fffffff2}.globe-popup .mapboxgl-popup-close-button{font-size:20px;padding:6px 10px;color:#4a6b8a;opacity:.85}.globe-popup .mapboxgl-popup-close-button:hover{color:#163458;opacity:1}.globe-popup__inner{padding:1rem 1.1rem}.globe-popup__city{display:block;font-size:1.05rem;font-weight:700;color:#0f3d6b;margin-bottom:.75rem;padding-bottom:.6rem;border-bottom:1px solid rgba(180,211,239,.6);letter-spacing:-.01em}.globe-popup__row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.28rem 0;font-size:.82rem}.globe-popup__row:not(:last-child){border-bottom:1px solid rgba(194,218,240,.4)}.globe-popup__label{color:#4f6f93;font-weight:500}.globe-popup__value{font-weight:700;color:#163458;text-align:right}.globe-popup__value--band{display:inline-flex;align-items:center;gap:.35rem}.globe-popup__band-dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 1px #ffffffe6}.globe-popup__stale{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed rgba(244,63,94,.4);font-size:.75rem;color:#9f1239;font-style:italic}.new-landing-root{min-height:100vh;background-size:cover;background-position:center top;background-repeat:no-repeat;background-color:#dbe8ff;display:flex;flex-direction:column}.new-landing-nav{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem}.new-landing-logo{width:120px;height:auto;display:block}.new-landing-actions{display:flex;align-items:center;gap:.75rem}.new-landing-btn{border-radius:999px;border:none;padding:.55rem 1.4rem;font-size:.9rem;cursor:pointer;font-weight:500;font-family:DM Sans,system-ui,sans-serif;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.new-landing-btn--ghost{background:#ffffffb3;color:#234066;border:1px solid rgba(210,225,243,.9)}.new-landing-btn--primary{background:linear-gradient(135deg,#0874f8,#02b4ff);color:#fff;box-shadow:0 14px 26px #0d59c080}.new-landing-cta{display:flex;align-items:center;justify-content:flex-start;margin-top:.8rem;padding:.35rem;border-radius:999px;background:#ffffff57;border:1px solid rgba(223,234,249,.95);box-shadow:0 14px 40px #7190c629;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);width:fit-content}.new-landing-btn--cta{min-height:58px;padding:.9rem 2rem;font-size:1.02rem;font-weight:600;border-radius:999px}.new-landing-btn--cta:first-child{padding-inline:2.2rem}.new-landing-btn--cta:last-child{background:transparent;color:#3c5883;border:none;box-shadow:none;padding-inline:1.9rem 2.1rem}.new-landing-hero{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:4.75rem clamp(1.5rem,5vw,4rem) 0;gap:1.35rem;max-width:920px}.new-landing-headline{font-family:DM Sans,system-ui,sans-serif;font-size:clamp(2.7rem,5.4vw,4.55rem);font-weight:700;line-height:1.12;color:#22345d;letter-spacing:-.04em;max-width:860px;margin:0}.new-landing-headline--accent{color:#2c8df2}.new-landing-subtext{font-family:DM Sans,system-ui,sans-serif;font-size:clamp(1.08rem,1.75vw,1.42rem);font-weight:400;color:#425779;line-height:1.55;max-width:760px;margin:0}@media(min-width:1280px)and (min-aspect-ratio:16/9){.new-landing-root{background-size:100vw 100vh}}@media(max-width:1279px),(max-aspect-ratio:16/9){.new-landing-root{background-size:contain;background-position:center top}}@media(max-width:720px){.new-landing-hero{align-items:center;text-align:center;padding-top:3.5rem}.new-landing-cta{flex-direction:column;width:min(100%,420px);border-radius:28px}.new-landing-btn--cta,.new-landing-btn--cta:first-child,.new-landing-btn--cta:last-child{width:100%;padding-inline:1.5rem}}.feedback-page{min-height:100vh;background:linear-gradient(160deg,#eef4fd,#f7faff 60%,#e8f0fb);display:flex;flex-direction:column}.feedback-header{background:#ffffffbf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(210,225,243,.7);padding:0 2rem;height:64px;display:flex;align-items:center}.feedback-header-inner{width:100%;max-width:720px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.feedback-back{display:inline-flex;align-items:center;gap:.35rem;border:none;background:none;cursor:pointer;font-size:.9rem;font-weight:500;color:#4a5f7e;padding:.4rem .6rem;border-radius:8px;transition:color .15s ease,background .15s ease}.feedback-back:hover{color:#1a3152;background:#d2e1f380}.feedback-logo{height:28px}.feedback-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:3rem 1rem 4rem}.feedback-card{background:#fff;border-radius:20px;padding:2.5rem;width:100%;max-width:600px;box-shadow:0 24px 56px #285faa1f,0 0 0 1px #d7e4f5e6}.feedback-card-header{margin-bottom:2rem}.feedback-title{font-size:1.6rem;font-weight:700;color:#1a3152;margin:0 0 .4rem}.feedback-subtitle{font-size:.95rem;color:#4f6687;margin:0}.feedback-form{display:flex;flex-direction:column;gap:1.5rem}.feedback-field{display:flex;flex-direction:column;gap:.6rem}.feedback-label{font-size:.85rem;font-weight:600;color:#1a3152}.feedback-category-grid{display:flex;flex-wrap:wrap;gap:.5rem}.feedback-category-pill{border:1.5px solid rgba(210,225,243,.9);background:#f8fbffe6;border-radius:999px;padding:.45rem 1rem;font-size:.88rem;font-weight:500;color:#4a5f7e;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.feedback-category-pill:hover{border-color:#0f8cf4;color:#0f8cf4;background:#0f8cf40d}.feedback-category-pill--active{border-color:#0f8cf4;background:#0f8cf41a;color:#0a72cc;font-weight:600}.feedback-textarea{width:100%;border:1px solid rgba(210,224,244,.95);border-radius:12px;padding:.75rem 1rem;font-size:.95rem;color:#1a3152;background:#f8fbfffa;outline:none;resize:vertical;min-height:140px;font-family:inherit;line-height:1.55;transition:border-color .18s ease,box-shadow .18s ease;box-sizing:border-box}.feedback-textarea::placeholder{color:#8b9bb5}.feedback-textarea:focus{border-color:#0f8cf4;box-shadow:0 0 0 3px #0f8cf41f}.feedback-textarea:disabled{opacity:.7;cursor:wait}.feedback-char-count{font-size:.78rem;color:#8b9bb5;text-align:right}.feedback-error{font-size:.85rem;color:#d63a2c;background:#d63a2c12;border-radius:8px;padding:.55rem .8rem;margin:0}.feedback-submit{width:100%;padding-block:.75rem;font-size:.95rem}.feedback-submit:disabled{opacity:.75;cursor:not-allowed}.feedback-confirmation{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem 0;gap:1rem}.feedback-confirmation-icon{width:64px;height:64px;border-radius:50%;background:#0f8cf41a;display:flex;align-items:center;justify-content:center;color:#0f8cf4;margin-bottom:.5rem}.feedback-confirmation-title{font-size:1.4rem;font-weight:700;color:#1a3152;margin:0}.feedback-confirmation-body{font-size:.95rem;color:#4f6687;max-width:380px;margin:0;line-height:1.6}.feedback-confirmation-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;margin-top:.5rem}.feedback-btn{min-width:160px}.admin-page{min-height:100vh;background:linear-gradient(160deg,#eef4fd,#f7faff 60%,#e8f0fb);display:flex;flex-direction:column}.admin-header{background:#ffffffbf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(210,225,243,.7);padding:0 2rem;height:64px;display:flex;align-items:center}.admin-header-inner{width:100%;max-width:900px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.admin-back{display:inline-flex;align-items:center;gap:.35rem;border:none;background:none;cursor:pointer;font-size:.9rem;font-weight:500;color:#4a5f7e;padding:.4rem .6rem;border-radius:8px;transition:color .15s ease,background .15s ease}.admin-back:hover{color:#1a3152;background:#d2e1f380}.admin-logo{height:28px}.admin-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:3rem 1rem 4rem}.admin-dashboard{width:100%;max-width:900px}.admin-card{background:#fff;border-radius:20px;padding:2.5rem;width:100%;box-shadow:0 24px 56px #285faa1f,0 0 0 1px #d7e4f5e6}.admin-suggestion-form{display:flex;flex-direction:column;gap:1.2rem}.admin-suggestion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.admin-field{display:flex;flex-direction:column;gap:.4rem}.admin-field span{font-size:.82rem;font-weight:600;color:#4f6687}.admin-field input{width:100%;border:1.5px solid rgba(210,225,243,.95);border-radius:12px;background:#f8fbfff2;color:#1a3152;font-size:.92rem;padding:.72rem .85rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.admin-field input:focus{border-color:#0f8cf473;box-shadow:0 0 0 3px #0f8cf41f}.admin-suggestion-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.admin-primary-btn,.admin-secondary-btn{border-radius:12px;font-size:.9rem;font-weight:700;padding:.72rem 1rem;cursor:pointer;transition:transform .12s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}.admin-primary-btn{border:none;background:linear-gradient(135deg,#0d7ef5,#28a6ff);color:#fff;box-shadow:0 12px 24px #0d7ef53d}.admin-primary-btn:hover:not(:disabled){transform:translateY(-1px)}.admin-secondary-btn{border:1.5px solid rgba(210,225,243,.95);background:#fff;color:#35567f}.admin-secondary-btn:hover:not(:disabled){border-color:#0f8cf459;background:#f4f9fff2}.admin-primary-btn:disabled,.admin-secondary-btn:disabled{opacity:.65;cursor:default}.admin-suggestion-result{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.admin-suggestion-context{border:1.5px solid rgba(210,225,243,.9);border-radius:16px;background:#f8fbffeb;padding:1rem}.admin-suggestion-context h3{margin:0 0 .75rem;font-size:.95rem;color:#1a3152}.admin-suggestion-context__chips{display:flex;flex-wrap:wrap;gap:.55rem}.admin-suggestion-context__chips span{border-radius:999px;background:#fff;border:1px solid rgba(210,225,243,.95);color:#476381;font-size:.78rem;font-weight:600;padding:.35rem .65rem}.admin-card-header{margin-bottom:2rem}.admin-title{font-size:1.6rem;font-weight:700;color:#1a3152;margin:0 0 .4rem}.admin-subtitle{font-size:.95rem;color:#4f6687;margin:0}.admin-section-title{font-size:1rem;font-weight:600;color:#1a3152;margin:2rem 0 1rem;padding-top:1.5rem;border-top:1px solid rgba(210,225,243,.6)}.admin-section-title:first-of-type{border-top:none;padding-top:0;margin-top:0}.admin-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.admin-stats-grid--2col{grid-template-columns:repeat(2,1fr)}.admin-stat-card{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 1rem;border-radius:16px;border:1.5px solid rgba(210,225,243,.9);background:#f8fbffe6;transition:border-color .15s ease,box-shadow .15s ease}.admin-stat-card:hover{border-color:#0f8cf44d;box-shadow:0 4px 16px #0f8cf414}.admin-stat-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center}.admin-stat-icon--users{background:#0f8cf41a;color:#0f8cf4}.admin-stat-icon--online{background:#22c55e1a;color:#22c55e}.admin-stat-icon--subs{background:#a855f71a;color:#a855f7}.admin-stat-icon--trend{background:#f59e0b1a;color:#f59e0b}.admin-stat-icon--household{background:#06b6d41a;color:#06b6d4}.admin-stat-icon--session{background:#6366f11a;color:#6366f1}.admin-stat-icon--globe{background:#0f8cf41a;color:#0f8cf4}.admin-stat-icon--stale{background:#ef444414;color:#ef4444}.admin-stat-value{font-size:2rem;font-weight:700;color:#1a3152;line-height:1}.admin-stat-label{font-size:.85rem;font-weight:500;color:#4f6687}.admin-table-wrap{overflow-x:auto;border-radius:12px;border:1.5px solid rgba(210,225,243,.9)}.admin-table{width:100%;border-collapse:collapse;font-size:.88rem}.admin-table th{text-align:left;font-weight:600;color:#4f6687;padding:.7rem 1rem;background:#f8fbffe6;border-bottom:1px solid rgba(210,225,243,.8);white-space:nowrap}.admin-table td{padding:.6rem 1rem;color:#1a3152;border-bottom:1px solid rgba(210,225,243,.4)}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:#f8fbffb3}.admin-table-label{font-weight:500}.admin-table-val{text-align:center;font-variant-numeric:tabular-nums}.admin-table-val--good{color:#22c55e;font-weight:600}.admin-table-val--warn{color:#f59e0b;font-weight:600}.admin-table-time{font-size:.82rem;color:#4f6687;white-space:nowrap}.admin-table-empty{text-align:center;color:#4f6687;font-style:italic;padding:1.5rem 1rem}.admin-status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.35rem;vertical-align:middle}.admin-status-dot--active{background:#22c55e}.admin-status-dot--inactive{background:#94a3b8}.admin-badge{display:inline-block;font-size:.78rem;font-weight:600;padding:.15rem .55rem;border-radius:6px;text-transform:capitalize}.admin-badge--ok{background:#22c55e1f;color:#16a34a}.admin-badge--running{background:#0f8cf41f;color:#0f8cf4}.admin-badge--fail{background:#ef44441a;color:#dc2626}.admin-denied{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem 0;gap:1rem}.admin-denied-icon{width:64px;height:64px;border-radius:50%;background:#d63a2c14;display:flex;align-items:center;justify-content:center;color:#d63a2c;margin-bottom:.5rem}.admin-denied-title{font-size:1.4rem;font-weight:700;color:#1a3152;margin:0}.admin-denied-body{font-size:.95rem;color:#4f6687;max-width:380px;margin:0;line-height:1.6}.admin-denied-btn{margin-top:.5rem;min-width:180px}.admin-loading{text-align:center;padding:2rem;font-size:.95rem;color:#4f6687}.admin-error{font-size:.85rem;color:#d63a2c;background:#d63a2c12;border-radius:8px;padding:.55rem .8rem;margin:0}.admin-success{font-size:.85rem;color:#1d7a4f;background:#1d7a4f14;border-radius:8px;padding:.55rem .8rem;margin:0}.admin-empty{text-align:center;padding:2rem;font-size:.95rem;color:#4f6687;font-style:italic;margin:0}.admin-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#ef4444;color:#fff;font-size:.75rem;font-weight:700;margin-left:.5rem;vertical-align:middle}.admin-messages-list{display:flex;flex-direction:column;gap:0;border-radius:12px;border:1.5px solid rgba(210,225,243,.9);overflow:hidden}.admin-msg{border-bottom:1px solid rgba(210,225,243,.5)}.admin-msg:last-child{border-bottom:none}.admin-msg--unread{background:#0f8cf408}.admin-msg-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.85rem 1rem;border:none;background:none;cursor:pointer;text-align:left;font-size:.88rem;color:#1a3152;transition:background .12s ease}.admin-msg-header:hover{background:#d2e1f34d}.admin-msg-meta{display:flex;align-items:center;gap:.6rem;min-width:0}.admin-msg-dot{width:8px;height:8px;border-radius:50%;background:#0f8cf4;flex-shrink:0}.admin-msg-category{font-weight:600;font-size:.82rem;padding:.15rem .5rem;border-radius:6px;background:#6366f11a;color:#6366f1;white-space:nowrap}.admin-msg-from{color:#4f6687;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-msg-date{font-size:.8rem;color:#94a3b8;white-space:nowrap;margin-left:1rem}.admin-msg-body{padding:0 1rem 1rem;animation:admin-msg-slide .15s ease}@keyframes admin-msg-slide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.admin-msg-sender{font-size:.82rem;color:#4f6687;margin:0 0 .6rem}.admin-msg-text{font-size:.9rem;color:#1a3152;line-height:1.6;margin:0 0 1rem;white-space:pre-wrap;word-break:break-word}.admin-msg-actions{display:flex;justify-content:flex-end}.admin-msg-delete{font-size:.82rem;padding:.35rem .8rem;border:1px solid rgba(239,68,68,.3);border-radius:8px;background:none;color:#dc2626;cursor:pointer;font-weight:500;transition:background .12s ease,border-color .12s ease}.admin-msg-delete:hover{background:#ef444414;border-color:#ef444480}.admin-dashboard{display:flex;flex-direction:column;gap:2rem}@media(max-width:640px){.admin-stats-grid,.admin-stats-grid--2col,.admin-suggestion-grid{grid-template-columns:1fr}.admin-card{padding:1.5rem}.admin-table th,.admin-table td{padding:.5rem .6rem}}.settings-page{min-height:100vh;background:linear-gradient(160deg,#eef4fd,#f7faff 60%,#e8f0fb);display:flex;flex-direction:column}.settings-header{background:#ffffffbf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(210,225,243,.7);padding:0 2rem;height:64px;display:flex;align-items:center;flex-shrink:0}.settings-header-inner{width:100%;max-width:1000px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.settings-back{display:inline-flex;align-items:center;gap:.35rem;border:none;background:none;cursor:pointer;font-size:.9rem;font-weight:500;color:#4a5f7e;padding:.4rem .6rem;border-radius:8px;transition:color .15s ease,background .15s ease}.settings-back:hover{color:#1a3152;background:#d2e1f380}.settings-logo{height:28px}.settings-body{flex:1;display:flex;max-width:1000px;width:100%;margin:0 auto;padding:2.5rem 1.5rem 4rem;gap:2rem;align-items:flex-start}.settings-sidebar{width:200px;flex-shrink:0;background:#fff;border-radius:16px;padding:1.2rem .6rem;box-shadow:0 4px 16px #285faa14,0 0 0 1px #d7e4f5e6;position:sticky;top:1.5rem;display:flex;flex-direction:column;gap:.15rem}.settings-sidebar-heading{font-size:.72rem;font-weight:700;color:#8b9bb5;text-transform:uppercase;letter-spacing:.07em;padding:0 .7rem .6rem;margin:0}.settings-nav-item{background:none;border:none;cursor:pointer;text-align:left;padding:.55rem .9rem;border-radius:10px;font-size:.9rem;font-weight:500;color:#4a5f7e;transition:background .15s ease,color .15s ease;width:100%}.settings-nav-item:hover{background:#0f8cf412;color:#1a3152}.settings-nav-item--active{background:#0f8cf41a;color:#0a72cc;font-weight:600}.settings-content{flex:1;min-width:0;background:#fff;border-radius:20px;padding:2rem 2.5rem;box-shadow:0 8px 32px #285faa1a,0 0 0 1px #d7e4f5e6}.settings-section-title{font-size:1.25rem;font-weight:700;color:#1a3152;margin:0 0 .3rem}.settings-section-desc{font-size:.9rem;color:#4f6687;margin:0 0 1.8rem}.settings-form{display:flex;flex-direction:column;gap:1.2rem;max-width:440px}.settings-field{display:flex;flex-direction:column;gap:.4rem}.settings-label{font-size:.83rem;font-weight:600;color:#1a3152}.settings-input,.settings-select{border:1px solid rgba(210,224,244,.95);border-radius:10px;padding:.65rem .9rem;font-size:.93rem;color:#1a3152;background:#f8fbfffa;outline:none;font-family:inherit;transition:border-color .18s ease,box-shadow .18s ease;width:100%;box-sizing:border-box}.settings-input::placeholder{color:#8b9bb5}.settings-input:focus,.settings-select:focus{border-color:#0f8cf4;box-shadow:0 0 0 3px #0f8cf41f}.settings-input:disabled,.settings-select:disabled{opacity:.7;cursor:wait}.settings-input--readonly{background:#f0f5fccc;color:#6b84a3;cursor:default}.settings-input--readonly:focus{border-color:#d2e0f4f2;box-shadow:none}.settings-theme-toggle{display:inline-flex;border:1px solid rgba(210,224,244,.95);border-radius:10px;overflow:hidden;align-self:flex-start}.settings-theme-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.1rem;border:none;background:#f8fbfffa;color:#4a5f7e;font-size:.88rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease}.settings-theme-btn+.settings-theme-btn{border-left:1px solid rgba(210,224,244,.95)}.settings-theme-btn--active{background:#0f8cf41a;color:#0a72cc;font-weight:600}.settings-save-btn{align-self:flex-start;padding:.6rem 1.5rem;margin-top:.2rem}.settings-error{font-size:.85rem;color:#d63a2c;background:#d63a2c12;border-radius:8px;padding:.5rem .8rem;margin:0}.settings-success{font-size:.85rem;color:#1a7a3c;background:#1a7a3c12;border-radius:8px;padding:.5rem .8rem;margin:0}.settings-loading{font-size:.9rem;color:#8b9bb5;padding:1rem 0}.settings-empty{font-size:.9rem;color:#8b9bb5;margin:0}.settings-nav-item--danger{color:#c0392b}.settings-nav-item--danger:hover{background:#c0392b12;color:#c0392b}.settings-nav-item--danger.settings-nav-item--active{background:#c0392b1a;color:#c0392b}.settings-section-title--danger{color:#c0392b}.settings-delete-btn{background:#c0392b;color:#fff;border-radius:999px;padding:.6rem 1.4rem;font-size:.9rem;font-weight:500;border:none;cursor:pointer;transition:background .15s ease}.settings-delete-btn:hover:not(:disabled){background:#a93226}.settings-delete-btn:disabled{opacity:.65;cursor:wait}.settings-delete-confirm{display:flex;flex-direction:column;gap:1rem;max-width:440px}.settings-delete-warning{font-size:.9rem;color:#c0392b;background:#c0392b12;border:1px solid rgba(192,57,43,.2);border-radius:10px;padding:.75rem 1rem;margin:0}.settings-delete-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.farewell-page{min-height:100vh;background:linear-gradient(160deg,#eef4fd,#f7faff 60%,#e8f0fb);display:flex;flex-direction:column}.farewell-header{background:#ffffffbf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(210,225,243,.7);padding:0 2rem;height:64px;display:flex;align-items:center}.farewell-header-inner{width:100%;max-width:600px;margin:0 auto;display:flex;align-items:center;justify-content:center}.farewell-logo{height:28px}.farewell-main{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.farewell-card{background:#fff;border-radius:20px;padding:3rem 2.5rem;width:100%;max-width:500px;box-shadow:0 24px 56px #285faa1f,0 0 0 1px #d7e4f5e6;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem}.farewell-icon{width:64px;height:64px;border-radius:50%;background:#22c55e1a;display:flex;align-items:center;justify-content:center;color:#22c55e;margin-bottom:.5rem}.farewell-title{font-size:1.5rem;font-weight:700;color:#1a3152;margin:0}.farewell-body{font-size:.95rem;color:#4f6687;line-height:1.6;margin:0;max-width:400px}.farewell-btn{margin-top:.75rem;min-width:160px}@media(max-width:480px){.farewell-card{padding:2rem 1.5rem}}.wb-page{min-height:100vh;background:linear-gradient(160deg,#eef4fd,#f7faff 60%,#e8f0fb);display:flex;flex-direction:column}.wb-header{background:#ffffffbf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(210,225,243,.7);padding:0 2rem;height:64px;display:flex;align-items:center}.wb-header-inner{width:100%;max-width:600px;margin:0 auto;display:flex;align-items:center;justify-content:center}.wb-logo{height:28px}.wb-main{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.wb-card{background:#fff;border-radius:20px;padding:3rem 2.5rem;width:100%;max-width:500px;box-shadow:0 24px 56px #285faa1f,0 0 0 1px #d7e4f5e6;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem}.wb-icon{width:64px;height:64px;border-radius:50%;background:#22c55e1a;display:flex;align-items:center;justify-content:center;color:#22c55e;margin-bottom:.5rem}.wb-title{font-size:1.5rem;font-weight:700;color:#1a3152;margin:0}.wb-body{font-size:.95rem;color:#4f6687;line-height:1.6;margin:0;max-width:400px}.wb-actions{display:flex;flex-direction:column;gap:.6rem;width:100%;max-width:260px;margin-top:.5rem}.wb-btn{width:100%}@media(max-width:480px){.wb-card{padding:2rem 1.5rem}}
