main.map-home{position:relative;max-width:none;margin:0;padding:0;display:block;height:100dvh;overflow:hidden}.map-canvas{position:absolute;inset:0;overflow:hidden;background:var(--htr-root-50)}.map-canvas__terrain{position:absolute;inset:0;width:100%;height:100%}.map-terrain__base{fill:var(--htr-root-100);opacity:.55}.map-terrain__field{fill:var(--htr-leaf-600)}.map-terrain__field--a{opacity:.38}.map-terrain__field--b{opacity:.26}.map-terrain__field--c{opacity:.32}.map-terrain__field--d{opacity:.46}.map-terrain__river{fill:none;stroke:var(--htr-sky-200);stroke-width:11;stroke-linecap:round;opacity:.85}.map-terrain__road{fill:none;stroke:var(--htr-root-50);stroke-width:6;opacity:.8}.map-terrain__road--thin{stroke-width:5;opacity:.7}.map-canvas__brand{position:absolute;top:var(--space-4);left:var(--space-4);z-index:25;height:34px;display:inline-flex;align-items:center;padding:0 var(--space-4);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-surface) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-soft);color:var(--color-primary);font-weight:800;font-size:var(--text-16);letter-spacing:-.01em}.map-canvas__search{position:absolute;top:calc(var(--space-4) + 34px + var(--space-3));left:var(--space-4);right:var(--space-4);z-index:25;height:48px;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border:none;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-surface) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-soft);font-family:var(--font-data);font-size:var(--text-14);cursor:pointer;text-align:left}.map-canvas__search-icon{color:var(--color-primary);flex:none}.map-canvas__search-ph{flex:1;color:var(--color-text-muted)}.map-canvas{--map-chrome-top: calc(var(--space-4) + 34px + var(--space-3) + 48px + var(--space-4))}.map-canvas__fabs{position:absolute;left:var(--space-4);top:var(--map-chrome-top);z-index:24;display:flex;flex-direction:column;gap:var(--space-4)}.map-fab{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);border:none;background:transparent;padding:0;cursor:pointer}.map-fab__disc{width:52px;height:52px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-primary);display:flex;align-items:center;justify-content:center}.map-fab__disc--surface{background:var(--color-surface);color:var(--color-warning);box-shadow:var(--shadow-card)}.map-fab__caption{font-family:var(--font-data);font-size:var(--text-10);font-weight:600;color:var(--color-text);background:color-mix(in srgb,var(--color-surface) 78%,transparent);padding:1px 6px;border-radius:var(--radius-sm)}.map-canvas__loading{position:absolute;inset:0;background:var(--color-root-50, #f3f5f2)}.map-canvas__loading:has(.map-canvas__unavailable){display:grid;place-items:center}.map-canvas__unavailable{margin:0;padding:0 24px;text-align:center;color:var(--color-text-muted);font-size:14px;line-height:1.45}.home-sheet{position:absolute;left:0;right:0;bottom:0;z-index:26;display:flex;flex-direction:column;overflow:hidden;background:var(--color-surface);border-top:1px solid var(--color-hairline);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-pop);transition:height .28s cubic-bezier(.4,0,.2,1)}.home-sheet--dragging{transition:none}.home-sheet__grabber{flex:none;width:100%;padding:9px var(--space-4) 6px;border:none;background:transparent;cursor:grab;touch-action:none;display:flex;justify-content:center}.home-sheet--dragging .home-sheet__grabber{cursor:grabbing}.home-sheet__grabber-bar{width:44px;height:5px;border-radius:3px;background:var(--color-chevron)}.home-sheet__header{flex:none;padding:2px var(--space-4) var(--space-3);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.home-sheet__title-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.home-sheet__title{font-size:var(--text-16);font-weight:800;color:var(--color-text);line-height:var(--lh-snug);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-sheet__ws-pill{flex:0 1 auto;min-width:0;display:inline-flex;align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-1) 0 9px;border:none;border-radius:var(--radius-pill);background:var(--color-surface-sunk);color:var(--color-text-soft);font-family:var(--font-data);font-size:var(--text-12);font-weight:700;cursor:pointer}.home-sheet__ws-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-sheet__ws-chev{color:var(--color-primary);transform:rotate(90deg)}.home-sheet__title-door{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:100%;padding:0;border:none;background:transparent;font:inherit;color:inherit;cursor:pointer}.home-sheet__title-door svg{flex:none;color:var(--color-primary)}.home-sheet__title-door:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm, 4px)}.home-sheet__title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-sheet__body{flex:1;min-height:0;overflow-y:auto;padding:0 var(--space-4) var(--space-4)}.home-sheet__fade{position:absolute;left:0;right:0;bottom:0;height:30px;background:linear-gradient(180deg,transparent,var(--color-surface));pointer-events:none}.today-strip{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:11px 13px;margin:0 0 13px;border-radius:var(--radius-lg);text-align:left;font-family:inherit}button.today-strip{cursor:pointer}.today-strip--overdue{background:var(--status-offline-bg);border:1px solid color-mix(in srgb,var(--status-offline) 40%,var(--color-hairline))}.today-strip--today{background:color-mix(in srgb,var(--color-warning) 13%,var(--color-surface));border:1px solid color-mix(in srgb,var(--color-warning) 40%,var(--color-hairline))}.today-strip--calm{background:var(--color-surface);border:1px solid var(--color-hairline)}.today-strip__icon{width:36px;height:36px;flex:none;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.today-strip--overdue .today-strip__icon{background:var(--status-offline-bg);color:var(--status-offline)}.today-strip--today .today-strip__icon{background:color-mix(in srgb,var(--color-warning) 15%,var(--color-surface));color:var(--color-warning)}.today-strip--calm .today-strip__icon{background:var(--status-active-bg);color:var(--status-active)}.today-strip__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.today-strip__headline{font-size:var(--text-14);font-weight:800;line-height:1.25;color:var(--color-text)}.today-strip--overdue .today-strip__headline{color:var(--status-offline)}.today-strip--today .today-strip__headline{color:var(--color-warning)}.today-strip__headline--ok{color:var(--status-active)}.today-strip__sub{font-family:var(--font-data);font-size:var(--text-11);color:var(--color-text-muted)}.today-strip__chev{flex:none;color:var(--color-text-muted)}.wx-sheet.htr-sheet{background:var(--color-midnight-surface);color:#fff;border-radius:24px 24px 0 0;padding:14px 18px calc(20px + env(safe-area-inset-bottom))}.wx-sheet .htr-sheet__grabber{width:38px;background:#ffffff4d;margin:0 auto 16px}.wx-sheet p,.wx-sheet h2,.wx-sheet h3{color:inherit;margin:0}.wx-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wx-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:18px}.wx-head__text{min-width:0}.wx-place{font-family:var(--font-data);font-size:var(--text-12);opacity:.7}.wx-title{font-size:var(--text-20);font-weight:800;line-height:1.25}.wx-now{display:flex;align-items:center;gap:8px;flex:none}.wx-now .wx-glyph{color:var(--color-accent)}.wx-now__temp{font-family:var(--font-data);font-size:34px;font-weight:700;line-height:1}.wx-now__lo{font-family:var(--font-data);font-size:var(--text-14);opacity:.55;align-self:flex-end}.wx-slots{display:flex;gap:8px;margin:0 0 16px;padding:0;list-style:none}.wx-slot{flex:1;line-height:1.3;min-width:0;display:flex;flex-direction:column;align-items:center;background:#ffffff1a;border-radius:14px;padding:11px 6px;text-align:center}.wx-slot__label{font-family:var(--font-data);font-size:var(--text-11);opacity:.7;white-space:nowrap}.wx-slot .wx-glyph{margin:6px auto}.wx-slot__value{font-family:var(--font-data);font-size:var(--text-12);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.wx-glyph--sun{color:var(--htr-warning)}.wx-glyph--cloud{color:var(--color-accent)}.wx-glyph--rain{color:var(--htr-sky-200)}.wx-week{margin-bottom:16px}.wx-week__title{font-family:var(--font-data);font-size:var(--text-11);font-weight:400;opacity:.7;margin-bottom:6px;text-transform:none;letter-spacing:0}.wx-days{margin:0;padding:0;list-style:none}.wx-day{display:flex;align-items:center;gap:10px;padding:7px 0;margin:0;line-height:1.3;border-bottom:1px solid rgba(255,255,255,.08)}.wx-day__name{width:52px;flex:none;font-family:var(--font-data);font-size:var(--text-12);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wx-day .wx-glyph{flex:none}.wx-day__cond{flex:1;min-width:0;font-family:var(--font-data);font-size:var(--text-11);opacity:.7}.wx-day__rain{display:inline-flex;align-items:center;gap:3px;flex:none;font-family:var(--font-data);font-size:var(--text-11);color:var(--htr-sky-200)}.wx-day__temps{width:54px;flex:none;text-align:right;font-family:var(--font-data);font-size:var(--text-12);font-weight:700}.wx-day__lo{opacity:.55;font-weight:400}.wx-advice{display:flex;gap:10px;align-items:center;background:color-mix(in srgb,var(--color-accent) 14%,transparent);border:1px solid color-mix(in srgb,var(--color-accent) 30%,transparent);border-radius:14px;padding:13px;font-family:var(--font-data);font-size:13px;line-height:1.45}.wx-advice svg{flex:none;color:var(--color-accent)}.wx-note,.wx-source{font-family:var(--font-data);font-size:var(--text-11);margin-top:12px}.wx-sheet .wx-note{color:var(--color-accent)}.wx-sheet .wx-source{opacity:.6;margin-top:8px}.wx-state{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) 0 var(--space-3)}.wx-state__body{font-family:var(--font-data);font-size:var(--text-14);opacity:.85;padding:var(--space-2) 0 var(--space-3)}.wx-state .wx-state__body{padding:0}
