.tf-brand-mark{display:block;flex:none;object-fit:contain;color:var(--tf-on-accent)}.tf-brand-mark-natural{width:auto}:root[dir=rtl] .tf-rail{border-right:0;border-left:1px solid var(--tf-line)}:root[dir=rtl] .tf-rail-item.tf-rail-active:before{left:auto;right:-10px}:root[dir=rtl] .tf-fleet-dock{border-right:0;border-left:1px solid var(--tf-line)}:root[dir=rtl] .tf-inspector{border-left:0;border-right:1px solid var(--tf-line)}:root[dir=rtl] .tf-drawer-toggle-fleet{left:auto;right:8px}:root[dir=rtl] .tf-drawer-toggle-fleet.is-open{left:auto;right:calc(var(--tf-fleet-width) + 8px)}:root[dir=rtl] .tf-drawer-toggle-fleet svg{transform:rotate(90deg)}:root[dir=rtl] .tf-drawer-toggle-fleet.is-open svg{transform:rotate(-90deg)}:root[dir=rtl] .tf-drawer-toggle-detail{right:auto;left:8px}:root[dir=rtl] .tf-drawer-toggle-detail.is-open{right:auto;left:calc(var(--tf-detail-width) + 8px)}:root[dir=rtl] .tf-drawer-toggle-detail svg{transform:rotate(-90deg)}:root[dir=rtl] .tf-drawer-toggle-detail.is-open svg{transform:rotate(90deg)}:root[dir=rtl] .tf-ltr,:root[dir=rtl] time,:root[dir=rtl] input[type=date],:root[dir=rtl] input[type=datetime-local],:root[dir=rtl] input[type=number]{direction:ltr;unicode-bidi:isolate}:root[dir=rtl] .maplibregl-map{direction:ltr}.tf-locale-switcher{position:relative}.tf-locale-rail{display:flex}.tf-locale-inline{display:inline-flex}.tf-locale-bar{display:inline-flex;flex:none}.tf-locale-trigger.is-open{color:var(--tf-accent, #1d4ed8)}.tf-locale-inline .tf-locale-trigger{display:inline-flex;align-items:center;gap:6px;padding-block:6px;padding-inline:10px;border:1px solid var(--tf-line);border-radius:var(--tf-r, 10px);background:var(--tf-surface, #fff);color:var(--tf-text, #102a43);font:inherit;cursor:pointer}.tf-locale-inline .tf-locale-trigger:hover{border-color:var(--tf-accent, #1d4ed8)}.tf-locale-current{font-size:12px;font-weight:600;letter-spacing:.04em}.tf-locale-menu{position:absolute;z-index:40;display:flex;flex-direction:column;min-width:148px;padding:6px;border:1px solid var(--tf-line);border-radius:var(--tf-r, 10px);background:var(--tf-surface, #fff);box-shadow:var(--tf-shadow, 0 10px 30px rgba(16, 42, 67, .18))}.tf-locale-rail .tf-locale-menu{inset-block-start:0;inset-inline-start:calc(100% + 8px)}.tf-locale-inline .tf-locale-menu,.tf-locale-bar .tf-locale-menu{inset-block-start:calc(100% + 6px);inset-inline-end:0}.tf-locale-menu button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-block:8px;padding-inline:12px;border:0;border-radius:8px;background:transparent;color:var(--tf-text, #102a43);font:inherit;text-align:start;cursor:pointer}.tf-locale-menu button:hover{background:var(--tf-surface-muted, #f4f6f8)}.tf-locale-menu button.is-active{color:var(--tf-accent, #1d4ed8);font-weight:600}.tf-locale-menu button.is-active:after{content:"✓"}.tf-login-wrap{position:relative;display:grid;grid-template-columns:1.15fr .85fr;min-height:100%}.tf-login-locale{position:absolute;inset-block-start:18px;inset-inline-end:20px;z-index:6}.tf-hero{position:relative;overflow:hidden;padding:44px 56px;display:flex;flex-direction:column;background:radial-gradient(1000px 700px at 20% -10%,color-mix(in srgb,var(--tf-accent) 12%,transparent) 0,transparent 55%),linear-gradient(160deg,var(--tf-hero-bg),var(--tf-hero-bg-2) 70%)}.tf-hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--tf-line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--tf-line-soft) 1px,transparent 1px);background-size:46px 46px;opacity:.25;mask-image:radial-gradient(700px 520px at 30% 40%,#000 0,transparent 78%);-webkit-mask-image:radial-gradient(700px 520px at 30% 40%,#000 0,transparent 78%)}.tf-hero-route{position:absolute;left:-40px;bottom:40px;width:640px;height:360px;max-width:100%;opacity:.9;pointer-events:none}.tf-hero-brand{display:flex;align-items:center;gap:10px;position:relative;z-index:2}.tf-hero-brand span{font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--tf-hero-ink)}.tf-hero-brand .tf-brand-mark{color:var(--tf-accent)}.tf-hero-mid{margin-top:auto;position:relative;z-index:2}.tf-hero h1{font-size:clamp(28px,3.4vw,44px);font-weight:750;letter-spacing:-.03em;line-height:1.05;margin:0;max-width:14ch;color:var(--tf-hero-ink)}.tf-hero h1 em{font-style:normal;color:var(--tf-accent)}.tf-hero p{color:var(--tf-hero-ink-2);font-size:15px;max-width:44ch;margin:16px 0 0}.tf-trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px;position:relative;z-index:2}.tf-tchip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--tf-hero-ink) 5%,transparent);border:1px solid color-mix(in srgb,var(--tf-hero-ink) 16%,transparent);font-size:12.5px;color:var(--tf-hero-ink-2);font-weight:600}.tf-tchip svg{width:15px;height:15px;color:var(--tf-accent);flex:0 0 auto}.tf-signin{display:flex;align-items:center;justify-content:center;padding:40px;background:var(--tf-surface);border-left:1px solid var(--tf-line)}.tf-login-card{width:100%;max-width:392px;padding:28px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-secure-pill{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-accent);background:var(--tf-accent-weak);border:1px solid var(--tf-accent-deep);padding:6px 11px;border-radius:999px}.tf-secure-pill svg{width:13px;height:13px}.tf-login-card h2{font-size:24px;font-weight:750;letter-spacing:-.02em;margin:16px 0 6px;color:var(--tf-ink)}.tf-login-lede{color:var(--tf-ink-3);font-size:13.5px;margin:0 0 24px}.tf-login-field{margin-bottom:15px;display:flex;flex-direction:column;gap:7px}.tf-login-field label{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3);font-weight:700}.tf-input-wrap{display:flex;align-items:center;gap:9px;height:46px;padding:0 13px;background:var(--tf-surface-2);border:1px solid var(--tf-line);border-radius:11px;transition:.13s}.tf-input-wrap:focus-within{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-weak)}.tf-input-wrap.tf-input-bad{border-color:color-mix(in srgb,var(--tf-alert) 60%,var(--tf-line))}.tf-input-wrap svg{width:17px;height:17px;color:var(--tf-ink-3);flex:0 0 auto}.tf-input-wrap input{flex:1;min-width:0;background:transparent;border:0;color:var(--tf-ink);outline:none;font-size:14.5px;font-family:var(--tf-sans)}.tf-eye-toggle{border:0;background:transparent;color:var(--tf-ink-3);padding:4px;cursor:pointer;display:flex;flex:0 0 auto}.tf-eye-toggle:hover{color:var(--tf-ink-2)}.tf-login-error{display:flex;align-items:center;gap:8px;color:var(--tf-alert);font-size:12.5px;margin:9px 0 0}.tf-login-error svg{width:15px;height:15px;flex:0 0 auto}.tf-login-submit{width:100%;height:48px;border:0;border-radius:12px;background:linear-gradient(160deg,var(--tf-accent),var(--tf-accent-deep));color:var(--tf-on-accent);font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:20px;cursor:pointer}.tf-login-submit:hover:not(:disabled){filter:brightness(1.05)}.tf-login-submit:disabled{opacity:.85;cursor:default}.tf-login-submit svg{width:17px;height:17px}.tf-spinner{width:16px;height:16px;border:2px solid color-mix(in srgb,var(--tf-on-accent) 35%,transparent);border-top-color:var(--tf-on-accent);border-radius:50%;animation:tf-spin .7s linear infinite}@keyframes tf-spin{to{transform:rotate(360deg)}}.tf-login-foot{text-align:center;color:var(--tf-ink-3);font-size:12px;border-top:1px solid var(--tf-line-soft);padding-top:16px;margin-top:20px}@media (prefers-reduced-motion: reduce){.tf-spinner{animation:none}}@media (max-width: 880px){.tf-login-wrap{grid-template-columns:1fr}.tf-hero{min-height:280px;padding:32px}.tf-signin{border-left:0;border-top:1px solid var(--tf-line)}}.tf-rail{background:var(--tf-surface);width:100%;border-right:1px solid var(--tf-line);display:flex;flex-direction:column;align-items:flex-start;padding:10px 8px;gap:2px;height:100%;min-height:0;max-height:100dvh}.tf-rail-brand{display:flex;align-items:center;gap:9px;width:100%;height:40px;padding:0 10px;margin-bottom:4px}.tf-rail-brand-square{display:grid;place-items:center;min-width:26px;height:26px}.tf-rail-brand-name{font:800 13px var(--tf-sans);color:var(--tf-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tf-rail-scroller{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;width:100%}.tf-rail-scroller:after{content:"";position:absolute;left:0;right:0;bottom:0;height:28px;background:linear-gradient(to bottom,transparent,var(--tf-surface) 78%);pointer-events:none;opacity:0;transition:opacity .15s ease}.tf-rail-scroller.has-more:after{opacity:1}@media (prefers-reduced-motion: reduce){.tf-rail-scroller:after{transition:none}}.tf-rail-nav{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--tf-line-strong) transparent;overscroll-behavior:contain}.tf-rail-nav::-webkit-scrollbar{width:5px}.tf-rail-nav::-webkit-scrollbar-thumb{background:var(--tf-line-strong);border-radius:3px}.tf-rail-nav::-webkit-scrollbar-track{background:transparent}.tf-rail-section{display:flex;align-items:center;gap:5px;width:100%;margin:14px 0 4px;padding:4px 10px;border:0;border-radius:6px;background:transparent;font:700 10px var(--tf-sans);letter-spacing:.09em;text-transform:uppercase;color:var(--tf-ink-3);text-align:left;cursor:pointer;flex-shrink:0}.tf-rail-section:first-child{margin-top:2px}.tf-rail-section:hover{background:var(--tf-raised);color:var(--tf-ink-2)}.tf-rail-chevron{transition:transform .15s ease}.tf-rail-chevron.is-closed{transform:rotate(-90deg)}@media (prefers-reduced-motion: reduce){.tf-rail-chevron{transition:none}}.tf-rail-group{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;flex-shrink:0}.tf-rail-group[hidden]{display:none}.tf-rail-item{width:100%;height:36px;display:flex;align-items:center;gap:10px;padding:0 10px;border-radius:8px;border:0;background:transparent;color:var(--tf-nav-hue, var(--tf-ink-3));font:inherit;text-align:left;cursor:pointer;position:relative;flex-shrink:0;transition:background .15s,color .15s}.tf-rail-item svg{width:21px;height:21px;flex-shrink:0}.tf-rail-label{font:600 12.5px var(--tf-sans);color:var(--tf-ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-rail-item:hover:not(.tf-rail-active):not(:disabled){background:var(--tf-raised)}.tf-rail-item:hover:not(.tf-rail-active):not(:disabled) .tf-rail-label{color:var(--tf-ink)}.tf-rail-item.tf-rail-active{background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-rail-item.tf-rail-active:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;border-radius:0 3px 3px 0;background:var(--tf-accent)}.tf-rail-active .tf-rail-label{color:var(--tf-accent-strong);font-weight:700}.tf-rail-item:disabled{cursor:not-allowed;opacity:.55}.tf-rail.is-collapsed{align-items:center;padding-left:0;padding-right:0}.tf-rail.is-collapsed .tf-rail-brand{justify-content:center;padding:0}.tf-rail.is-collapsed .tf-rail-nav,.tf-rail.is-collapsed .tf-rail-group{align-items:center}.tf-rail.is-collapsed .tf-rail-item{width:44px;justify-content:center;padding:0;gap:0;margin:1px 0}.tf-rail.is-collapsed .tf-rail-item.tf-rail-active:before{left:-10px;border-radius:3px}.tf-bar{height:46px;flex:0 0 46px;display:flex;align-items:center;gap:14px;padding:0 16px;background:var(--tf-panel);border-bottom:1px solid var(--tf-line);box-shadow:var(--tf-shadow-sm)}.tf-bar-search{flex:1;max-width:520px;display:flex;align-items:center;gap:9px;height:32px;padding:0 12px;background:var(--tf-inset);border:1px solid var(--tf-line);border-radius:9px;color:var(--tf-ink-3)}.tf-bar-search svg{width:16px;height:16px;flex:none;color:var(--tf-ink-3)}.tf-bar-search input{flex:1;background:transparent;border:0;color:var(--tf-ink);font-size:12.5px;outline:none}.tf-bar-search input::placeholder{color:var(--tf-ink-3)}.tf-bar-grow{flex:1}.tf-bar-icon{position:relative;width:36px;height:36px;border-radius:9px;border:1px solid var(--tf-line);background:var(--tf-inset);color:var(--tf-ink-2);display:grid;place-items:center}.tf-bar-badge{position:absolute;inset-block-start:-5px;inset-inline-end:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--tf-alert, #d92d20);color:var(--tf-on-accent, #fff);font-size:10px;font-weight:700;line-height:16px;text-align:center}.tf-bar-icon:hover{color:var(--tf-ink);border-color:var(--tf-accent)}.tf-bar-icon-active{color:var(--tf-on-accent);background:var(--tf-accent);border-color:var(--tf-accent)}.tf-bar-icon-active:hover{color:var(--tf-on-accent);border-color:var(--tf-accent)}.tf-bar-icon svg{width:17px;height:17px}.tf-bar-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(150deg,var(--tf-accent-deep),var(--tf-accent));display:grid;place-items:center;color:var(--tf-on-accent);font-weight:700;font-size:13px;border:0;cursor:pointer}.tf-bar-account{position:relative;flex:none}.tf-bar-avatar:hover{box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-bar-avatar:focus-visible{outline:2px solid var(--tf-accent);outline-offset:3px}.tf-account-menu{position:absolute;z-index:80;top:calc(100% + 9px);right:0;width:220px;padding:8px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow);transform-origin:top right;animation:tf-account-in .16s cubic-bezier(.23,1,.32,1)}.tf-account-identity{display:grid;gap:2px;padding:8px 10px 10px;border-bottom:1px solid var(--tf-line-2)}.tf-account-identity strong{color:var(--tf-ink);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-account-identity span{color:var(--tf-ink-3);font-size:11px;text-transform:capitalize}.tf-account-menu button{width:100%;min-height:40px;margin-top:6px;padding:0 10px;display:flex;align-items:center;gap:9px;border:0;border-radius:8px;background:transparent;color:var(--tf-alert);font:inherit;font-size:12.5px;font-weight:650;text-align:left}.tf-account-menu button:hover{background:var(--tf-alert-tint)}.tf-account-menu button:focus-visible{outline:2px solid var(--tf-accent);outline-offset:1px}.tf-account-menu button:active{transform:scale(.98)}.tf-account-menu button:disabled{opacity:.55;cursor:wait}@keyframes tf-account-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.tf-account-menu{animation:none}}.tf-bar-drawer{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border:0;border-radius:8px;background:transparent;color:var(--tf-ink-2);cursor:pointer;transition:background .15s,color .15s}.tf-bar-drawer:hover{background:var(--tf-raised);color:var(--tf-ink)}.tf-bar-title{margin:0;flex-shrink:0;font:700 15px var(--tf-sans);color:var(--tf-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-bar-live-slot{display:flex;align-items:center}.tf-bar-live-slot:empty{display:none}.tf-staging-banner{padding:6px 16px;background:var(--tf-warn-bg);color:var(--tf-warn-ink);border-bottom:1px solid var(--tf-warn-line);font-size:13px;text-align:center}.tf-app{display:grid;--tf-rail-width: 232px;grid-template-columns:var(--tf-rail-width) 1fr;height:100dvh;min-height:640px;overflow:hidden;background:var(--tf-bg)}.tf-app-rail-collapsed{--tf-rail-width: 64px}.tf-main{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden}.tf-work{--tf-fleet-width: calc((100vw - var(--tf-rail-width)) / 2);--tf-fleet-height: 50%;--tf-detail-width: 360px;flex:1;display:grid;position:relative;grid-template-columns:var(--tf-fleet-width) minmax(0,1fr);min-height:0;overflow:hidden}.tf-work-inspector{grid-template-columns:var(--tf-fleet-width) minmax(0,1fr) var(--tf-detail-width)}.tf-work-fleet-collapsed{grid-template-columns:0 minmax(0,1fr)}.tf-work-inspector.tf-work-fleet-collapsed{grid-template-columns:0 minmax(0,1fr) var(--tf-detail-width)}.tf-work-inspector.tf-work-detail-collapsed{grid-template-columns:var(--tf-fleet-width) minmax(0,1fr) 0}.tf-work-inspector.tf-work-fleet-collapsed.tf-work-detail-collapsed{grid-template-columns:0 minmax(0,1fr) 0}.tf-fleet-dock{grid-row:1;grid-column:1;z-index:5;position:relative;align-self:start;height:var(--tf-fleet-height);background:var(--tf-panel);border-right:1px solid var(--tf-line);border-bottom:1px solid var(--tf-line);min-height:0;overflow:hidden;box-shadow:var(--tf-shadow-sm)}.tf-fleet-resize-x,.tf-fleet-resize-y{position:absolute;z-index:6;border:0;background:transparent;padding:0}.tf-fleet-resize-x{top:0;right:-4px;width:8px;height:100%;cursor:col-resize}.tf-fleet-resize-y{left:0;bottom:-4px;width:100%;height:8px;cursor:row-resize}.tf-fleet-resize-x:focus-visible,.tf-fleet-resize-y:focus-visible{outline:2px solid var(--tf-accent);outline-offset:-1px;background:color-mix(in srgb,var(--tf-accent) 18%,transparent)}.tf-map{grid-row:1;grid-column:1 / 3;z-index:0;position:relative;background:var(--tf-inset);min-height:0;overflow:hidden}.tf-work-video{--tf-video-width: calc((100vw - var(--tf-rail-width)) / 2);grid-template-columns:var(--tf-video-width) minmax(0,var(--tf-fleet-width)) minmax(0,1fr)}.tf-work-video.tf-work-inspector{--tf-video-width: calc((100vw - var(--tf-rail-width) - var(--tf-detail-width)) / 2);grid-template-columns:var(--tf-video-width) minmax(0,var(--tf-fleet-width)) minmax(0,1fr) var(--tf-detail-width)}.tf-work-video .tf-live-wall{grid-column:1}.tf-work-video .tf-map{grid-column:2 / 4}.tf-work-video.tf-work-inspector .tf-inspector{grid-column:4}.tf-work-video .tf-fleet-dock{grid-column:1 / 4;justify-self:start;width:var(--tf-fleet-width);max-width:100%;z-index:7}.tf-work-video:not(:has(.tf-live-wall)),.tf-work-video.tf-work-inspector:not(:has(.tf-live-wall)){--tf-video-width: 0px}.tf-work-inspector:not(.tf-work-detail-collapsed) .tf-evidence{inset-inline-end:calc(var(--tf-detail-width) + 12px)}.tf-inspector{grid-row:1;grid-column:3;z-index:5;background:var(--tf-panel);border-left:1px solid var(--tf-line);min-height:0;overflow:hidden;box-shadow:var(--tf-shadow-sm)}.tf-drawer-toggle{position:absolute;top:12px;z-index:22;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);box-shadow:var(--tf-shadow-sm);cursor:pointer}.tf-drawer-toggle:hover{color:var(--tf-accent-strong);border-color:var(--tf-accent)}.tf-drawer-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--tf-accent) 28%,transparent);outline-offset:2px}.tf-drawer-toggle:active{transform:scale(.97)}.tf-drawer-toggle-fleet{left:8px}.tf-drawer-toggle-fleet.is-open{left:calc(var(--tf-fleet-width) + 8px)}.tf-drawer-toggle-fleet svg{transform:rotate(-90deg)}.tf-drawer-toggle-fleet.is-open svg{transform:rotate(90deg)}.tf-drawer-toggle-detail{right:8px}.tf-drawer-toggle-detail{top:64px}.tf-drawer-toggle-detail.is-open{right:calc(var(--tf-detail-width) + 8px)}.tf-drawer-toggle-detail svg{transform:rotate(90deg)}.tf-drawer-toggle-detail.is-open svg{transform:rotate(-90deg)}.tf-shell-placeholder{height:100%;display:grid;place-items:center;color:var(--tf-ink-3);font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;font-weight:700}.tf-toasts{position:fixed;inset-block-end:16px;inset-inline-end:16px;z-index:60;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100vw - 32px));pointer-events:none}.tf-toasts>*{pointer-events:auto}.tf-toast{background:var(--tf-surface);border:1px solid var(--tf-line);border-inline-start:3px solid var(--tf-accent);border-radius:var(--tf-r-md, 12px);box-shadow:var(--tf-shadow);padding:10px 12px;font-family:var(--tf-sans)}.tf-toast-head{display:flex;align-items:flex-start;gap:8px}.tf-toast-head h4{margin:0;flex:1;font-size:13px;font-weight:600;color:var(--tf-ink);line-height:1.35}.tf-toast-head button{border:0;background:none;cursor:pointer;font-size:16px;line-height:1;padding:2px 4px;color:var(--tf-ink-3);border-radius:var(--tf-r-sm, 6px)}.tf-toast-head button:hover{color:var(--tf-ink);background:var(--tf-surface-2)}.tf-toast-head button:focus-visible{outline:2px solid var(--tf-focus, var(--tf-accent))}.tf-toast-body{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--tf-ink-2);white-space:pre-line}.tf-toast-meta{margin:6px 0 0;font-size:11px;color:var(--tf-ink-3);font-variant-numeric:tabular-nums}.tf-toast-offline{margin:0;padding:8px 10px;font-family:var(--tf-sans);font-size:11.5px;line-height:1.45;color:var(--tf-warn-ink);background:var(--tf-warn-bg);border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm, 8px)}.tf-toast-more{font-family:var(--tf-sans);font-size:11.5px;padding:6px 10px;cursor:pointer;color:var(--tf-ink-2);background:var(--tf-surface-2);border:1px solid var(--tf-line);border-radius:var(--tf-r-sm, 8px)}.tf-toast-more:hover{background:var(--tf-surface-3);color:var(--tf-ink)}@media (prefers-reduced-motion: no-preference){.tf-toast{animation:tf-toast-in .14s ease-out}@keyframes tf-toast-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}}.tf-ribbon{display:block;flex:0 0 auto;padding:7px 8px;border-bottom:1px solid var(--tf-line);background:var(--tf-panel)}.tf-ribbon-grid{display:grid;grid-template-columns:repeat(6,minmax(82px,1fr));gap:5px;min-height:45px;overflow-x:auto}.tf-ribbon-cell{--tf-ribbon-status: var(--tf-ink-2);--tf-ribbon-tint: var(--tf-surface-2);position:relative;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:5px 8px 5px 11px;border:1px solid color-mix(in srgb,var(--tf-ribbon-status) 22%,var(--tf-line));border-radius:var(--tf-r-sm);background:color-mix(in srgb,var(--tf-ribbon-status) 9%,var(--tf-raised));color:var(--tf-ink);cursor:pointer;transition:border-color .15s,background-color .15s,color .15s}.tf-ribbon-cell:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;background:var(--tf-ribbon-status)}.tf-ribbon-cell:hover:not(:disabled){border-color:var(--tf-ribbon-status);background:color-mix(in srgb,var(--tf-ribbon-status) 16%,var(--tf-raised))}.tf-ribbon-cell:disabled{cursor:default}.tf-ribbon-cell-active{border-color:var(--tf-ribbon-status);background:color-mix(in srgb,var(--tf-ribbon-status) 20%,var(--tf-raised));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tf-ribbon-status) 30%,transparent)}.tf-ribbon-cell-active .tf-ribbon-count{color:var(--tf-ribbon-status)}.tf-ribbon-moving{--tf-ribbon-status: var(--tf-status-moving-ink);--tf-ribbon-tint: var(--tf-status-moving-tint)}.tf-ribbon-idle{--tf-ribbon-status: var(--tf-status-idle-ink);--tf-ribbon-tint: var(--tf-status-idle-tint)}.tf-ribbon-stopped{--tf-ribbon-status: var(--tf-status-stopped-ink);--tf-ribbon-tint: var(--tf-status-stopped-tint)}.tf-ribbon-inactive{--tf-ribbon-status: var(--tf-status-inactive-ink);--tf-ribbon-tint: var(--tf-status-inactive-tint)}.tf-ribbon-nodata{--tf-ribbon-status: var(--tf-status-nodata-ink);--tf-ribbon-tint: var(--tf-status-nodata-tint)}.tf-ribbon-total{--tf-ribbon-status: var(--tf-accent-strong);--tf-ribbon-tint: var(--tf-accent-tint);color:var(--tf-ink-2);background:var(--tf-surface)}.tf-ribbon-count{display:block;min-width:3ch;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1;color:var(--tf-ribbon-status)}.tf-ribbon-cell-loading .tf-ribbon-count{display:inline-block;width:2.2em;height:1em;border-radius:4px;background:var(--tf-line-soft);animation:tf-ribbon-pulse 1.1s ease-in-out infinite}@keyframes tf-ribbon-pulse{0%,to{opacity:.5}50%{opacity:1}}.tf-ribbon-label{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:var(--tf-ink-3);text-transform:uppercase;letter-spacing:.04em}.tf-ribbon-label i{width:6px;height:6px;flex:0 0 6px;border-radius:1.5px;background:var(--tf-ribbon-status)}.tf-ribbon-total .tf-ribbon-label i{background:transparent;box-shadow:inset 0 0 0 2px var(--tf-ribbon-tint)}.tf-ribbon-alarm{display:flex;align-items:center;gap:6px;min-height:20px;padding:0 8px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-alert);color:var(--tf-alert);font-size:12.5px;font-weight:600;white-space:nowrap}.tf-ribbon-alarm-dot{width:7px;height:7px;border-radius:50%;background:var(--tf-alert)}.tf-ribbon-message{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:20px;padding:0;font-size:10.5px;color:var(--tf-ink-2)}.tf-ribbon-message button{border:0;background:transparent;color:var(--tf-accent);font:inherit;font-weight:700}.tf-ribbon-meta{min-height:20px;margin-top:6px;overflow:hidden}.tf-ribbon-meta>span{display:block;height:20px}.tf-state{display:flex;align-items:center;gap:8px;padding:12px 14px;font-size:12.5px;color:var(--tf-ink-2)}.tf-state-text{flex:1;min-width:0}.tf-state-hint{display:block;margin-top:2px;color:var(--tf-ink-3);font-size:11.5px}.tf-state-spinner{flex:0 0 auto;width:14px;height:14px;border-radius:50%;border:2px solid var(--tf-line);border-top-color:var(--tf-accent);animation:tf-state-spin .8s linear infinite}@keyframes tf-state-spin{to{transform:rotate(360deg)}}.tf-state-empty{display:grid;align-content:center;align-items:start;gap:4px;color:var(--tf-ink-3)}.tf-state-empty .tf-state-text{width:100%;color:var(--tf-ink-2);font-weight:650;line-height:1.35;overflow-wrap:anywhere}.tf-state-empty .tf-state-hint{width:100%;margin-top:0;line-height:1.45;overflow-wrap:anywhere}.tf-state-unauthorized .tf-state-icon{flex:0 0 auto;width:16px;height:16px;color:var(--tf-ink-3)}.tf-state-error{color:var(--tf-alert)}.tf-state-retry{flex:0 0 auto;padding:4px 10px;border:1px solid var(--tf-alert);border-radius:var(--tf-r-sm);background:transparent;color:var(--tf-alert);font-size:11.5px;font-weight:600;cursor:pointer}.tf-state-retry:hover{background:var(--tf-alert);color:var(--tf-on-accent)}.tf-state-stale{padding:6px 12px;border-bottom:1px solid var(--tf-line);background:var(--tf-raised);color:var(--tf-idle);font-size:11.5px}.tf-state-stale .tf-state-dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--tf-idle)}.tf-state-truncated{padding:6px 12px;border-top:1px solid var(--tf-line);background:var(--tf-raised);color:var(--tf-ink-2);font-size:11.5px}@media (prefers-reduced-motion: reduce){.tf-state-spinner{animation:none}}.tf-playback{display:flex;flex-direction:column;min-height:0}.tf-playback-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;padding:8px;border-bottom:1px solid var(--tf-line)}.tf-playback-controls label{display:flex;flex-direction:column;gap:2px;font:700 9px var(--tf-sans);color:var(--tf-ink-3);text-transform:uppercase;letter-spacing:.04em}.tf-playback-controls label small{font:400 9px var(--tf-sans);text-transform:none;letter-spacing:0;color:var(--tf-ink-3);opacity:.75}.tf-playback-controls select,.tf-playback-controls input{height:26px;padding:0 6px;border:1px solid var(--tf-line);border-radius:6px;background:var(--tf-surface);color:var(--tf-ink);font:500 11px var(--tf-sans)}.tf-playback-controls button{height:26px;padding:0 10px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--tf-line);border-radius:999px;background:transparent;color:var(--tf-ink-2);font:700 10px var(--tf-sans);cursor:pointer}.tf-playback-controls button:disabled{opacity:.5;cursor:not-allowed}.tf-playback-go{border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-playback-stop{border-color:var(--tf-bad);color:var(--tf-bad-ink)}.tf-playback-frame{position:relative;flex:1;min-height:220px;display:grid;place-items:center;background:#000;overflow:hidden}.tf-playback-frame video{width:100%;height:100%;object-fit:contain}.tf-playback-frame video.is-hidden{display:none}.tf-playback-status{display:flex;align-items:center;gap:6px;padding:12px;color:var(--tf-ink-3);font:500 11px var(--tf-sans);text-align:center}.tf-playback-status.is-error{color:#f87171}.tf-playback-rec.is-on{background:var(--tf-alert-tint);border-color:var(--tf-alert);color:var(--tf-bad-ink);font-weight:700}.tf-playback-rec.is-on:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--tf-bad-ink);animation:tf-rec-pulse 1.6s ease-in-out infinite}@keyframes tf-rec-pulse{50%{opacity:.25}}@media (prefers-reduced-motion: reduce){.tf-playback-rec.is-on:before{animation:none}}.tf-playback-download{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:6px 12px;border-radius:var(--tf-r-sm);text-decoration:none;background:var(--tf-accent-tint);border:1px solid var(--tf-accent);color:var(--tf-accent-ink);font:700 12px var(--tf-sans)}.tf-playback-download:hover{background:var(--tf-accent);color:#fff}.tf-playback-seek{display:flex;align-items:center;gap:8px;flex:1;min-width:180px}.tf-playback-seek input[type=range]{flex:1;min-width:0;accent-color:var(--tf-accent)}.tf-playback-clock{font:500 11px var(--tf-mono);font-variant-numeric:tabular-nums;color:var(--tf-ink-2);white-space:nowrap}.tf-playback-vol{width:78px;accent-color:var(--tf-accent)}.tf-live-wall{grid-row:1;z-index:6;display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;background:var(--tf-panel);border-left:1px solid var(--tf-line);box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-live-wall-head{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--tf-line);background:var(--tf-surface)}.tf-live-wall-title{display:inline-flex;align-items:center;gap:6px;margin-right:auto;color:var(--tf-ink);font-size:12px;font-weight:650}.tf-live-wall-layouts{display:flex;gap:2px;padding:2px;border-radius:8px;background:var(--tf-surface-2)}.tf-live-wall-layouts button{min-width:26px;height:24px;border:0;border-radius:6px;background:transparent;color:var(--tf-ink-3);font:700 11px var(--tf-sans);cursor:pointer}.tf-live-wall-layouts button[aria-pressed=true]{background:var(--tf-surface);color:var(--tf-accent-strong);box-shadow:var(--tf-shadow-sm)}.tf-live-wall-quality{height:24px;padding:0 9px;border:1px solid var(--tf-line);border-radius:999px;background:transparent;color:var(--tf-ink-3);font:700 10px var(--tf-sans);cursor:pointer}.tf-live-wall-quality[aria-pressed=true]{border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-live-wall-quality:disabled{opacity:.5;cursor:not-allowed}.tf-live-wall-quality.is-warning{border-color:var(--tf-warn, #b45309);color:var(--tf-warn, #b45309)}.tf-live-wall-power{height:24px;padding:0 9px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--tf-line);border-radius:999px;background:transparent;color:var(--tf-ink-3);font:700 10px var(--tf-sans);cursor:pointer}.tf-live-wall-power[aria-pressed=false]{border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-live-wall-close{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--tf-line);border-radius:6px;background:transparent;color:var(--tf-ink-3);cursor:pointer}.tf-live-wall-grid{display:grid;gap:4px;padding:4px;min-height:0;overflow:hidden}.tf-live-wall-grid.is-1{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.tf-live-wall-grid.is-2{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr))}.tf-live-wall-grid.is-4{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.tf-live-wall-grid.is-6{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.tf-live-ch{display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;border-radius:var(--tf-r-sm);background:#0b0f14;overflow:hidden}.tf-live-ch-frame{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden}.tf-live-ch-frame video{width:100%;height:100%;object-fit:contain;background:#0b0f14}.tf-live-ch-frame video.is-hidden{display:none}.tf-live-ch-play{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-live-ch-status{display:grid;place-items:center;gap:5px;padding:10px;color:#cbd5e1;font-size:11px;text-align:center}.tf-live-ch-status.is-error{color:#fca5a5}.tf-live-ch-hint{max-width:26ch;color:var(--tf-warn);font-weight:600;line-height:1.35}.tf-live-ch-status button{margin-top:4px;padding:3px 9px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font:700 10px var(--tf-sans);cursor:pointer}.tf-live-ch-bar{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:3px 7px;background:#ffffff0f;color:#e2e8f0;font-size:10px}.tf-live-ch-name{font-weight:700;letter-spacing:.02em}.tf-live-ch-close{border:0;background:transparent;color:#94a3b8;font:700 10px var(--tf-sans);cursor:pointer}.tf-live-ch-close:hover{color:#e2e8f0}@media (max-width: 1100px){.tf-live-wall-grid.is-4,.tf-live-wall-grid.is-6{grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(0,1fr)}}.tf-open-video-wall{display:inline-flex;align-items:center;gap:7px;width:100%;justify-content:center;min-height:36px;margin-top:10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);font:650 12px var(--tf-sans);cursor:pointer}.tf-open-video-wall:hover{border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-open-video-wall[aria-pressed=true]{border-color:var(--tf-accent);background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-live-ch-mute{width:22px;height:22px;display:grid;place-items:center;margin-left:auto;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--tf-ink-3);cursor:pointer}.tf-live-ch-mute[aria-pressed=true]{color:var(--tf-accent-strong);border-color:var(--tf-accent)}.tf-tree{overflow-y:auto;padding:6px 4px;border-bottom:1px solid var(--tf-line);flex:0 0 auto;max-height:40%}.tf-tree-node{display:flex;flex-direction:column}.tf-tree-row{display:flex;align-items:center;gap:2px;border-radius:var(--tf-r-sm)}.tf-tree-row-selected{background:var(--tf-accent-weak)}.tf-tree-toggle,.tf-tree-toggle-spacer{flex:0 0 auto;width:20px;height:24px;display:grid;place-items:center}.tf-tree-toggle{background:none;border:none;color:var(--tf-ink-3);cursor:pointer;font-size:10px;padding:0}.tf-tree-toggle:hover{color:var(--tf-ink)}.tf-tree-label{flex:1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding-block:4px;padding-inline:0 8px;background:none;border:none;color:var(--tf-ink);font-size:12.5px;text-align:start;cursor:pointer}.tf-tree-row-selected .tf-tree-label{color:var(--tf-accent)}.tf-tree-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-tree-count{flex:0 0 auto;color:var(--tf-ink-3);font-size:11px;font-variant-numeric:tabular-nums}.tf-tree-children{padding-inline-start:20px}.tf-tree-message{padding:6px 10px;font-size:11.5px;color:var(--tf-ink-3)}.tf-vlist{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column}.tf-vlist-scroll-plane{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable both-edges}.tf-vlist-compact .tf-vlist-row,.tf-vlist-compact .tf-vlist-footer{min-width:820px}.tf-vlist-table .tf-vlist-table-head,.tf-vlist-table .tf-vlist-row,.tf-vlist-table .tf-vlist-footer{min-width:760px}.tf-vlist-visibility{position:sticky;top:0;z-index:4;display:grid;grid-template-columns:minmax(62px,1fr) auto auto auto auto auto auto auto auto auto;align-items:center;gap:4px;padding:6px 8px;border-bottom:1px solid var(--tf-line);background:color-mix(in srgb,var(--tf-surface) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tf-vlist-visibility>div{display:grid;min-width:0}.tf-vlist-visibility strong{font-size:11px;font-variant-numeric:tabular-nums}.tf-vlist-visibility span{overflow:hidden;color:var(--tf-ink-3);font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.tf-vlist-visibility button{min-height:30px;padding:0 7px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface);color:var(--tf-ink-2);font:700 9px var(--tf-sans);cursor:pointer}.tf-vlist-visibility button:hover:not(:disabled){border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-vlist-visibility button:focus-visible{outline:2px solid var(--tf-focus);outline-offset:2px}.tf-vlist-visibility button:disabled{cursor:not-allowed;opacity:.45}.tf-vlist-visibility .tf-vlist-fit{display:inline-flex;align-items:center;gap:3px}.tf-vlist-fields,.tf-vlist-group-filter,.tf-vlist-export{position:relative}.tf-vlist-fields summary,.tf-vlist-group-filter summary,.tf-vlist-export summary{min-height:30px;display:flex;align-items:center;justify-content:center;gap:4px;padding:0 7px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface);color:var(--tf-ink-2);font-size:9px;font-weight:700;cursor:pointer;list-style:none;white-space:nowrap}.tf-vlist-fields summary::-webkit-details-marker,.tf-vlist-group-filter summary::-webkit-details-marker,.tf-vlist-export summary::-webkit-details-marker{display:none}.tf-vlist-fields summary:focus-visible,.tf-vlist-group-filter summary:focus-visible,.tf-vlist-export summary:focus-visible{outline:2px solid var(--tf-focus);outline-offset:2px}.tf-vlist-fields summary b{min-width:16px;height:16px;display:grid;place-items:center;border-radius:99px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font-size:8px}.tf-vlist-field-menu,.tf-vlist-group-menu,.tf-vlist-export-menu{position:absolute;z-index:8;top:34px;width:320px;max-width:min(82vw,320px);max-height:min(62vh,520px);overflow:auto;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-vlist-group-menu{left:0;overflow:hidden}.tf-vlist-group-menu .tf-tree{max-height:min(52vh,420px);padding:8px;border-bottom:0}.tf-vlist-field-menu{left:50%;padding:10px;transform:translate(-50%)}.tf-vlist-field-menu fieldset{display:grid;grid-template-columns:1fr 1fr;gap:2px 8px;margin:0 0 9px;padding:7px 0 0;border:0;border-top:1px solid var(--tf-line-2)}.tf-vlist-field-menu fieldset:first-child{padding-top:0;border-top:0}.tf-vlist-field-menu legend{padding:0 4px;color:var(--tf-ink-3);font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.tf-vlist-field-menu label{min-height:30px;display:flex;align-items:center;gap:6px;color:var(--tf-ink-2);font-size:9px;cursor:pointer}.tf-vlist-field-menu p{margin:2px 0 0;color:var(--tf-ink-3);font-size:8px;line-height:1.35}.tf-vlist-export-menu{right:0;left:auto;width:150px;padding:6px;display:grid;gap:3px}.tf-vlist-export-menu button{min-height:30px;padding:0 8px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface);color:var(--tf-ink-2);font:700 9px var(--tf-sans);text-align:left;cursor:pointer}.tf-vlist-export-menu button:hover:not(:disabled){border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-vlist-export-menu button:disabled{cursor:not-allowed;opacity:.6}.tf-vlist-export-error{margin:2px 0 0;color:var(--tf-alert);font-size:8px;line-height:1.35}.tf-vlist-field-menu{max-height:clamp(180px,calc(50dvh - 145px),330px);overflow-y:scroll;overscroll-behavior:contain;scrollbar-gutter:stable}.tf-vlist-select-all{min-height:30px;display:flex;align-items:center;gap:4px;padding:0 6px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface);color:var(--tf-ink-2);font-size:9px;font-weight:700;cursor:pointer}.tf-vlist-select-all input{position:absolute;opacity:0;pointer-events:none}.tf-vlist-select-all span{width:13px;height:13px;border:1px solid var(--tf-line);border-radius:3px;background:var(--tf-surface-2)}.tf-vlist-select-all input:checked+span{border-color:var(--tf-accent);background:var(--tf-accent);box-shadow:inset 0 0 0 3px var(--tf-surface)}.tf-vlist-select-all input:focus-visible+span{outline:2px solid var(--tf-focus);outline-offset:2px}.tf-vlist-select-all b{font-size:9px}.tf-vlist-view-mode{min-width:42px!important;padding:0 6px!important;background:var(--tf-ink)!important;color:var(--tf-surface)!important}.tf-vlist-refresh{width:30px;padding:0!important;display:grid;place-items:center}.tf-vlist-table-head{position:sticky;top:43px;z-index:3;display:grid;grid-template-columns:28px minmax(100px,1fr) minmax(115px,1.25fr) 48px 34px 38px 45px 45px;gap:5px;padding:5px 9px;border-bottom:1px solid var(--tf-line);background:var(--tf-surface-3);color:var(--tf-ink-2);font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.tf-vlist-table-head span{display:inline-flex;align-items:center;justify-content:center;gap:3px}.tf-vlist-table-head span.tf-vlist-table-head-left{justify-content:flex-start;text-align:left}.tf-vlist-table-head svg{flex:0 0 auto;opacity:.85}.tf-vlist-table-head{top:0}.tf-vlist-table .tf-vlist-row{min-height:48px;padding:5px 8px;align-items:center}.tf-vlist-table .tf-vlist-visible{margin-top:0}.tf-vlist-table-panel{grid-template-columns:minmax(100px,1fr) minmax(115px,1.25fr) 48px 34px 38px 45px 45px;align-items:center;gap:5px}.tf-vlist-table-panel>span{min-width:0}.tf-vlist-table-identity{display:grid;gap:2px}.tf-vlist-table-identity>span{display:flex;align-items:center;gap:6px;min-width:0}.tf-vlist-table-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.tf-vlist-table-identity small{overflow:hidden;color:var(--tf-ink-3);font-size:7.5px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.tf-vlist-table-location{display:-webkit-box;overflow:hidden;color:var(--tf-ink-2);font-size:8.5px;line-height:1.12;text-align:left;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.tf-vlist-table-location svg{display:none}.tf-vlist-table-value{text-align:center;color:var(--tf-ink-2);font-size:8.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.tf-vlist-table-signal{display:inline-flex;align-items:center;justify-content:center;gap:4px}.tf-vlist-table-signal svg{flex:0 0 auto}.tf-vlist-table-meter{display:inline-flex;align-items:baseline;gap:3px;padding:2px 6px;border:1px solid var(--tf-line);border-radius:4px;background:var(--tf-bg);color:var(--tf-ink-2);font-size:8.5px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em}.tf-vlist-table-meter small{color:var(--tf-ink-3);font-size:6.5px;font-weight:700;text-transform:uppercase}.tf-vlist-table-state{display:inline-flex;align-items:center;justify-content:center;gap:3px;justify-self:center;min-width:30px;padding:2px 6px;border-radius:99px;text-align:center;font-size:7.5px;font-weight:800}.tf-vlist-table-state svg{flex:0 0 auto}.tf-vlist-table-report{display:grid;gap:1px}.tf-vlist-table-report small{color:var(--tf-ink-3);font-size:7.5px}.tf-vlist-row{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px;width:100%;min-height:58px;padding:8px 10px;background:none;border:none;border-bottom:1px solid var(--tf-line-soft);color:var(--tf-ink);font-size:12.5px;text-align:left}.tf-vlist-row:hover{background:var(--tf-raised)}.tf-vlist-row-selected{background:var(--tf-accent-weak);box-shadow:inset 3px 0 0 var(--tf-accent)}.tf-vlist-row-hidden{opacity:.58}.tf-vlist-row-hidden .tf-vlist-dot{filter:grayscale(.55)}.tf-vlist-row-camera{grid-template-columns:28px minmax(0,1fr) 26px}.tf-vlist-camera{grid-column:3;width:26px;height:26px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--tf-accent) 35%,var(--tf-line));border-radius:7px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);cursor:pointer}.tf-vlist-camera:hover{border-color:var(--tf-accent);background:var(--tf-accent-weak)}.tf-vlist-camera:focus-visible{outline:2px solid var(--tf-focus);outline-offset:2px}.tf-vlist-camera:active{transform:scale(.94)}.tf-vlist-table-panel+.tf-vlist-camera{position:sticky;inset-inline-end:4px}.tf-vlist-visible{width:28px;height:28px;display:grid;place-items:center;margin-top:-2px;cursor:pointer}.tf-vlist-visible input{position:absolute;opacity:0;pointer-events:none}.tf-vlist-visible span{width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface);color:var(--tf-ink-3)}.tf-vlist-visible input:checked+span{border-color:color-mix(in srgb,var(--tf-accent) 35%,var(--tf-line));background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-vlist-visible input:focus-visible+span{outline:2px solid var(--tf-focus);outline-offset:2px}.tf-vlist-visible input:disabled+span{border-style:dashed;background:var(--tf-surface-2);color:var(--tf-status-nodata);opacity:.68;cursor:not-allowed}.tf-vlist-row-selected .tf-vlist-name{color:var(--tf-accent-strong)}.tf-vlist-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;margin-top:5px;box-shadow:0 0 0 2px var(--tf-surface)}.tf-vlist-panel{display:grid;gap:5px;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.tf-vlist-primary{display:grid;grid-template-columns:minmax(110px,.65fr) minmax(190px,1.45fr) auto auto;align-items:baseline;gap:7px;min-width:0}.tf-vlist-identity{display:flex;align-items:center;gap:7px;min-width:0}.tf-vlist-identity .tf-vlist-dot{margin-top:0}.tf-vlist-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.tf-vlist-age{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;color:var(--tf-ink-3);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.tf-vlist-report-time{overflow:hidden;color:var(--tf-ink-3);font-size:8.5px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.tf-vlist-secondary{display:flex;align-items:center;gap:4px;min-height:20px;min-width:0;overflow:hidden}.tf-vlist-secondary:empty{display:none}.tf-vlist-location{display:inline-flex;align-items:center;gap:4px;min-width:0;overflow:hidden;color:var(--tf-ink-2);font-size:9.5px;white-space:nowrap;text-overflow:ellipsis}.tf-vlist-location svg{flex:0 0 auto;color:var(--tf-ink-3)}.tf-vlist-fact{flex:0 0 auto;padding-left:6px;border-left:1px solid var(--tf-line);color:var(--tf-ink-3);font-size:9px;font-weight:650;white-space:nowrap}.tf-vlist-temperature{border-color:color-mix(in srgb,var(--tf-cold) 20%,var(--tf-line));background:var(--tf-cold-tint);color:var(--tf-cold)}.tf-vlist-alarm{border-color:color-mix(in srgb,var(--tf-alert) 24%,var(--tf-line));background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-vlist-fact-critical{color:var(--tf-alert);font-weight:800}.tf-vlist-chip{display:inline-flex;align-items:center;gap:3px;min-height:20px;padding:1px 6px;border:1px solid var(--tf-line);border-radius:999px;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:9.5px;font-weight:650;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.tf-vlist-ignition-on{border-color:color-mix(in srgb,var(--tf-run) 24%,var(--tf-line));background:var(--tf-run-tint);color:var(--tf-run)}.tf-vlist-ignition-off{background:var(--tf-stop-tint);color:var(--tf-stop)}.tf-vlist-gps-true{border-color:color-mix(in srgb,var(--tf-run) 22%,var(--tf-line));background:var(--tf-run-tint);color:var(--tf-run)}.tf-vlist-gps-false{background:var(--tf-nodata-tint);color:var(--tf-nodata)}.tf-vlist-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-top:1px solid var(--tf-line);color:var(--tf-ink-3);font-size:11.5px}.tf-vlist-footer button{padding:4px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-raised);color:var(--tf-ink);font-size:11.5px;cursor:pointer}.tf-vlist-footer button:hover:not(:disabled){border-color:var(--tf-accent);color:var(--tf-accent)}.tf-vlist-footer button:disabled{cursor:default;opacity:.6}.tf-vlist-message{padding:12px;font-size:12.5px;color:var(--tf-ink-2)}.tf-fleetdock{position:relative;height:100%;display:flex;flex-direction:column;min-height:0}.maplibregl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.maplibregl-canvas{left:0;position:absolute;top:0}.maplibregl-map:fullscreen{height:100%;width:100%}.maplibregl-ctrl-group button.maplibregl-ctrl-compass{touch-action:none}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-ctrl-group button.maplibregl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer{cursor:pointer}.maplibregl-canvas-container.maplibregl-interactive:active,.maplibregl-ctrl-group button.maplibregl-ctrl-compass:active{cursor:grabbing}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-canvas-container.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:pinch-zoom}.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas{touch-action:none}.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas{touch-action:pan-x pan-y}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-top-left,.maplibregl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.maplibregl-ctrl-top-left{left:0;top:0}.maplibregl-ctrl-top-right{right:0;top:0}.maplibregl-ctrl-bottom-left{bottom:0;left:0}.maplibregl-ctrl-bottom-right{bottom:0;right:0}.maplibregl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.maplibregl-ctrl-top-left .maplibregl-ctrl{float:left;margin:10px 0 0 10px}.maplibregl-ctrl-top-right .maplibregl-ctrl{float:right;margin:10px 10px 0 0}.maplibregl-ctrl-bottom-left .maplibregl-ctrl{float:left;margin:0 0 10px 10px}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 10px 10px 0}.maplibregl-ctrl-group{background:#fff;border-radius:4px}.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (forced-colors:active){.maplibregl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.maplibregl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;padding:0;width:29px}.maplibregl-ctrl-group button+button{border-top:1px solid #ddd}.maplibregl-ctrl button .maplibregl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (forced-colors:active){.maplibregl-ctrl-icon{background-color:transparent}.maplibregl-ctrl-group button+button{border-top:1px solid ButtonText}}.maplibregl-ctrl button::-moz-focus-inner{border:0;padding:0}.maplibregl-ctrl-attrib-button:focus,.maplibregl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl button:disabled{cursor:not-allowed}.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon{opacity:.25}.maplibregl-ctrl button:not(:disabled):hover{background-color:#0000000d}.maplibregl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.maplibregl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.maplibregl-ctrl-group button:focus:first-child{border-radius:4px 4px 0 0}.maplibregl-ctrl-group button:focus:last-child{border-radius:0 0 4px 4px}.maplibregl-ctrl-group button:focus:only-child{border-radius:inherit}.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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.5'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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.5'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-zoom-out .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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 13z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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.5'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-fullscreen .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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-3zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-shrink .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' 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-1zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 29 29'%3E%3Cpath d='m10.5 14 4-8 4 8z'/%3E%3Cpath fill='%23ccc' d='m10.5 16 4 8 4-8z'/%3E%3C/svg%3E")}}.maplibregl-ctrl button.maplibregl-ctrl-terrain .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%23333' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-terrain-enabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='%2333b5e5' viewBox='0 0 22 22'%3E%3Cpath d='m1.754 13.406 4.453-4.851 3.09 3.09 3.281 3.277.969-.969-3.309-3.312 3.844-4.121 6.148 6.886h1.082v-.855l-7.207-8.07-4.84 5.187L6.169 6.57l-5.48 5.965v.871ZM.688 16.844h20.625v1.375H.688Zm0 0'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23333' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23aaa' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon{animation:maplibregl-spin 2s linear infinite}@media (forced-colors:active){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23fff' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23999' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-active-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e58978' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%2333b5e5' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-background-error .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23e54e33' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl button.maplibregl-ctrl-geolocate .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3C/svg%3E")}.maplibregl-ctrl button.maplibregl-ctrl-geolocate:disabled .maplibregl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='29' height='29' fill='%23666' viewBox='0 0 20 20'%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-1m0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7'/%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Cpath fill='red' d='m14 5 1 1-9 9-1-1z'/%3E%3C/svg%3E")}}@keyframes maplibregl-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%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.maplibregl-ctrl-logo.maplibregl-compact{width:14px}@media (forced-colors:active){a.maplibregl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}@media (forced-colors:active) and (prefers-color-scheme:light){a.maplibregl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='23' fill='none'%3E%3Cpath fill='%23000' fill-opacity='.4' fill-rule='evenodd' d='M17.408 16.796h-1.827l2.501-12.095h.198l3.324 6.533.988 2.19.988-2.19 3.258-6.533h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.929 5.644h-.098l-2.914-5.644-.757-1.71-.345 1.71zm1.958-3.42-.726 3.663a1.255 1.255 0 0 1-1.232 1.011h-1.827a1.255 1.255 0 0 1-1.229-1.509l2.501-12.095a1.255 1.255 0 0 1 1.23-1.001h.197a1.25 1.25 0 0 1 1.12.685l3.19 6.273 3.125-6.263a1.25 1.25 0 0 1 1.123-.695h.181a1.255 1.255 0 0 1 1.227.991l1.443 6.71a5 5 0 0 1 .314-.787l.009-.016a4.6 4.6 0 0 1 1.777-1.887c.782-.46 1.668-.667 2.611-.667a4.6 4.6 0 0 1 1.7.32l.306.134c.21-.16.474-.256.759-.256h1.694a1.255 1.255 0 0 1 1.212.925 1.255 1.255 0 0 1 1.212-.925h1.711c.284 0 .545.094.755.252.613-.3 1.312-.45 2.075-.45 1.356 0 2.557.445 3.482 1.4q.47.48.763 1.064V4.701a1.255 1.255 0 0 1 1.255-1.255h1.86A1.255 1.255 0 0 1 54.44 4.7v9.194h2.217c.19 0 .37.043.532.118v-4.77c0-.356.147-.678.385-.906a2.42 2.42 0 0 1-.682-1.71c0-.665.267-1.253.735-1.7a2.45 2.45 0 0 1 1.722-.674 2.43 2.43 0 0 1 1.705.675q.318.302.504.683V4.7a1.255 1.255 0 0 1 1.255-1.255h1.744A1.255 1.255 0 0 1 65.812 4.7v3.335a4.8 4.8 0 0 1 1.526-.246c.938 0 1.817.214 2.59.69a4.47 4.47 0 0 1 1.67 1.743v-.98a1.255 1.255 0 0 1 1.256-1.256h1.777c.233 0 .451.064.639.174a3.4 3.4 0 0 1 1.567-.372c.346 0 .861.02 1.285.232a1.25 1.25 0 0 1 .689 1.004 4.7 4.7 0 0 1 .853-.588c.795-.44 1.675-.647 2.61-.647 1.385 0 2.65.39 3.525 1.396.836.938 1.168 2.173 1.168 3.528q-.001.515-.056 1.051a1.255 1.255 0 0 1-.947 1.09l.408.952a1.255 1.255 0 0 1-.477 1.552c-.418.268-.92.463-1.458.612-.613.171-1.304.244-2.049.244-1.06 0-2.043-.207-2.886-.698l-.015-.008c-.798-.48-1.419-1.135-1.818-1.963l-.004-.008a5.8 5.8 0 0 1-.548-2.512q0-.429.053-.843a1.3 1.3 0 0 1-.333-.086l-.166-.004c-.223 0-.426.062-.643.228-.03.024-.142.139-.142.59v3.883a1.255 1.255 0 0 1-1.256 1.256h-1.777a1.255 1.255 0 0 1-1.256-1.256V15.69l-.032.057a4.8 4.8 0 0 1-1.86 1.833 5.04 5.04 0 0 1-2.484.634 4.5 4.5 0 0 1-1.935-.424 1.25 1.25 0 0 1-.764.258h-1.71a1.255 1.255 0 0 1-1.256-1.255V7.687a2.4 2.4 0 0 1-.428.625c.253.23.412.561.412.93v7.553a1.255 1.255 0 0 1-1.256 1.255h-1.843a1.25 1.25 0 0 1-.894-.373c-.228.23-.544.373-.894.373H51.32a1.255 1.255 0 0 1-1.256-1.255v-1.251l-.061.117a4.7 4.7 0 0 1-1.782 1.884 4.77 4.77 0 0 1-2.485.67 5.6 5.6 0 0 1-1.485-.188l.009 2.764a1.255 1.255 0 0 1-1.255 1.259h-1.729a1.255 1.255 0 0 1-1.255-1.255v-3.537a1.255 1.255 0 0 1-1.167.793h-1.679a1.25 1.25 0 0 1-.77-.263 4.5 4.5 0 0 1-1.945.429c-.885 0-1.724-.21-2.495-.632l-.017-.01a5 5 0 0 1-1.081-.836 1.255 1.255 0 0 1-1.254 1.312h-1.81a1.255 1.255 0 0 1-1.228-.99l-.782-3.625-2.044 3.939a1.25 1.25 0 0 1-1.115.676h-.098a1.25 1.25 0 0 1-1.116-.68l-2.061-3.994zM35.92 16.63l.207-.114.223-.15q.493-.356.735-.785l.061-.118.033 1.332h1.678V9.242h-1.694l-.033 1.267q-.133-.329-.526-.658l-.032-.028a3.2 3.2 0 0 0-.668-.428l-.27-.12a3.3 3.3 0 0 0-1.235-.23q-1.136-.001-1.974.493a3.36 3.36 0 0 0-1.3 1.382q-.445.89-.444 2.074 0 1.2.51 2.107a3.8 3.8 0 0 0 1.382 1.381 3.9 3.9 0 0 0 1.893.477q.795 0 1.455-.33zm-2.789-5.38q-.576.675-.575 1.762 0 1.102.559 1.794.576.675 1.645.675a2.25 2.25 0 0 0 .934-.19 2.2 2.2 0 0 0 .468-.29l.178-.161a2.2 2.2 0 0 0 .397-.561q.244-.5.244-1.15v-.115q0-.708-.296-1.267l-.043-.077a2.2 2.2 0 0 0-.633-.709l-.13-.086-.047-.028a2.1 2.1 0 0 0-1.073-.285q-1.052 0-1.629.692zm2.316 2.706c.163-.17.28-.407.28-.83v-.114c0-.292-.06-.508-.15-.68a.96.96 0 0 0-.353-.389.85.85 0 0 0-.464-.127c-.4 0-.56.114-.664.239l-.01.012c-.148.174-.275.45-.275.945 0 .506.122.801.27.99.097.11.266.224.68.224.303 0 .504-.09.687-.269zm7.545 1.705a2.6 2.6 0 0 0 .331.423q.319.33.755.548l.173.074q.65.255 1.49.255 1.02 0 1.844-.493a3.45 3.45 0 0 0 1.316-1.4q.493-.904.493-2.089 0-1.909-.988-2.913-.988-1.02-2.584-1.02-.898 0-1.575.347a3 3 0 0 0-.415.262l-.199.166a3.4 3.4 0 0 0-.64.82V9.242h-1.712v11.553h1.729l-.017-5.134zm.53-1.138q.206.29.48.5l.155.11.053.034q.51.296 1.119.297 1.07 0 1.645-.675.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.435 0-.835.16a2 2 0 0 0-.284.136 2 2 0 0 0-.363.254 2.2 2.2 0 0 0-.46.569l-.082.162a2.6 2.6 0 0 0-.213 1.072v.115q0 .707.296 1.267l.135.211zm.964-.818a1.1 1.1 0 0 0 .367.385.94.94 0 0 0 .476.118c.423 0 .59-.117.687-.23.159-.194.28-.478.28-.95 0-.53-.133-.8-.266-.952l-.021-.025c-.078-.094-.231-.221-.68-.221a1 1 0 0 0-.503.135l-.012.007a.86.86 0 0 0-.335.343c-.073.133-.132.324-.132.614v.115a1.4 1.4 0 0 0 .14.66zm15.7-6.222q.347-.346.346-.856a1.05 1.05 0 0 0-.345-.79 1.18 1.18 0 0 0-.84-.329q-.51 0-.855.33a1.05 1.05 0 0 0-.346.79q0 .51.346.855.345.346.856.346.51 0 .839-.346zm4.337 9.314.033-1.332q.191.403.59.747l.098.081a4 4 0 0 0 .316.224l.223.122a3.2 3.2 0 0 0 1.44.322 3.8 3.8 0 0 0 1.875-.477 3.5 3.5 0 0 0 1.382-1.366q.527-.89.526-2.09 0-1.184-.444-2.073a3.24 3.24 0 0 0-1.283-1.399q-.823-.51-1.942-.51a3.5 3.5 0 0 0-1.527.344l-.086.043-.165.09a3 3 0 0 0-.33.214q-.432.315-.656.707a2 2 0 0 0-.099.198l.082-1.283V4.701h-1.744v12.095zm.473-2.509a2.5 2.5 0 0 0 .566.7q.117.098.245.18l.144.08a2.1 2.1 0 0 0 .975.232q1.07 0 1.645-.675.576-.69.576-1.778 0-1.102-.576-1.777-.56-.691-1.645-.692a2.2 2.2 0 0 0-1.015.235q-.22.113-.415.282l-.15.142a2.1 2.1 0 0 0-.42.594q-.223.479-.223 1.1v.115q0 .705.293 1.26zm2.616-.293c.157-.191.28-.479.28-.967 0-.51-.13-.79-.276-.961l-.021-.026c-.082-.1-.232-.225-.67-.225a.87.87 0 0 0-.681.279l-.012.011c-.154.155-.274.38-.274.807v.115c0 .285.057.499.144.669a1.1 1.1 0 0 0 .367.405c.137.082.28.123.455.123.423 0 .59-.118.686-.23zm8.266-3.013q.345-.13.724-.14l.069-.002q.493 0 .642.099l.247-1.794q-.196-.099-.717-.099a2.3 2.3 0 0 0-.545.063 2 2 0 0 0-.411.148 2.2 2.2 0 0 0-.4.249 2.5 2.5 0 0 0-.485.499 2.7 2.7 0 0 0-.32.581l-.05.137v-1.48h-1.778v7.553h1.777v-3.884q0-.546.159-.943a1.5 1.5 0 0 1 .466-.636 2.5 2.5 0 0 1 .399-.253 2 2 0 0 1 .224-.099zm9.784 2.656.05-.922q0-1.743-.856-2.698-.838-.97-2.584-.97-1.119-.001-2.007.493a3.46 3.46 0 0 0-1.4 1.382q-.493.906-.493 2.106 0 1.07.428 1.975.428.89 1.332 1.432.906.526 2.255.526.973 0 1.668-.185l.044-.012.135-.04q.613-.184.984-.421l-.542-1.267q-.3.162-.642.274l-.297.087q-.51.131-1.3.131-.954 0-1.497-.444a1.6 1.6 0 0 1-.192-.193q-.366-.44-.512-1.234l-.004-.021zm-5.427-1.256-.003.022h3.752v-.138q-.011-.727-.288-1.118a1 1 0 0 0-.156-.176q-.46-.428-1.316-.428-.986 0-1.494.604-.379.45-.494 1.234zm-27.053 2.77V4.7h-1.86v12.095h5.333V15.15zm7.103-5.908v7.553h-1.843V9.242h1.843z'/%3E%3Cpath fill='%23fff' d='m19.63 11.151-.757-1.71-.345 1.71-1.12 5.644h-1.827L18.083 4.7h.197l3.325 6.533.988 2.19.988-2.19L26.839 4.7h.181l2.6 12.095h-1.81l-1.218-5.644-.362-1.71-.658 1.71-2.93 5.644h-.098l-2.913-5.644zm14.836 5.81q-1.02 0-1.893-.478a3.8 3.8 0 0 1-1.381-1.382q-.51-.906-.51-2.106 0-1.185.444-2.074a3.36 3.36 0 0 1 1.3-1.382q.839-.494 1.974-.494a3.3 3.3 0 0 1 1.234.231 3.3 3.3 0 0 1 .97.575q.396.33.527.659l.033-1.267h1.694v7.553H37.18l-.033-1.332q-.279.593-1.02 1.053a3.17 3.17 0 0 1-1.662.444zm.296-1.482q.938 0 1.58-.642.642-.66.642-1.711v-.115q0-.708-.296-1.267a2.2 2.2 0 0 0-.807-.872 2.1 2.1 0 0 0-1.119-.313q-1.053 0-1.629.692-.575.675-.575 1.76 0 1.103.559 1.795.577.675 1.645.675zm6.521-6.237h1.711v1.4q.906-1.597 2.83-1.597 1.596 0 2.584 1.02.988 1.005.988 2.914 0 1.185-.493 2.09a3.46 3.46 0 0 1-1.316 1.399 3.5 3.5 0 0 1-1.844.493q-.954 0-1.662-.329a2.67 2.67 0 0 1-1.086-.97l.017 5.134h-1.728zm4.048 6.22q1.07 0 1.645-.674.577-.69.576-1.762 0-1.119-.576-1.777-.558-.675-1.645-.675-.592 0-1.12.296-.51.28-.822.823-.296.527-.296 1.234v.115q0 .708.296 1.267.313.543.823.855.51.296 1.119.297z'/%3E%3Cpath fill='%23e1e3e9' d='M51.325 4.7h1.86v10.45h3.473v1.646h-5.333zm7.12 4.542h1.843v7.553h-1.843zm.905-1.415a1.16 1.16 0 0 1-.856-.346 1.17 1.17 0 0 1-.346-.856 1.05 1.05 0 0 1 .346-.79q.346-.329.856-.329.494 0 .839.33a1.05 1.05 0 0 1 .345.79 1.16 1.16 0 0 1-.345.855q-.33.346-.84.346zm7.875 9.133a3.17 3.17 0 0 1-1.662-.444q-.723-.46-1.004-1.053l-.033 1.332h-1.71V4.701h1.743v4.657l-.082 1.283q.279-.658 1.086-1.119a3.5 3.5 0 0 1 1.778-.477q1.119 0 1.942.51a3.24 3.24 0 0 1 1.283 1.4q.445.888.444 2.072 0 1.201-.526 2.09a3.5 3.5 0 0 1-1.382 1.366 3.8 3.8 0 0 1-1.876.477zm-.296-1.481q1.069 0 1.645-.675.577-.69.577-1.778 0-1.102-.577-1.776-.56-.691-1.645-.692a2.12 2.12 0 0 0-1.58.659q-.642.641-.642 1.694v.115q0 .71.296 1.267a2.4 2.4 0 0 0 .807.872 2.1 2.1 0 0 0 1.119.313zm5.927-6.237h1.777v1.481q.263-.757.856-1.217a2.14 2.14 0 0 1 1.349-.46q.527 0 .724.098l-.247 1.794q-.149-.099-.642-.099-.774 0-1.416.494-.626.493-.626 1.58v3.883h-1.777V9.242zm9.534 7.718q-1.35 0-2.255-.526-.904-.543-1.332-1.432a4.6 4.6 0 0 1-.428-1.975q0-1.2.493-2.106a3.46 3.46 0 0 1 1.4-1.382q.889-.495 2.007-.494 1.744 0 2.584.97.855.956.856 2.7 0 .444-.05.92h-5.43q.18 1.005.708 1.45.542.443 1.497.443.79 0 1.3-.131a4 4 0 0 0 .938-.362l.542 1.267q-.411.263-1.119.46-.708.198-1.711.197zm1.596-4.558q.016-1.02-.444-1.432-.46-.428-1.316-.428-1.728 0-1.991 1.86z'/%3E%3Cpath d='M5.074 15.948a.484.657 0 0 0-.486.659v1.84a.484.657 0 0 0 .486.659h4.101a.484.657 0 0 0 .486-.659v-1.84a.484.657 0 0 0-.486-.659zm3.56 1.16H5.617v.838h3.017z' style='fill:%23fff;fill-rule:evenodd;stroke-width:1.03600001'/%3E%3Cg style='stroke-width:1.12603545'%3E%3Cpath d='M-9.408-1.416c-3.833-.025-7.056 2.912-7.08 6.615-.02 3.08 1.653 4.832 3.107 6.268.903.892 1.721 1.74 2.32 2.902l-.525-.004c-.543-.003-.992.304-1.24.639a1.87 1.87 0 0 0-.362 1.121l-.011 1.877c-.003.402.104.787.347 1.125.244.338.688.653 1.23.656l4.142.028c.542.003.99-.306 1.238-.641a1.87 1.87 0 0 0 .363-1.121l.012-1.875a1.87 1.87 0 0 0-.348-1.127c-.243-.338-.688-.653-1.23-.656l-.518-.004c.597-1.145 1.425-1.983 2.348-2.87 1.473-1.414 3.18-3.149 3.2-6.226-.016-3.59-2.923-6.684-6.993-6.707m-.006 1.1v.002c3.274.02 5.92 2.532 5.9 5.6-.017 2.706-1.39 4.026-2.863 5.44-1.034.994-2.118 2.033-2.814 3.633-.018.041-.052.055-.075.065q-.013.004-.02.01a.34.34 0 0 1-.226.084.34.34 0 0 1-.224-.086l-.092-.077c-.699-1.615-1.768-2.669-2.781-3.67-1.454-1.435-2.797-2.762-2.78-5.478.02-3.067 2.7-5.545 5.975-5.523m-.02 2.826c-1.62-.01-2.944 1.315-2.955 2.96-.01 1.646 1.295 2.988 2.916 2.999h.002c1.621.01 2.943-1.316 2.953-2.961.011-1.646-1.294-2.988-2.916-2.998m-.005 1.1c1.017.006 1.829.83 1.822 1.89s-.83 1.874-1.848 1.867c-1.018-.006-1.829-.83-1.822-1.89s.83-1.874 1.848-1.868m-2.155 11.857 4.14.025c.271.002.49.305.487.676l-.013 1.875c-.003.37-.224.67-.495.668l-4.14-.025c-.27-.002-.487-.306-.485-.676l.012-1.875c.003-.37.224-.67.494-.668' style='color:%23000;font-style:normal;font-variant:normal;font-weight:400;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:%23000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:evenodd;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:%23000;solid-opacity:1;vector-effect:none;fill:%23000;fill-opacity:.4;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-9.415-.316C-12.69-.338-15.37 2.14-15.39 5.207c-.017 2.716 1.326 4.041 2.78 5.477 1.013 1 2.081 2.055 2.78 3.67l.092.076a.34.34 0 0 0 .225.086.34.34 0 0 0 .227-.083l.019-.01c.022-.009.057-.024.074-.064.697-1.6 1.78-2.64 2.814-3.634 1.473-1.414 2.847-2.733 2.864-5.44.02-3.067-2.627-5.58-5.901-5.601m-.057 8.784c1.621.011 2.944-1.315 2.955-2.96.01-1.646-1.295-2.988-2.916-2.999-1.622-.01-2.945 1.315-2.955 2.96s1.295 2.989 2.916 3' style='clip-rule:evenodd;fill:%23e1e3e9;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3Cpath d='M-11.594 15.465c-.27-.002-.492.297-.494.668l-.012 1.876c-.003.371.214.673.485.675l4.14.027c.271.002.492-.298.495-.668l.012-1.877c.003-.37-.215-.672-.485-.674z' style='clip-rule:evenodd;fill:%23fff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.47727823;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:.4' transform='translate(15.553 2.85)scale(.88807)'/%3E%3C/g%3E%3C/svg%3E")}}.maplibregl-ctrl.maplibregl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.maplibregl-ctrl-attrib.maplibregl-compact{background-color:#fff;border-radius:12px;box-sizing:content-box;color:#000;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.maplibregl-ctrl-attrib.maplibregl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.maplibregl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%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}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:#0000000d}.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (forced-colors:active){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23fff' fill-rule='evenodd' viewBox='0 0 20 20'%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 (forced-colors:active) and (prefers-color-scheme:light){.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill-rule='evenodd' viewBox='0 0 20 20'%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")}}.maplibregl-ctrl-attrib a{color:#000000bf;text-decoration:none}.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.maplibregl-attrib-empty{display:none}.maplibregl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.maplibregl-popup-anchor-left{flex-direction:row}.maplibregl-popup-anchor-right{flex-direction:row-reverse}.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.maplibregl-popup-close-button:hover{background-color:#0000000d}.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:15px 10px;pointer-events:auto;position:relative}.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.maplibregl-popup-track-pointer{display:none}.maplibregl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.maplibregl-marker{left:0;position:absolute;top:0;transition:opacity .2s;will-change:transform}.maplibregl-user-location-dot,.maplibregl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.maplibregl-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}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.maplibregl-user-location-dot-stale{background-color:#aaa}.maplibregl-user-location-dot-stale:after{display:none}.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:#0006;color:#fff;display:flex;font-size:1.4em;top:0;right:0;bottom:0;left:0;justify-content:center;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;transition:opacity 1s ease 1s;z-index:99999}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(width <= 480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}.maplibregl-pseudo-fullscreen{height:100%!important;left:0!important;position:fixed!important;top:0!important;width:100%!important;z-index:99999}.tf-cluster-cell{position:relative;width:40px;height:40px;border-radius:50%;border:2px solid var(--tf-panel);box-shadow:var(--tf-shadow-sm);display:flex;align-items:center;justify-content:center}.tf-cluster-cell[role=button]{cursor:pointer}.tf-cluster-cell-count{min-width:18px;padding:0 4px;border-radius:9px;background:var(--tf-panel);color:var(--tf-ink);font-size:11px;font-weight:700;line-height:18px;text-align:center;font-variant-numeric:tabular-nums;pointer-events:none}.tf-cluster-cell-alarm{box-shadow:0 0 0 2px var(--tf-alert),var(--tf-shadow-sm)}.tf-op-toggle{position:absolute;top:12px;right:12px;z-index:2;display:flex;gap:6px;padding:4px;background:var(--tf-panel);border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);box-shadow:var(--tf-shadow)}.tf-op-toggle-btn{border:1px solid var(--tf-line);border-radius:6px;background:var(--tf-inset);color:var(--tf-ink-2);font-size:11.5px;font-weight:600;padding:6px 10px;cursor:pointer}.tf-op-toggle-btn:hover{color:var(--tf-ink);border-color:var(--tf-accent)}.tf-op-toggle-btn-active{background:var(--tf-accent);border-color:var(--tf-accent);color:var(--tf-on-accent)}.tf-op-toggle-btn-active:hover{color:var(--tf-on-accent);border-color:var(--tf-accent)}.tf-poi-popup{display:flex;flex-direction:column;gap:4px;min-width:180px;font-size:12.5px;color:var(--tf-ink)}.tf-poi-popup-title{font-weight:700;font-size:13.5px}.tf-poi-popup-subtitle{color:var(--tf-ink-2);font-size:11.5px}.tf-poi-popup-row{display:flex;justify-content:space-between;gap:10px}.tf-poi-popup-row-label{color:var(--tf-ink-2)}.tf-poi-popup-row-value{font-weight:600;text-align:right}.tf-poi-popup-status{margin-top:4px;padding-top:6px;border-top:1px solid var(--tf-line);display:flex;flex-direction:column;gap:2px}.tf-poi-popup-status.is-loading,.tf-poi-popup-status.is-error{color:var(--tf-ink-2);font-style:italic}.tf-poi-popup-status.is-no-run p{margin:0;color:var(--tf-ink-2)}.tf-mapview{position:relative;width:100%;height:100%}.tf-vehicle-marker{width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center}.tf-vehicle-marker-icon{width:100%;height:100%;pointer-events:none;-webkit-user-select:none;user-select:none}.tf-vehicle-marker-halo{border-radius:50%;box-shadow:0 0 0 3px var(--tf-accent),0 0 12px 2px var(--tf-accent-weak)}.tf-mapview-overlay{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:5;max-width:min(420px,calc(100% - 24px));border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-panel);box-shadow:var(--tf-shadow)}.tf-live-playback-readout{position:absolute;z-index:8;top:12px;left:50%;transform:translate(-50%);width:min(780px,calc(100% - 150px));display:grid;grid-template-columns:120px 110px 120px minmax(160px,1fr) 92px;overflow:hidden;border:1px solid var(--tf-line);border-radius:12px;background:color-mix(in srgb,var(--tf-surface) 96%,transparent);box-shadow:var(--tf-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tf-live-playback-readout>span{min-width:0;padding:9px 12px;display:grid;gap:2px;border-right:1px solid var(--tf-line-2)}.tf-live-playback-readout>span:last-of-type{border-right:0}.tf-live-playback-readout small{color:var(--tf-accent-strong);font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.tf-live-playback-readout strong{overflow:hidden;color:var(--tf-ink);font-size:13px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.tf-live-playback-near strong{font-size:12px}.tf-live-playback-follow{display:flex;align-items:center;justify-content:center;gap:5px;border:0;border-left:1px solid var(--tf-line-2);background:var(--tf-surface-2);color:var(--tf-ink-2);font:750 10px var(--tf-sans)}.tf-live-playback-follow[aria-pressed=true]{background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-live-playback-follow:focus-visible{outline:3px solid color-mix(in srgb,var(--tf-accent) 28%,transparent);outline-offset:-3px}.tf-heat-toggle{position:absolute;z-index:6;right:10px;top:54px;display:flex;align-items:center;gap:3px;padding:4px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:color-mix(in srgb,var(--tf-surface) 94%,transparent);box-shadow:var(--tf-shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tf-heat-toggle>span{display:inline-flex;align-items:center;gap:4px;padding:0 6px;color:var(--tf-ink-3);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.tf-heat-toggle button{min-height:30px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:var(--tf-ink-2);font:650 10px var(--tf-sans)}.tf-heat-toggle button:hover{background:var(--tf-surface-2);color:var(--tf-ink)}.tf-heat-toggle button[aria-pressed=true]{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}@media (max-width:620px){.tf-heat-toggle{top:164px;right:8px;bottom:auto}.tf-heat-toggle>span{display:none}.tf-live-playback-readout{top:8px;width:calc(100% - 112px);grid-template-columns:repeat(3,1fr) 76px}.tf-live-playback-readout>span{padding:7px 8px}.tf-live-playback-near{grid-column:1/-2;border-top:1px solid var(--tf-line-2);border-right:0!important}.tf-live-playback-follow{grid-column:-2/-1;grid-row:2;border-top:1px solid var(--tf-line-2)}}.tf-map-tools{position:absolute;z-index:24;top:12px;right:12px}.tf-map-tools-trigger{min-height:40px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:color-mix(in srgb,var(--tf-surface) 94%,transparent);color:var(--tf-ink-2);box-shadow:var(--tf-shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font:700 11px var(--tf-sans)}.tf-map-tools-trigger strong{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--tf-accent);color:var(--tf-on-accent);font-size:9px;font-variant-numeric:tabular-nums}.tf-map-tools-panel{position:absolute;top:48px;right:0;width:292px;padding:12px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-map-tools-panel header{display:flex;align-items:flex-start;justify-content:space-between;padding:2px 2px 10px}.tf-map-tools-panel header small{color:var(--tf-accent-strong);font:700 9px var(--tf-sans);letter-spacing:.08em;text-transform:uppercase}.tf-map-tools-panel h2{margin:2px 0 0;font-size:17px;letter-spacing:-.02em}.tf-map-tools-panel header button{width:32px;height:32px;border:0;border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:19px}.tf-map-tools-section{display:grid;gap:4px;padding:8px 0;border-top:1px solid var(--tf-line-2);border-bottom:1px solid var(--tf-line-2)}.tf-map-tools-panel h3,.tf-map-tools-panel legend{padding:0 3px;color:var(--tf-ink-3);font:700 9px var(--tf-sans);letter-spacing:.07em;text-transform:uppercase}.tf-map-tool-row{display:grid;grid-template-columns:32px 1fr 30px;align-items:center;gap:8px;min-height:44px;padding:5px 7px;border:0;border-radius:9px;background:transparent;color:var(--tf-ink);text-align:left}.tf-map-tool-row:hover{background:var(--tf-surface-2)}.tf-map-tool-row>i{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font-style:normal}.tf-map-tool-row>span{display:grid;gap:1px}.tf-map-tool-row>span strong{font-size:11px}.tf-map-tool-row>span small{color:var(--tf-ink-3);font-size:9.5px}.tf-map-tool-row>b{position:relative;width:28px;height:17px;border-radius:10px;background:var(--tf-line);transition:background .16s cubic-bezier(.23,1,.32,1)}.tf-map-tool-row>b:after{content:"";position:absolute;top:3px;left:3px;width:11px;height:11px;border-radius:50%;background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);transition:transform .16s cubic-bezier(.23,1,.32,1)}.tf-map-tool-row[aria-pressed=true]>b{background:var(--tf-accent)}.tf-map-tool-row[aria-pressed=true]>b:after{transform:translate(11px)}.tf-map-tools-panel fieldset{display:grid;gap:7px;margin:0;padding:10px 2px 0;border:0}.tf-map-tool-segments{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:3px;padding:3px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2)}.tf-map-tool-segments button{min-height:32px;border:0;border-radius:6px;background:transparent;color:var(--tf-ink-3);font:700 10px var(--tf-sans)}.tf-map-tool-segments button[aria-pressed=true]{background:var(--tf-surface);color:var(--tf-accent-strong);box-shadow:var(--tf-shadow-sm)}.tf-map-tool-segments button:disabled{opacity:.45;cursor:not-allowed}.tf-map-tools-panel fieldset p{margin:0 3px;color:var(--tf-ink-3);font-size:9.5px;line-height:1.45}.tf-map-tool-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding-top:10px}.tf-map-tool-actions button{min-height:36px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink-2);font:700 9.5px var(--tf-sans)}.tf-map-tools button:focus-visible{outline:3px solid color-mix(in srgb,var(--tf-accent) 28%,transparent);outline-offset:2px}@media (max-width:640px){.tf-map-tools{top:8px;right:8px;z-index:34}.tf-map-tools-trigger span{display:none}.tf-map-tools-panel{position:fixed;top:auto;right:6px;bottom:6px;width:min(330px,calc(100vw - 60px));max-height:calc(100dvh - 90px);overflow:auto}}.tf-inspector-panel{display:flex;flex-direction:column;height:100%}.tf-inspector-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--tf-line)}.tf-inspector-title{font-size:12.5px;font-weight:700;color:var(--tf-ink-2);text-transform:uppercase;letter-spacing:.04em}.tf-inspector-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:6px 10px;border-bottom:1px solid var(--tf-line);background:var(--tf-surface-2)}.tf-inspector-tabs button{min-height:36px;border:0;border-radius:8px;background:transparent;color:var(--tf-ink-3);font:700 11px var(--tf-sans)}.tf-inspector-tabs button[aria-pressed=true]{background:var(--tf-surface);color:var(--tf-accent-strong);box-shadow:var(--tf-shadow-sm)}.tf-inspector-close{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-raised);color:var(--tf-ink-2);font-size:16px;line-height:1;cursor:pointer}.tf-inspector-close:hover{border-color:var(--tf-accent);color:var(--tf-ink)}.tf-inspector-message{padding:14px;font-size:12.5px;color:var(--tf-ink-2)}.tf-inspector-body{display:flex;flex-direction:column;gap:12px;padding:14px;overflow-y:auto}.tf-inspector-identity{display:flex;flex-direction:column;gap:2px}.tf-inspector-identity-artwork{flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.tf-inspector-type{margin-top:5px;color:var(--tf-accent-strong);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tf-inspector-name{font-size:16px;font-weight:700;color:var(--tf-ink)}.tf-inspector-sub{font-size:12px;color:var(--tf-ink-3);font-variant-numeric:tabular-nums}.tf-inspector-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--tf-line-soft);font-size:13px}.tf-inspector-row-emphasis{align-items:flex-start;padding:9px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-accent-tint)}.tf-inspector-row-emphasis .tf-inspector-value{max-width:190px;color:var(--tf-accent-ink);font-size:11.5px;font-weight:700;line-height:1.35;text-align:right}.tf-inspector-label{display:flex;align-items:center;gap:7px;color:var(--tf-ink-3)}.tf-inspector-field-icon{flex:0 0 auto;color:var(--tf-ink-3)}.tf-inspector-value{display:flex;align-items:center;gap:6px;color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-inspector-acc:before{width:7px;height:7px;border-radius:50%;background:currentColor;content:""}.tf-inspector-acc.is-on{color:var(--tf-run)}.tf-inspector-acc.is-off{color:var(--tf-stop)}.tf-inspector-acc.is-unknown{color:var(--tf-nodata)}.tf-inspector-evidence{display:grid;gap:9px;padding:11px;border:1px solid var(--tf-line-soft);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-inspector-evidence>header,.tf-inspector-received{display:flex;align-items:center;justify-content:space-between;gap:8px}.tf-inspector-evidence>header span{color:var(--tf-ink-2);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tf-inspector-evidence>header small,.tf-inspector-received span{color:var(--tf-ink-3);font-size:9.5px}.tf-inspector-evidence dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}.tf-inspector-evidence dl div{min-width:0;padding:7px 8px;border:1px solid var(--tf-line-2);border-radius:7px;background:var(--tf-surface)}.tf-inspector-evidence dl div.is-priority{border-color:var(--tf-line);background:var(--tf-accent-tint)}.tf-inspector-evidence dl div.is-priority dd{color:var(--tf-accent-ink)}.tf-inspector-evidence dt{color:var(--tf-ink-3);font-size:9px}.tf-inspector-evidence dd{margin:3px 0 0;overflow:hidden;color:var(--tf-ink);font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.tf-inspector-received{padding-top:7px;border-top:1px solid var(--tf-line-2)}.tf-inspector-received time{color:var(--tf-ink-2);font-size:9.5px;font-variant-numeric:tabular-nums;text-align:right}.tf-inspector-dot{width:8px;height:8px;border-radius:50%}.tf-inspector-badge{padding:1px 6px;border-radius:9px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.tf-inspector-badge-stale{background:var(--tf-accent-weak);border:1px solid var(--tf-stop);color:var(--tf-stop)}.tf-inspector-note{margin-top:4px;padding:8px 10px;border:1px dashed var(--tf-line);border-radius:var(--tf-r-sm);color:var(--tf-ink-3);font-size:11.5px;font-style:italic}.tf-inspector-location{padding:10px;border:1px solid var(--tf-line-soft);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-inspector-location-title{display:flex;align-items:center;gap:7px;color:var(--tf-ink-3);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tf-inspector-source{margin-left:auto;padding:2px 6px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:9px;font-weight:750;letter-spacing:.02em;text-transform:none;white-space:nowrap}.tf-inspector-location-copy{display:grid;gap:3px;padding:8px 0 1px 23px}.tf-inspector-location-copy strong{color:var(--tf-ink);font-size:12px;font-weight:650;line-height:1.45;overflow-wrap:anywhere}.tf-inspector-location-copy small{color:var(--tf-ink-3);font-size:10.5px;text-transform:capitalize}.tf-inspector-location .tf-state{min-height:58px;padding:9px 4px 1px 23px;align-items:flex-start;text-align:left}.tf-inspector-pin{padding:10px;border:1px solid var(--tf-line-soft);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-inspector-pin-title{display:flex;align-items:center;gap:7px;color:var(--tf-ink-3);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tf-inspector-pin-status{margin-left:auto;padding:2px 6px;border-radius:999px;font-size:9px;font-weight:750;letter-spacing:.02em;text-transform:none;white-space:nowrap}.tf-inspector-pin-status.is-set{background:var(--tf-run-tint);color:var(--tf-run)}.tf-inspector-pin-status.is-unset{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-inspector-pin-hint{margin:6px 0 0 23px;color:var(--tf-ink-3);font-size:10.5px;line-height:1.4}.tf-inspector-pin-controls{display:flex;gap:6px;margin:8px 0 0 23px}.tf-inspector-pin-controls input{min-width:0;flex:1;padding:6px 8px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.1em}.tf-inspector-pin-controls button{padding:6px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);font-size:11px;font-weight:700;white-space:nowrap}.tf-inspector-pin-controls button:disabled{opacity:.5}.tf-inspector-pin-controls .tf-inspector-pin-danger{border-color:var(--tf-alert);color:var(--tf-alert)}.tf-inspector-playback{display:grid;gap:12px;padding:14px}.tf-inspector-playback>header{display:flex;align-items:center;justify-content:space-between}.tf-inspector-playback>header span{display:flex;align-items:center;gap:7px;color:var(--tf-accent-strong);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.tf-inspector-playback>header button{border:0;background:transparent;color:var(--tf-ink-3);font:700 11px var(--tf-sans)}.tf-inspector-playback h2{margin:0;color:var(--tf-ink);font-size:18px;letter-spacing:-.02em}.tf-inspector-playback p{margin:-6px 0 0;color:var(--tf-ink-3);font-size:12px;line-height:1.45}.tf-inspector-playback-range{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-inspector-playback-range button{min-height:36px;border:0;border-radius:7px;background:transparent;color:var(--tf-ink-3);font:700 11px var(--tf-sans)}.tf-inspector-playback-range button[aria-pressed=true]{background:var(--tf-ink);color:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-inspector-playback-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.tf-inspector-playback-summary span{display:grid;gap:3px;padding:9px;border:1px solid var(--tf-line-2);border-radius:8px;background:var(--tf-surface-2)}.tf-inspector-playback-summary small{color:var(--tf-ink-3);font-size:9px;text-transform:uppercase}.tf-inspector-playback-summary strong{color:var(--tf-ink);font-size:12px;font-variant-numeric:tabular-nums}.tf-inspector-playback-summary button{grid-column:1/-1;min-height:40px;border:0;border-radius:9px;background:var(--tf-accent);color:var(--tf-on-accent);font:750 12px var(--tf-sans)}.tf-inspector-playback-custom{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-inspector-playback-custom label{display:grid;gap:4px;color:var(--tf-ink-3);font-size:10px;font-weight:750}.tf-inspector-playback-custom input{min-width:0;min-height:38px;padding:6px 8px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink)}.tf-inspector-playback-custom>button{grid-column:1/-1;min-height:40px;border:0;border-radius:8px;background:var(--tf-accent);color:var(--tf-on-accent);font-weight:800}.tf-inspector-playback-custom>p{grid-column:1/-1;margin:0;color:var(--tf-alert);font-size:10px}.tf-inspector-playback button:focus-visible,.tf-inspector-playback input:focus-visible{outline:3px solid color-mix(in srgb,var(--tf-accent) 28%,transparent);outline-offset:2px}.tf-fuel-section{display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid var(--tf-line)}.tf-fuel-eyebrow{display:inline-flex;align-items:center;gap:5px;color:var(--tf-ink-3);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-fuel-eyebrow svg{color:var(--tf-fuel, var(--tf-warm))}.tf-fuel-section-head h2{margin:2px 0 0;color:var(--tf-ink);font-size:15px;line-height:1.25}.tf-fuel-card{min-width:0;padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-fuel-card header{display:flex;align-items:center;justify-content:space-between;gap:8px}.tf-fuel-label{display:inline-flex;align-items:center;gap:6px;color:var(--tf-ink);font-size:12px;font-weight:650}.tf-gauge-ok{--gauge: var(--tf-fuel, var(--tf-cold))}.tf-gauge-low{--gauge: var(--tf-warm)}.tf-fuel-source{padding:3px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.tf-fuel-source-calibrated{color:var(--tf-ok-ink, var(--tf-ink));background:color-mix(in srgb,var(--tf-cold) 14%,transparent)}.tf-fuel-source-raw{color:var(--tf-ink-2);background:color-mix(in srgb,var(--tf-ink-2) 12%,transparent)}.tf-fuel-note{margin:8px 0 0;color:var(--tf-ink-3);font-size:11px;line-height:1.45}.tf-fuel-chart{display:block;width:100%;height:auto;margin-top:10px}.tf-fuel-chart-line{fill:none;stroke:var(--tf-fuel, var(--tf-cold));stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.tf-fuel-chart-event{stroke:var(--tf-surface);stroke-width:2}.tf-fuel-chart-event.is-filling{fill:var(--tf-cold)}.tf-fuel-chart-event.is-drain{fill:var(--tf-warm)}.tf-fuel-chart-empty{margin:10px 0 0;color:var(--tf-ink-3);font-size:11px}.tf-fuel-events{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:6px}.tf-fuel-event{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--tf-r-sm);background:var(--tf-surface-2, transparent);font-size:12px;color:var(--tf-ink-2)}.tf-fuel-event strong{font-variant-numeric:tabular-nums}.tf-fuel-event.is-filling svg,.tf-fuel-event.is-filling strong{color:var(--tf-cold)}.tf-fuel-event.is-drain svg,.tf-fuel-event.is-drain strong{color:var(--tf-warm)}.tf-fuel-card time{display:block;margin-top:10px;color:var(--tf-ink-3);font-size:11px}.tf-voltage-card{display:grid;gap:12px;padding:16px}.tf-voltage-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tf-voltage-card header>div{display:grid;gap:3px;min-width:0}.tf-voltage-eyebrow{display:flex;align-items:center;gap:6px;color:var(--tf-ink-3);font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-voltage-card h3{margin:0;color:var(--tf-ink);font-size:15px}.tf-voltage-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.tf-voltage-summary>div{display:grid;gap:2px;padding:9px 11px;border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-voltage-summary small{color:var(--tf-ink-3);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase}.tf-voltage-summary strong{color:var(--tf-ink);font-size:15px;font-variant-numeric:tabular-nums}.tf-voltage-verdict.is-charging strong{color:var(--tf-run)}.tf-voltage-verdict.is-undercharging{background:var(--tf-alert-tint)}.tf-voltage-verdict.is-undercharging strong{color:var(--tf-alert)}.tf-state-chart{width:100%;height:auto;overflow:visible}.tf-state-chart-line{fill:none;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.tf-state-chart-grid{stroke:var(--tf-line-2);stroke-width:1;vector-effect:non-scaling-stroke}.tf-state-chart-ref{stroke:var(--tf-line-strong);stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.tf-state-chart-ref.is-ok{stroke:var(--tf-run)}.tf-state-chart-ref.is-warn{stroke:var(--tf-idle)}.tf-state-chart-axis{fill:var(--tf-ink-3);font-size:9px;font-variant-numeric:tabular-nums}.tf-state-chart-marker line{stroke:var(--tf-ink-3);stroke-width:1;stroke-dasharray:2 3;vector-effect:non-scaling-stroke}.tf-state-chart-marker circle{fill:var(--tf-surface);stroke:var(--tf-ink-2);stroke-width:2;vector-effect:non-scaling-stroke}.tf-state-chart-marker.is-fill circle{stroke:var(--tf-run)}.tf-state-chart-marker.is-drain circle{stroke:var(--tf-alert)}.tf-state-chart-marker.is-drain line{stroke:var(--tf-alert)}.tf-state-chart-reflabel{fill:var(--tf-ink-3);font-size:8.5px;letter-spacing:.04em}.tf-chart-empty,.tf-voltage-empty{margin:0;padding:18px 0;color:var(--tf-ink-3);font-size:11px;text-align:center}.tf-voltage-legend{display:flex;flex-wrap:wrap;gap:14px}.tf-voltage-legend span{display:flex;align-items:center;gap:6px;color:var(--tf-ink-2);font-size:10px}.tf-voltage-legend i{width:11px;height:3px;border-radius:2px}.tf-voltage-note{margin:0;color:var(--tf-ink-3);font-size:9.5px;line-height:1.45}.tf-gauge-neutral{--gauge: var(--tf-ink-2)}.tf-gauge{position:relative;width:100%;max-width:210px;margin:6px auto 2px;--gauge: var(--tf-ink-2)}.tf-gauge-svg{display:block;width:100%;height:auto}.tf-gauge-track{fill:none;stroke:var(--tf-line);stroke-width:11;stroke-linecap:round}.tf-gauge-band{fill:none;stroke:color-mix(in srgb,var(--tf-cold) 24%,transparent);stroke-width:6;stroke-linecap:round}.tf-gauge-progress{fill:none;stroke:var(--gauge);stroke-width:11;stroke-linecap:round;transition:stroke .2s ease}.tf-gauge-marker{fill:var(--gauge);stroke:var(--tf-surface);stroke-width:3}.tf-gauge-readout{position:absolute;top:46%;left:0;right:0;display:flex;flex-direction:column;align-items:center;transform:translateY(-50%);font-variant-numeric:tabular-nums;pointer-events:none}.tf-gauge-icon{color:var(--gauge);opacity:.85}.tf-gauge-readout strong{margin-top:2px;color:var(--gauge);font-size:34px;font-weight:700;letter-spacing:-.04em;line-height:1}.tf-gauge-readout span{margin-top:2px;color:var(--tf-ink-2);font-size:13px;font-weight:650}.tf-temperature-section{display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid var(--tf-line)}.tf-temperature-eyebrow{display:inline-flex;align-items:center;gap:5px;color:var(--tf-ink-3);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-temperature-eyebrow svg{color:var(--tf-cold)}.tf-temperature-section-head h2{margin:2px 0 0;color:var(--tf-ink);font-size:15px;line-height:1.25}.tf-temperature-probes{display:grid;gap:10px}.tf-temperature-probe{min-width:0;padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-temperature-probe header{display:flex;align-items:center;justify-content:space-between;gap:8px}.tf-probe-label{display:inline-flex;align-items:center;gap:6px;color:var(--tf-ink);font-size:12px;font-weight:650}.tf-probe-label svg{color:var(--tf-cold)}.tf-temperature-status{flex:0 0 auto;padding:3px 8px;border:1px solid var(--tf-line);border-radius:999px;color:var(--tf-ink-2);font-size:9.5px;font-weight:750;letter-spacing:.03em;text-transform:uppercase}.tf-temperature-status-in-range{border-color:color-mix(in srgb,var(--tf-run) 45%,transparent);background:var(--tf-run-tint);color:var(--tf-run)}.tf-temperature-status-above{border-color:color-mix(in srgb,var(--tf-alert) 45%,transparent);background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-temperature-status-below{border-color:color-mix(in srgb,var(--tf-cold) 45%,transparent);background:var(--tf-cold-tint);color:var(--tf-cold)}.tf-gauge-in-range,.tf-gauge-below{--gauge: var(--tf-cold)}.tf-gauge-above{--gauge: var(--tf-warm)}.tf-temperature-range{margin-top:2px;color:var(--tf-ink-3);font-size:10.5px;font-weight:600;text-align:center;font-variant-numeric:tabular-nums}.tf-temperature-chart{display:block;width:100%;height:74px;margin-top:10px;overflow:visible}.tf-temperature-grid{stroke:var(--tf-line);stroke-width:1;vector-effect:non-scaling-stroke}.tf-temperature-band{fill:color-mix(in srgb,var(--tf-cold) 9%,transparent)}.tf-temperature-limit{stroke:color-mix(in srgb,var(--tf-cold) 45%,transparent);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.tf-temperature-trace{fill:none;stroke:var(--tf-accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.tf-temperature-point{fill:var(--tf-accent)}.tf-temperature-probe time{display:block;margin-top:6px;color:var(--tf-ink-3);font-size:10px;text-align:center;font-variant-numeric:tabular-nums}.tf-maintenance-risk{margin:16px;padding:16px;border:1px solid var(--tf-line);border-radius:var(--tf-radius-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-maintenance-risk>header{display:flex;align-items:center;gap:10px;margin-bottom:14px}.tf-maintenance-risk-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--tf-warm);background:var(--tf-warm-tint)}.tf-maintenance-risk-eyebrow{color:var(--tf-ink-3);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.tf-maintenance-risk h2{margin:2px 0 0;color:var(--tf-ink);font-size:17px}.tf-maintenance-risk-summary{display:grid;grid-template-columns:104px 1fr;gap:12px;align-items:center}.tf-maintenance-risk-score{display:grid;place-items:center;min-height:88px;padding:8px;border-radius:14px;color:var(--tf-accent-ink);background:var(--tf-accent-tint);text-align:center}.tf-maintenance-risk-score.is-due{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-maintenance-risk-score strong{font-size:30px;font-variant-numeric:tabular-nums;line-height:1}.tf-maintenance-risk-score span{font-size:10px;font-weight:700}.tf-maintenance-risk-callout p{margin:7px 0 0;color:var(--tf-ink-2);font-size:12px}.tf-maintenance-risk-badge{display:inline-flex;padding:5px 8px;border-radius:999px;color:var(--tf-accent-ink);background:var(--tf-accent-tint);font-size:11px;font-weight:800}.tf-maintenance-risk-badge.is-due{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-maintenance-risk-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0}.tf-maintenance-risk-metrics div{min-width:0;padding:9px;border:1px solid var(--tf-line-2);border-radius:9px;background:var(--tf-surface-2)}.tf-maintenance-risk-metrics dt{color:var(--tf-ink-3);font-size:9px}.tf-maintenance-risk-metrics dd{margin:4px 0 0;color:var(--tf-ink);font-size:11px;font-weight:800;font-variant-numeric:tabular-nums}.tf-maintenance-risk-factors h3{margin:0 0 7px;color:var(--tf-ink-2);font-size:11px}.tf-maintenance-risk-factors ol{display:grid;gap:6px;margin:0;padding:0;list-style:none}.tf-maintenance-risk-factors li{display:flex;justify-content:space-between;gap:8px;color:var(--tf-ink-2);font-size:11px}.tf-maintenance-risk-factors b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-maintenance-risk-disclosure{margin-top:14px;padding:11px;border-inline-start:3px solid var(--tf-idle);border-radius:0 8px 8px 0;background:var(--tf-idle-tint);color:var(--tf-ink-2)}.tf-maintenance-risk-disclosure strong{display:block;color:var(--tf-ink);font-size:11px}.tf-maintenance-risk-disclosure p{margin:5px 0;font-size:10px;line-height:1.4}.tf-maintenance-risk-disclosure small{color:var(--tf-ink-3);font-size:9px;overflow-wrap:anywhere}@media (max-width: 420px){.tf-maintenance-risk-summary{grid-template-columns:88px 1fr}.tf-maintenance-risk-metrics{grid-template-columns:1fr}}.tf-live-video{flex-shrink:0;margin-top:16px;border:1px solid var(--tf-line);border-radius:12px;background:var(--tf-surface-2);overflow:hidden}.tf-live-video-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--tf-line-2);color:var(--tf-ink)}.tf-live-video-header span{display:flex;gap:8px;align-items:center;font-weight:700}.tf-live-video-header small{color:var(--tf-ink-3)}.tf-live-video-start{padding:14px}.tf-live-video-start p{margin:0 0 12px;color:var(--tf-ink-2);font-size:13px}.tf-live-video button{min-height:40px;border:1px solid var(--tf-accent);border-radius:8px;padding:8px 12px;background:var(--tf-accent);color:#fff;font-weight:700;cursor:pointer}.tf-live-video-frame{min-height:180px;background:#101820;position:relative}.tf-live-video-frame video{display:block;width:100%;min-height:180px;object-fit:contain;background:#101820}.tf-live-video-frame video.is-hidden{display:none}.tf-live-video-status{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#fff;text-align:center}.tf-live-video-status span{font-size:12px;color:#c7d4df}.tf-live-video-error{padding:10px 14px;color:var(--tf-alert);font-size:13px}.tf-live-video-actions{display:flex;gap:8px;justify-content:flex-end;padding:10px 14px}.tf-live-video-actions .tf-live-video-stop{background:transparent;color:var(--tf-ink-2);border-color:var(--tf-line)}.tf-today-card{display:grid;gap:9px;padding:11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-today-head,.tf-today-head>div,.tf-today-primary,.tf-today-work,.tf-today-card footer{display:flex;align-items:center}.tf-today-head{justify-content:space-between}.tf-today-head>div{gap:7px}.tf-today-head span{color:var(--tf-ink-2);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tf-today-head strong,.tf-today-head b{font-size:10px}.tf-today-head strong{color:var(--tf-ink)}.tf-today-head b{padding:3px 6px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-today-pending{margin:0;padding:7px;border-radius:7px;background:var(--tf-warm-tint);color:var(--tf-ink-2);font-size:10.5px}.tf-today-primary{gap:7px}.tf-today-primary>div{flex:1;padding:8px;border-radius:8px;background:var(--tf-surface-2)}.tf-today-primary small,.tf-today-primary strong{display:block}.tf-today-primary small{color:var(--tf-ink-3);font-size:9px}.tf-today-primary strong{margin-top:2px;color:var(--tf-ink);font-size:16px;font-variant-numeric:tabular-nums}.tf-today-states{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0}.tf-today-states div{padding:6px 4px;border-top:3px solid currentColor;border-radius:6px;background:var(--tf-surface-2);text-align:center}.tf-today-states dt{font-size:8.5px}.tf-today-states dd{margin:2px 0 0;color:var(--tf-ink);font-size:10.5px;font-weight:750;font-variant-numeric:tabular-nums}.tf-today-states .is-running{color:var(--tf-run)}.tf-today-states .is-idle{color:var(--tf-idle)}.tf-today-states .is-stopped{color:var(--tf-stop)}.tf-today-states .is-inactive{color:var(--tf-offline)}.tf-today-work{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:7px 8px;border:1px solid var(--tf-line-2);border-radius:7px}.tf-today-work span{display:flex;align-items:center;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-today-work strong{color:var(--tf-ink);font-size:11.5px}.tf-today-work small{grid-column:1/-1;color:var(--tf-ink-3);font-size:9px}.tf-today-landmarks{display:grid;gap:6px}.tf-today-landmarks>div{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding-inline-start:8px;border-inline-start:2px solid var(--tf-accent)}.tf-today-landmarks span,.tf-today-landmarks small{color:var(--tf-ink-3);font-size:9px}.tf-today-landmarks strong{grid-column:1/-1;overflow:hidden;color:var(--tf-ink-2);font-size:10.5px;line-height:1.35;text-overflow:ellipsis}.tf-today-card footer{justify-content:space-between;padding-top:7px;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-3);font-size:9px}.tf-vehicle-artwork{width:108px;height:64px;display:grid;place-items:center;flex:0 0 auto;overflow:hidden;border-radius:12px;background:var(--tf-accent-tint)}.tf-vehicle-artwork img{width:94px;max-height:56px;object-fit:contain;display:block}@media (max-width: 420px){.tf-vehicle-artwork{width:84px;height:54px}.tf-vehicle-artwork img{width:76px;max-height:48px}}.tf-telemetry-artwork{width:20px;height:20px;object-fit:contain;flex:0 0 20px;opacity:.88}.tf-telemetry-artwork[data-icon=gps],.tf-telemetry-artwork[data-icon=satellites]{width:25px;height:25px;flex-basis:25px}.tf-inspector-evidence dt{display:flex;align-items:center;gap:5px}.tf-poi-panel{display:flex;flex-direction:column;height:100%;min-height:0}.tf-poi-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--tf-line);flex:none}.tf-poi-title{font-size:12.5px;font-weight:700;color:var(--tf-ink-2);text-transform:uppercase;letter-spacing:.04em}.tf-poi-close{width:24px;height:24px;display:grid;place-items:center;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-raised);color:var(--tf-ink-2);font-size:16px;line-height:1;cursor:pointer}.tf-poi-close:hover{border-color:var(--tf-accent);color:var(--tf-ink)}.tf-poi-filter{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--tf-line-soft);flex:none}.tf-poi-filter label{font-size:12px;color:var(--tf-ink-3)}.tf-poi-filter select,.tf-poi-form select,.tf-poi-form input{background:var(--tf-inset);border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);color:var(--tf-ink);font-size:12.5px;padding:6px 8px}.tf-poi-filter select{flex:1}.tf-poi-list{list-style:none;margin:0;padding:4px 0;overflow-y:auto;flex:1 1 auto;min-height:0}.tf-poi-row{display:flex;align-items:center;gap:8px;padding:7px 14px;border-bottom:1px solid var(--tf-line-soft);font-size:12.5px}.tf-poi-name{flex:1;color:var(--tf-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-poi-type{color:var(--tf-ink-3);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.tf-poi-row button{background:var(--tf-raised);border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);color:var(--tf-ink-2);font-size:11.5px;padding:4px 8px;cursor:pointer}.tf-poi-row button:hover{color:var(--tf-ink);border-color:var(--tf-accent)}.tf-poi-form{display:flex;flex-direction:column;gap:6px;padding:12px 14px 14px;border-top:1px solid var(--tf-line);flex:none}.tf-poi-form label{font-size:11.5px;color:var(--tf-ink-3);margin-top:4px}.tf-poi-form-title{font-size:12px;font-weight:700;color:var(--tf-ink-2);margin-bottom:2px}.tf-poi-form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tf-poi-form-actions{display:flex;gap:8px;margin-top:8px}.tf-poi-form-actions button[type=submit]{background:var(--tf-accent);border:1px solid var(--tf-accent);color:var(--tf-on-accent);font-weight:700;border-radius:var(--tf-r-sm);padding:7px 14px;font-size:12.5px;cursor:pointer}.tf-poi-form-actions button[type=submit]:disabled{opacity:.6;cursor:default}.tf-poi-form-actions button[type=button]{background:var(--tf-raised);border:1px solid var(--tf-line);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:7px 14px;font-size:12.5px;cursor:pointer}.tf-poi-form-error{color:var(--tf-alert);font-size:12px;margin:4px 0 0}.tf-poi-workspace{width:100%;height:100%;min-height:0;display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--tf-bg)}.tf-poi-workspace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.tf-poi-workspace-head span,.tf-poi-ledger header span{display:block;color:var(--tf-accent-strong);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.tf-poi-workspace-head h2,.tf-poi-ledger h3{margin:3px 0 2px;letter-spacing:-.02em}.tf-poi-workspace-head h2{font-size:20px}.tf-poi-workspace-head p{margin:0;color:var(--tf-ink-2)}.tf-poi-workspace-head>button{min-height:42px;padding:0 15px;border:0;border-radius:var(--tf-r-sm);display:flex;align-items:center;gap:7px;background:var(--tf-accent-strong);color:var(--tf-on-accent);font-weight:700;cursor:pointer}.tf-poi-customer{display:flex;align-items:center;gap:10px;color:var(--tf-ink-2);font-size:12px;font-weight:650}.tf-poi-customer select{min-width:260px;height:38px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink);padding:0 9px}.tf-poi-grid{flex:1;min-height:0;display:grid;grid-template-columns:280px minmax(380px,1fr) 340px;gap:12px}.tf-poi-ledger,.tf-poi-canvas,.tf-poi-editor{min-height:0;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r);box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-poi-ledger{display:flex;flex-direction:column}.tf-poi-ledger>header{padding:14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--tf-line-2)}.tf-poi-ledger h3{font-size:17px}.tf-poi-ledger header strong{font-size:20px}.tf-poi-type-guide{padding:8px;display:grid;gap:4px;border-bottom:1px solid var(--tf-line-2)}.tf-poi-type-guide button,.tf-poi-ledger-list button{width:100%;border:0;border-radius:9px;padding:9px;display:flex;gap:9px;align-items:center;background:transparent;color:var(--tf-ink);text-align:start;cursor:pointer}.tf-poi-type-guide button:hover,.tf-poi-ledger-list button:hover{background:var(--tf-surface-2)}.tf-poi-type-guide button[aria-pressed=true],.tf-poi-ledger-list button.is-selected{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-poi-type-guide span,.tf-poi-ledger-list span{min-width:0;display:grid;gap:2px}.tf-poi-type-guide small,.tf-poi-ledger-list small{color:var(--tf-ink-3);font-size:10px;text-transform:capitalize;white-space:normal}.tf-poi-type-guide p{margin:6px;color:var(--tf-ink-3);font-size:12px}.tf-poi-ledger-list{padding:8px;display:grid;gap:3px;overflow:auto}.tf-poi-canvas{position:relative}.tf-poi-map{position:absolute;top:0;right:0;bottom:0;left:0}.tf-poi-map-help{position:absolute;z-index:2;inset-inline-start:14px;top:14px;margin:0;padding:8px 10px;display:flex;align-items:center;gap:6px;border:1px solid var(--tf-line);border-radius:9px;background:color-mix(in srgb,var(--tf-surface) 94%,transparent);box-shadow:var(--tf-shadow-sm);color:var(--tf-ink-2);font-size:11px;pointer-events:none}.tf-poi-map-marker{width:28px;height:28px;border:3px solid var(--tf-surface);border-radius:50% 50% 50% 8px;display:grid;place-items:center;transform:rotate(-45deg);background:var(--tf-accent);color:var(--tf-surface);box-shadow:var(--tf-shadow);cursor:pointer}.tf-poi-map-marker span{transform:rotate(45deg);font-size:9px}.tf-poi-map-marker.is-selected{width:34px;height:34px;background:var(--tf-alert)}.tf-poi-editor{padding:4px;overflow:auto}.tf-poi-editor .tf-poi-form{border-top:0}.tf-poi-editor .tf-poi-form-title{font-size:17px;color:var(--tf-ink);margin-bottom:8px}.tf-poi-form-actions .is-delete{color:var(--tf-alert);border-color:color-mix(in srgb,var(--tf-alert) 30%,var(--tf-line));background:var(--tf-alert-tint)}.tf-poi-prerequisite{margin:0 0 8px;padding:10px;border-radius:9px;background:var(--tf-idle-tint);color:var(--tf-idle);font-size:12px;line-height:1.45}.tf-poi-editor :disabled{cursor:not-allowed;opacity:.58}@media (max-width:1100px){.tf-poi-grid{grid-template-columns:240px 1fr}.tf-poi-editor{position:absolute;inset-inline-end:24px;top:170px;bottom:24px;width:330px;z-index:4;box-shadow:var(--tf-shadow)}}@media (max-width:800px){.tf-poi-workspace{overflow:auto}.tf-poi-workspace-head{align-items:center}.tf-poi-workspace-head p{display:none}.tf-poi-grid{display:flex;flex-direction:column;min-height:1000px}.tf-poi-ledger{min-height:280px}.tf-poi-canvas{min-height:480px}.tf-poi-editor{position:static;width:auto;min-height:390px}.tf-poi-customer{align-items:stretch;flex-direction:column}.tf-poi-customer select{width:100%}}.tf-cold-pack{display:grid;gap:16px}.tf-cold-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.tf-cold-kpis article,.tf-reefer-card,.tf-cold-widget{border:1px solid var(--tf-line);border-radius:var(--tf-radius);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-cold-kpis article{display:grid;grid-template-columns:auto 1fr;gap:4px 9px;padding:15px}.tf-cold-kpis svg{grid-row:1/3;color:var(--tf-cold)}.tf-cold-kpis span{color:var(--tf-ink-3);font-size:11px}.tf-cold-kpis strong{font-size:22px;font-variant-numeric:tabular-nums}.tf-reefer-card,.tf-cold-widget{padding:18px}.tf-reefer-card>header,.tf-cold-widget>header,.tf-reefer-strip>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.tf-reefer-card h2,.tf-cold-widget h2{margin:3px 0;font-size:18px}.tf-reefer-card>header span:first-child{text-transform:uppercase;color:var(--tf-cold);font-size:10px;font-weight:750;letter-spacing:.1em}.tf-report-links{color:var(--tf-accent-strong);font-size:11px;font-weight:700}.tf-reefer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px}.tf-reefer-strip{padding:14px;border:1px solid var(--tf-line-2);border-radius:var(--tf-radius-sm);background:var(--tf-surface-2)}.tf-reefer-strip header>div,.tf-reefer-reading{display:flex;align-items:center;gap:7px}.tf-reefer-dot{padding:4px 8px;border-radius:999px;font-size:10px;font-weight:750}.tf-reefer-range{color:var(--tf-run);background:var(--tf-run-tint)}.tf-reefer-breach{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-reefer-unknown{color:var(--tf-ink-3);background:var(--tf-nodata-tint)}.tf-reefer-reading{margin-top:12px}.tf-reefer-reading svg,.tf-cold-widget header svg{color:var(--tf-cold)}.tf-reefer-reading strong{font-size:21px}.tf-reefer-reading small{margin-inline-start:auto;color:var(--tf-ink-3)}.tf-probe-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.tf-probe-chips span{padding:5px 7px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-cold-tint);font-size:10px}.tf-cold-detail{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tf-cold-widget header{justify-content:flex-start}.tf-compliance-verdict{margin-inline-start:auto;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800}.tf-verdict-pass{color:var(--tf-run);background:var(--tf-run-tint)}.tf-verdict-fail{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-cold-widget dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.tf-cold-widget dl div{padding:10px;border-radius:8px;background:var(--tf-surface-2)}.tf-cold-widget dt{color:var(--tf-ink-3);font-size:10px}.tf-cold-widget dd{margin:4px 0 0;font-weight:750;font-variant-numeric:tabular-nums}.tf-cold-widget button{display:flex;align-items:center;gap:7px;min-height:40px;padding:0 13px;border:0;border-radius:8px;background:var(--tf-accent);color:#fff;font-weight:700}.tf-cold-widget p{color:var(--tf-ink-3);font-size:11px}@media (max-width:1000px){.tf-cold-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width:680px){.tf-cold-kpis,.tf-reefer-list,.tf-cold-detail{grid-template-columns:1fr}}.tf-drawer-backdrop{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;background:#0e1b2a57;display:flex;justify-content:flex-end}.tf-dashboard-drawer{width:min(520px,100%);height:100%;display:flex;flex-direction:column;padding:20px;background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-dashboard-drawer>header{display:flex;align-items:flex-start;justify-content:space-between}.tf-dashboard-drawer h2{margin:4px 0 0}.tf-dashboard-drawer>header span,.tf-widget-catalog small{color:var(--tf-ink-3);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.tf-dashboard-drawer>header button{width:38px;height:38px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface-2);font-size:22px}.tf-drawer-search{display:flex;align-items:center;gap:8px;margin:16px 0;padding:0 11px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface-2)}.tf-drawer-search input{width:100%;min-height:42px;border:0;background:transparent;outline:0}.tf-widget-catalog{display:grid;gap:8px;overflow:auto}.tf-widget-catalog article{display:grid;grid-template-columns:minmax(150px,1fr) auto 95px auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--tf-line);border-radius:10px}.tf-widget-catalog article>div:first-child{display:grid;gap:3px}.tf-widget-catalog label{display:flex;align-items:center;gap:5px;font-size:11px}.tf-widget-catalog select,.tf-reorder button{min-height:34px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink)}.tf-reorder{display:flex;gap:4px}.tf-reorder button{width:34px}.tf-protected-warning{margin-top:10px;padding:12px;border:1px solid var(--tf-idle);border-radius:10px;background:var(--tf-idle-tint)}.tf-protected-warning p{margin:0 0 8px}.tf-protected-warning button{margin-inline-end:6px}.tf-dashboard-drawer>footer{display:flex;gap:8px;margin-top:auto;padding-top:16px}.tf-dashboard-drawer>footer span{flex:1}.tf-dashboard-drawer>footer button,.tf-protected-warning button{min-height:38px;padding:0 12px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface)}.tf-dashboard-drawer .tf-primary{border-color:var(--tf-accent);background:var(--tf-accent);color:#fff}@media (max-width:620px){.tf-widget-catalog article{grid-template-columns:1fr auto}.tf-widget-catalog select{grid-column:1}.tf-dashboard-drawer{padding:15px}}.tf-scope-filters{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}.tf-scope-filters label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-scope-filters select{min-height:38px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink)}.tf-scope-summary{margin:0 0 9px;color:var(--tf-ink-3);font-size:11px}.tf-scope-vehicles{display:grid;gap:5px;max-height:360px;overflow:auto}.tf-scope-vehicles>label{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid var(--tf-line-2);border-radius:8px}.tf-scope-vehicles span{display:grid;gap:2px}.tf-scope-vehicles small{color:var(--tf-ink-3);text-transform:capitalize}@media (max-width:620px){.tf-scope-filters{grid-template-columns:1fr}}.tf-capability-filter{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0;padding:10px;border:1px solid var(--tf-line);border-radius:10px}.tf-capability-filter legend{padding:0 5px;color:var(--tf-ink-3);font-size:10px;font-weight:700}.tf-capability-filter label{display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:10px}.tf-scope-update-note{margin:10px 0;padding:8px;border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:10px}.tf-scope-online{width:8px;height:8px;border-radius:50%;background:var(--tf-offline);flex:0 0 auto}.tf-scope-online.is-online{background:var(--tf-run)}.tf-scope-vehicles em{display:flex;flex-wrap:wrap;gap:3px;font-style:normal}.tf-scope-vehicles em b{padding:2px 5px;border-radius:999px;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:9px;text-transform:uppercase}.tf-scope-pages{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.tf-scope-pages button{min-height:34px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface)}.tf-scope-pages span{color:var(--tf-ink-3);font-size:10px;font-variant-numeric:tabular-nums}.tf-save-view{display:grid;gap:10px;margin:18px 0;padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-radius-sm);background:var(--tf-surface-2)}.tf-save-view>label:first-child{display:grid;gap:5px;color:var(--tf-ink-2);font-size:11px;font-weight:700}.tf-save-view input[type=text],.tf-save-view input:not([type]){min-height:38px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink)}.tf-share-view{display:flex;gap:7px;align-items:center}.tf-save-view button{min-height:38px;border:0;border-radius:8px;background:var(--tf-accent);color:#fff}.tf-saved-view-list{display:grid;gap:8px;overflow:auto}.tf-saved-view-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center;padding:11px;border:1px solid var(--tf-line);border-radius:10px}.tf-saved-view-list article>div{display:grid;gap:3px}.tf-saved-view-list small{color:var(--tf-ink-3)}.tf-saved-view-list button{min-height:34px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface)}.tf-operational-widget{min-height:244px}.tf-operational-widget-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-operational-widget>.tf-state{min-height:132px;margin-top:4px;padding:16px;border:1px dashed var(--tf-line);border-radius:10px;background:var(--tf-surface-2)}.tf-operational-widget>.tf-state-empty{place-content:center;justify-items:start;text-align:start}.tf-insurance-consent{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;margin:-4px 0 14px;padding:9px;border-radius:10px;background:var(--tf-surface-2);box-shadow:inset 0 0 0 1px var(--tf-line-2)}.tf-insurance-consent.is-consented{background:var(--tf-run-tint)}.tf-insurance-consent>span{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-insurance-consent>div{display:grid;gap:2px}.tf-insurance-consent b{font-size:10px}.tf-insurance-consent small{color:var(--tf-ink-3);font-size:9px}.tf-insurance-consent label{min-height:40px;display:flex;align-items:center;gap:6px;cursor:pointer}.tf-insurance-consent input{position:absolute;opacity:0;pointer-events:none}.tf-insurance-consent label i{width:34px;height:20px;position:relative;border-radius:99px;background:var(--tf-stop-tint);box-shadow:inset 0 0 0 1px var(--tf-line)}.tf-insurance-consent label i:after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:14px;height:14px;border-radius:50%;background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);transition:transform .18s cubic-bezier(.23,1,.32,1)}.tf-insurance-consent input:checked+i{background:var(--tf-run)}.tf-insurance-consent input:checked+i:after{transform:translate(14px)}.tf-insurance-consent input:focus-visible+i{outline:2px solid var(--tf-accent);outline-offset:3px}.tf-insurance-consent label strong{color:var(--tf-ink-2);font-size:9px}.tf-insurance-locked{min-height:112px;display:flex;align-items:center;justify-content:center;gap:12px;padding:18px;border:1px dashed var(--tf-line);border-radius:10px;color:var(--tf-ink-3)}.tf-insurance-locked div{display:grid;gap:4px}.tf-insurance-locked strong{color:var(--tf-ink);font-size:12px}.tf-insurance-locked span{max-width:260px;font-size:10px;line-height:1.4}.tf-insurance-evidence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px 0 0}.tf-insurance-evidence div{display:grid;gap:3px;padding:8px;border-radius:8px;background:var(--tf-surface-2)}.tf-insurance-evidence dt{color:var(--tf-ink-3);font-size:9px}.tf-insurance-evidence dd{margin:0;color:var(--tf-ink);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.tf-score-summary{display:grid;grid-template-columns:112px 1fr;align-items:center;gap:20px}.tf-score-orb{width:108px;height:108px;display:grid;place-content:center;border-radius:50%;border:9px solid currentColor;background:var(--tf-surface);text-align:center}.tf-score-orb strong{font-size:34px;line-height:1;font-variant-numeric:tabular-nums}.tf-score-orb span{margin-top:3px;color:var(--tf-ink-3);font-size:10px}.tf-score-band{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.tf-score-summary dl{display:flex;gap:20px;margin:17px 0 0}.tf-score-summary dl div{display:grid;gap:4px}.tf-score-summary dt{color:var(--tf-ink-3);font-size:10px}.tf-score-summary dd{margin:0;font-size:18px;font-weight:750;font-variant-numeric:tabular-nums}.tf-score-run{color:var(--tf-run);background:var(--tf-run-tint)}.tf-score-accent{color:var(--tf-accent-strong);background:var(--tf-accent-tint)}.tf-score-idle{color:var(--tf-idle);background:var(--tf-idle-tint)}.tf-score-alert{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-score-distribution{display:grid;gap:8px}.tf-score-distribution>div{display:grid;grid-template-columns:minmax(70px,1fr) 62px 22px;align-items:center;gap:8px}.tf-score-distribution span{height:7px;border-radius:99px;background:var(--tf-line-2);overflow:hidden}.tf-score-distribution i{display:block;height:100%;min-width:2px;border-radius:inherit}.tf-score-distribution small{color:var(--tf-ink-3);font-size:10px}.tf-score-distribution b{text-align:end;font-size:11px;font-variant-numeric:tabular-nums}.tf-policy-extremes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.tf-policy-extremes span{display:grid;gap:4px;padding:9px;border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:9px}.tf-policy-extremes b{overflow:hidden;color:var(--tf-ink);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.tf-widget-disclaimer{margin:10px 0 0;color:var(--tf-ink-3);font-size:9px}.tf-reminder-summary{display:flex;align-items:baseline;gap:7px}.tf-reminder-summary strong{font-size:30px;line-height:1;font-variant-numeric:tabular-nums}.tf-reminder-summary span{color:var(--tf-ink-2);font-size:11px}.tf-reminder-summary>b{margin-inline-start:auto;padding:4px 7px;border-radius:99px;background:var(--tf-alert-tint);color:var(--tf-alert);font-size:9px}.tf-reminder-preview{display:grid;margin:14px 0 10px;padding:0;list-style:none}.tf-reminder-preview li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;border-top:1px solid var(--tf-line-2)}.tf-reminder-preview li>span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-reminder-preview li>span.is-overdue{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-reminder-preview li div{display:grid;min-width:0}.tf-reminder-preview li b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.tf-reminder-preview li small,.tf-reminder-preview time{color:var(--tf-ink-3);font-size:9px}.tf-widget-link{display:flex;align-items:center;gap:5px;margin-inline-start:auto;padding:0;border:0;background:transparent;color:var(--tf-accent-strong);font:700 10px var(--tf-sans);cursor:pointer}.tf-widget-link:hover{text-decoration:underline}.tf-widget-link:focus-visible{outline:2px solid var(--tf-focus);outline-offset:3px}.tf-driver-preview{display:grid;margin:0 0 10px;padding:0;list-style:none}.tf-driver-preview li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:39px;border-top:1px solid var(--tf-line-2)}.tf-driver-preview li:first-child{border-top:0}.tf-driver-rank{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:10px;font-weight:750}.tf-driver-rank-1{background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-driver-rank-2{background:var(--tf-stop-tint);color:var(--tf-stop)}.tf-driver-rank-3{background:var(--tf-warm-tint);color:var(--tf-warm)}.tf-driver-preview li>div{display:grid;min-width:0;gap:2px}.tf-driver-preview li b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.tf-driver-preview li small{color:var(--tf-ink-3);font-size:9px}.tf-driver-preview li>strong{min-width:45px;padding:5px 7px;border-radius:8px;text-align:center;font-size:11px;font-variant-numeric:tabular-nums}.tf-score-pending{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface-2)}.tf-score-pending>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-score-pending>div{display:grid;gap:3px}.tf-score-pending strong{font-size:12px}.tf-score-pending p{margin:0;color:var(--tf-ink-3);font-size:9px;line-height:1.4}.tf-score-pending dl{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:2px 0 0}.tf-score-pending dl div{padding:7px;border-radius:7px;background:var(--tf-surface)}.tf-score-pending dt{color:var(--tf-ink-3);font-size:8px}.tf-score-pending dd{margin:2px 0 0;font-size:10px;font-weight:750;font-variant-numeric:tabular-nums}.tf-score-pending-chip{background:var(--tf-idle-tint);color:var(--tf-idle);font-size:9px!important}.tf-score-coverage{margin:9px 0 0;color:var(--tf-ink-3);font-size:9px}.tf-ignition-composition{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tf-ignition-composition>div{display:grid;grid-template-columns:1fr auto;align-items:end;gap:3px;padding:12px;border-radius:10px;background:var(--tf-surface-2);box-shadow:inset 0 0 0 1px var(--tf-line-2)}.tf-ignition-composition strong{grid-column:1/-1;font-size:28px;line-height:1;font-variant-numeric:tabular-nums}.tf-ignition-composition span{font-size:11px;font-weight:750}.tf-ignition-composition small{color:var(--tf-ink-3);font-size:9px;font-variant-numeric:tabular-nums}.tf-ignition-run strong{color:var(--tf-run)}.tf-ignition-stop strong{color:var(--tf-stop)}.tf-ignition-offline strong{color:var(--tf-offline)}.tf-ignition-coverage{display:flex;align-items:center;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-3);font-size:10px}.tf-ignition-coverage b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-ignition-coverage .tf-widget-link{margin-inline-start:auto}@media (max-width:620px){.tf-score-summary{grid-template-columns:92px 1fr}.tf-score-orb{width:90px;height:90px;border-width:7px}.tf-policy-extremes,.tf-insurance-evidence{grid-template-columns:1fr}.tf-insurance-consent{grid-template-columns:32px 1fr}.tf-insurance-consent label{grid-column:1/-1;justify-content:flex-end}.tf-ignition-composition{grid-template-columns:1fr}.tf-ignition-coverage{align-items:flex-start;flex-direction:column}.tf-ignition-coverage .tf-widget-link{margin-inline-start:0}}.tf-branch-summary{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:16px;margin:-2px 0 10px;padding:9px 11px;border-radius:10px;background:var(--tf-surface-2)}.tf-branch-summary>div{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:5px}.tf-branch-summary strong{font-size:21px;line-height:1;color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-branch-summary span{color:var(--tf-ink-2);font-size:9px;font-weight:700}.tf-branch-summary small{justify-self:end;color:var(--tf-ink-3);font-size:9px}.tf-branch-list{display:grid}.tf-branch-list>button{min-height:50px;display:grid;grid-template-columns:minmax(120px,1.2fr) minmax(120px,1fr) minmax(100px,1.2fr) minmax(190px,1.5fr) 18px;align-items:center;gap:10px;padding:7px 5px;border:0;border-top:1px solid var(--tf-line-2);background:transparent;color:var(--tf-ink);font:inherit;text-align:start;cursor:pointer}.tf-branch-list>button:first-child{border-top:0}.tf-branch-list>button:hover{background:var(--tf-surface-2)}.tf-branch-list>button:focus-visible{position:relative;z-index:1;outline:2px solid var(--tf-focus);outline-offset:-2px}.tf-branch-list>button:disabled{cursor:default;opacity:.75}.tf-branch-list>button>svg{transform:rotate(-90deg);color:var(--tf-ink-3)}.tf-branch-identity{display:grid;min-width:0;gap:2px}.tf-branch-identity b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.tf-branch-identity small{color:var(--tf-ink-3);font-size:9px}.tf-branch-alerts,.tf-branch-status{display:flex;align-items:center;gap:5px;min-width:0;white-space:nowrap}.tf-branch-alerts i,.tf-branch-status i{font-size:8px;font-style:normal;font-weight:750}.tf-branch-alerts i{padding:4px 6px;border-radius:999px}.tf-branch-alerts .is-critical{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-branch-alerts .is-warning{background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-branch-alerts .is-clear{background:var(--tf-run-tint);color:var(--tf-run)}.tf-branch-alerts .is-unknown{background:var(--tf-stop-tint);color:var(--tf-stop)}.tf-branch-composition{height:7px;display:flex;overflow:hidden;border-radius:99px;background:var(--tf-line-2)}.tf-branch-composition i{min-width:0}.tf-branch-composition i[style*="flex-grow: 0"]{display:none}.tf-branch-composition .is-moving{background:var(--tf-status-moving)}.tf-branch-composition .is-idle{background:var(--tf-status-idle)}.tf-branch-composition .is-stopped{background:var(--tf-status-stopped)}.tf-branch-composition .is-inactive{background:var(--tf-status-inactive)}.tf-branch-status{justify-content:flex-end;overflow:hidden}.tf-branch-status .is-moving{color:var(--tf-status-moving)}.tf-branch-status .is-idle{color:var(--tf-status-idle)}.tf-branch-status .is-stopped{color:var(--tf-status-stopped)}.tf-branch-status .is-inactive{color:var(--tf-status-inactive)}@media (max-width:840px){.tf-branch-list>button{grid-template-columns:minmax(120px,1fr) minmax(115px,auto) 18px}.tf-branch-composition,.tf-branch-status{display:none}}@media (max-width:620px){.tf-branch-summary{grid-template-columns:1fr 1fr}.tf-branch-summary small{grid-column:1/-1;justify-self:start}.tf-branch-list>button{grid-template-columns:minmax(0,1fr) auto 18px}.tf-branch-alerts{justify-content:flex-end}}.tf-branch-alerts .is-info{background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-fuel-headline{display:flex;align-items:baseline;gap:6px}.tf-fuel-headline strong{font-size:30px;line-height:1;font-variant-numeric:tabular-nums;color:var(--tf-fuel)}.tf-fuel-headline span{color:var(--tf-ink-3);font-size:11px}.tf-fuel-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 0}.tf-fuel-facts div{padding:9px;border-radius:9px;background:var(--tf-surface-2)}.tf-fuel-facts dt{color:var(--tf-ink-3);font-size:9px}.tf-fuel-facts dd{margin:3px 0 0;font-size:12px;font-weight:750;font-variant-numeric:tabular-nums}.tf-fuel-events{display:grid;margin:14px 0 0;padding:0;list-style:none}.tf-fuel-events li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;border-top:1px solid var(--tf-line-2)}.tf-fuel-events li:first-child{border-top:0}.tf-fuel-events li>span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px}.tf-fuel-events li>span.is-fill{background:var(--tf-run-tint);color:var(--tf-run)}.tf-fuel-events li>span.is-drain{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-fuel-events li div{display:grid;min-width:0}.tf-fuel-events li b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.tf-fuel-events li small{color:var(--tf-ink-3);font-size:9px}.tf-fuel-events li strong{font-size:11px;font-variant-numeric:tabular-nums}.tf-fuel-events li strong.is-fill{color:var(--tf-run)}.tf-fuel-events li strong.is-drain{color:var(--tf-alert)}.tf-waste-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0 0}.tf-waste-facts div{padding:9px;border-radius:9px;background:var(--tf-surface-2)}.tf-waste-facts dt{color:var(--tf-ink-3);font-size:9px}.tf-waste-facts dd{margin:3px 0 0;font-size:12px;font-weight:750;font-variant-numeric:tabular-nums}.tf-health-composition{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px}.tf-health-composition>div{display:grid;grid-template-columns:1fr auto;align-items:end;gap:3px;padding:12px;border-radius:10px;background:var(--tf-surface-2);box-shadow:inset 0 0 0 1px var(--tf-line-2)}.tf-health-composition strong{grid-column:1/-1;font-size:24px;line-height:1;font-variant-numeric:tabular-nums}.tf-health-composition span{font-size:10px;font-weight:750}.tf-health-composition small{color:var(--tf-ink-3);font-size:9px;font-variant-numeric:tabular-nums}.tf-health-run strong{color:var(--tf-run)}.tf-health-idle strong{color:var(--tf-idle)}.tf-health-alert strong{color:var(--tf-alert)}.tf-health-offline strong{color:var(--tf-offline)}.tf-health-nofix strong{color:var(--tf-stop)}.tf-health-rank-run{background:var(--tf-run-tint);color:var(--tf-run)}.tf-health-rank-idle{background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-health-rank-alert{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-health-rank-offline{background:var(--tf-offline-tint);color:var(--tf-offline)}.tf-health-rank-nofix{background:var(--tf-stop-tint);color:var(--tf-stop)}.tf-report-shortcuts{display:grid;margin:2px 0 0;padding:0;list-style:none}.tf-report-shortcuts li+li{margin-top:6px}.tf-report-shortcuts button{display:grid;grid-template-columns:26px minmax(0,1fr) 15px;align-items:center;gap:9px;width:100%;padding:9px;border:1px solid var(--tf-line-2);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink);text-align:start;cursor:pointer}.tf-report-shortcuts button:hover{border-color:var(--tf-accent)}.tf-report-shortcuts button>span:first-child{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-report-shortcuts button>span:nth-child(2){display:grid;min-width:0;gap:2px}.tf-report-shortcuts button b{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.tf-report-shortcuts button small{overflow:hidden;color:var(--tf-ink-3);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.tf-report-shortcuts button>svg:last-child{color:var(--tf-ink-3)}@media (max-width:620px){.tf-fuel-facts,.tf-waste-facts{grid-template-columns:1fr 1fr}}.tf-ticket-summary{display:flex;align-items:baseline;gap:7px}.tf-ticket-summary strong{color:var(--tf-ink);font-size:26px;font-weight:700;font-variant-numeric:tabular-nums}.tf-ticket-summary span{color:var(--tf-ink-3);font-size:12px}.tf-ticket-priorities{display:grid;gap:4px;margin:10px 0 0;padding:0;list-style:none}.tf-ticket-priorities li{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--tf-line-soft);font-size:12.5px}.tf-ticket-priorities li:last-child{border-bottom:0}.tf-ticket-priorities b{flex:1;color:var(--tf-ink-2);font-weight:600}.tf-ticket-priorities em{color:var(--tf-ink);font-style:normal;font-weight:700;font-variant-numeric:tabular-nums}.tf-ticket-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--tf-nodata)}.tf-ticket-priorities li[data-priority=urgent] .tf-ticket-dot{background:var(--tf-stop)}.tf-ticket-priorities li[data-priority=high] .tf-ticket-dot{background:var(--tf-idle)}.tf-ticket-priorities li[data-priority=normal] .tf-ticket-dot{background:var(--tf-run)}.tf-ticket-priorities li[data-priority=low] .tf-ticket-dot{background:var(--tf-ink-3)}.tf-ticket-resolution{margin:9px 0 0;color:var(--tf-ink-3);font-size:11.5px;line-height:1.4}.tf-idle-waste-card{background:linear-gradient(145deg,var(--tf-surface),var(--tf-warm-tint))}.tf-idle-waste-card .tf-idle-waste-basis{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0 0;padding:0;list-style:none}.tf-idle-waste-card .tf-idle-waste-basis li{display:inline-flex;align-items:baseline;gap:5px;padding:3px 7px;border:1px solid var(--tf-line-2);border-radius:999px;background:var(--tf-surface-2);font-size:10px;line-height:1.4}.tf-idle-waste-card .tf-idle-waste-basis b{color:var(--tf-ink);font-weight:700;font-variant-numeric:tabular-nums}.tf-idle-waste-card .tf-idle-waste-basis em{color:var(--tf-ink-3);font-style:normal;font-size:9px}.tf-idle-waste-card .tf-idle-waste-basis li[data-source=company]{border-color:var(--tf-ok-line);background:var(--tf-ok-tint)}.tf-idle-waste-card .tf-idle-waste-basis li[data-source=company] em{color:var(--tf-ok-ink)}.tf-idle-waste-card .tf-idle-waste-basis li[data-source=default]{border-color:var(--tf-warn-line);background:var(--tf-warn-bg)}.tf-idle-waste-card .tf-idle-waste-basis li[data-source=default] em{color:var(--tf-warn-ink)}.tf-idle-waste-card .tf-idle-waste-basis li[data-source=unset]{border-style:dashed;border-color:var(--tf-line-strong);background:transparent}.tf-idle-waste-card .tf-idle-waste-basis li[data-source=unset] b{color:var(--tf-ink-3);font-weight:650}.tf-idle-waste-card p.tf-idle-waste-missing{color:var(--tf-ink-3);font-weight:600}.tf-idle-waste-card .tf-idle-waste-configure{margin-top:7px;padding:0;border:0;background:transparent;color:var(--tf-accent-strong);font:inherit;font-size:10px;font-weight:700;text-align:start;text-decoration:underline;cursor:pointer}.tf-idle-waste-card .tf-idle-waste-configure:focus-visible{outline:2px solid var(--tf-focus);outline-offset:2px}.tf-idle-waste-card small.tf-idle-waste-configure-hint{color:var(--tf-accent-strong);font-weight:700}.tf-fh{display:flex;flex-direction:column;gap:12px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-fh-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-fh-head span{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-fh-head h2{margin:2px 0 0;font-size:15px;font-weight:650;color:var(--tf-ink)}.tf-fh-controls{display:flex;align-items:center;gap:8px}.tf-fh-class{display:flex;align-items:center;gap:0;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);padding:0;margin:0}.tf-fh-class legend{font-size:10.5px;color:var(--tf-ink-3);padding:0 4px}.tf-fh-class button{border:0;background:transparent;color:var(--tf-ink-2);font-size:11.5px;padding:4px 9px;cursor:pointer}.tf-fh-class button+button{border-left:1px solid var(--tf-line)}.tf-fh-class button.tf-fh-on{background:var(--tf-accent-tint);color:var(--tf-ink);font-weight:620}.tf-fh-refresh{display:inline-flex;align-items:center;border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 7px;cursor:pointer}.tf-fh-truncated{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-warn-ink);background:var(--tf-warn-tint);border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm);padding:6px 9px}.tf-fh-none,.tf-fh-clear{margin:0;font-size:12px;color:var(--tf-ink-2)}.tf-fh-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:10px}.tf-fh-tile{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);min-width:0}.tf-fh-tile h3{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;font-weight:620;color:var(--tf-ink-2)}.tf-fh-headline{margin:0;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.tf-fh-headline strong{font-size:26px;line-height:1;font-weight:680;color:var(--tf-ink)}.tf-fh-headline span{font-size:11.5px;color:var(--tf-ink-3)}.tf-fh-headline.tf-fh-bad strong{color:var(--tf-bad)}.tf-fh-headline.tf-fh-warn strong{color:var(--tf-warn)}.tf-fh-headline.tf-fh-ok strong{color:var(--tf-ok)}.tf-fh-chips{list-style:none;display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0}.tf-fh-chips li{font-size:11px;padding:2px 7px;border-radius:999px;border:1px solid var(--tf-line);color:var(--tf-ink-2);background:var(--tf-surface-2)}.tf-fh-chips li.tf-fh-bad{color:var(--tf-bad-ink);background:var(--tf-bad-tint);border-color:var(--tf-bad-line)}.tf-fh-chips li.tf-fh-warn{color:var(--tf-warn-ink);background:var(--tf-warn-tint);border-color:var(--tf-warn-line)}.tf-fh-chips li.tf-fh-ok{color:var(--tf-ok-ink);background:var(--tf-ok-tint);border-color:var(--tf-ok-line)}.tf-fh-buckets{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}.tf-fh-buckets li{display:flex;flex-direction:column;min-width:54px}.tf-fh-buckets b{font-size:15px;font-weight:650;color:var(--tf-ink)}.tf-fh-buckets span{font-size:10.5px;color:var(--tf-ink-3)}.tf-fh-buckets li.tf-fh-bad b{color:var(--tf-bad)}.tf-fh-rule{margin:0;font-size:11px;line-height:1.5;color:var(--tf-ink-3)}.tf-fh-caveat{margin:0;font-size:11px;line-height:1.5;color:var(--tf-ink-2);border-left:2px solid var(--tf-line-strong);padding-left:8px}.tf-fh-caveat.tf-fh-lead{border-left-color:var(--tf-warn)}.tf-fh-unmeasured{display:flex;align-items:center;gap:5px;margin:0;font-size:11px;line-height:1.4;color:var(--tf-ink-3)}.tf-fh-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--tf-line)}.tf-fh-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--tf-ink-3);font-size:12px;padding:6px 10px;cursor:pointer}.tf-fh-tabs button b{font-weight:650;color:var(--tf-ink-2)}.tf-fh-tabs button.tf-fh-on{color:var(--tf-ink);border-bottom-color:var(--tf-accent)}.tf-fh-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.tf-fh-list li+li{border-top:1px solid var(--tf-line-soft)}.tf-fh-list li>button,.tf-fh-list li>span{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.7fr) minmax(0,1fr);align-items:baseline;gap:8px;width:100%;text-align:start;border:0;background:transparent;padding:6px 4px;font-size:12px;color:var(--tf-ink-2)}.tf-fh-list li>button{cursor:pointer}.tf-fh-list li>button:hover{background:var(--tf-surface-2)}.tf-fh-list li>button:focus-visible{outline:2px solid var(--tf-focus);outline-offset:-2px}.tf-fh-list b{font-weight:620;color:var(--tf-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-fh-list em{font-style:normal;font-size:11.5px}.tf-fh-list em.tf-fh-bad{color:var(--tf-bad-ink)}.tf-fh-list em.tf-fh-warn{color:var(--tf-warn-ink)}.tf-fh-list small{font-size:11px;color:var(--tf-ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-fh-showing{margin:6px 0 0;font-size:11px;color:var(--tf-ink-3)}@media (max-width: 640px){.tf-fh-list li>button,.tf-fh-list li>span{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.tf-bookends-card{display:grid;gap:9px;padding:11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-bookends-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.tf-bookends-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.tf-bookends-head>div{display:flex;align-items:center;gap:7px}.tf-bookends-head span{color:var(--tf-ink-2);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tf-bookends-head strong{color:var(--tf-ink);font-size:10px;font-variant-numeric:tabular-nums}.tf-bookends-head b{padding:3px 6px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:10px}.tf-bookends-absent-fleet{margin:0;color:var(--tf-ink-3);font-size:10.5px}.tf-bookends-rows{display:grid;gap:7px}.tf-bookend{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;padding:7px 9px;border-inline-start:2px solid var(--tf-accent);border-radius:0 7px 7px 0;background:var(--tf-surface-2)}.tf-bookend.is-stop{border-inline-start-color:var(--tf-stop)}.tf-bookend-label{grid-column:1/-1;color:var(--tf-ink-3);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.tf-bookend-time{color:var(--tf-ink);font-size:13px;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}.tf-bookend-place{display:-webkit-box;margin:0;overflow:hidden;color:var(--tf-ink-2);font-size:11px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.tf-bookend-caveat{color:var(--tf-ink-3);font-size:9.5px;font-style:normal}.tf-bookend-meta{display:flex;grid-column:2;align-items:center;gap:7px;flex-wrap:wrap}.tf-bookend-vehicle{padding:2px 6px;border-radius:999px;background:var(--tf-surface);color:var(--tf-ink-2);font-size:9.5px;font-weight:700}button.tf-bookend-vehicle{border:1px solid var(--tf-line-2);cursor:pointer;font-family:inherit}button.tf-bookend-vehicle:hover{border-color:var(--tf-accent);color:var(--tf-accent-ink)}button.tf-bookend-vehicle:focus-visible{outline:2px solid var(--tf-focus);outline-offset:1px}.tf-bookend-dwell{color:var(--tf-ink-3);font-size:9px}.tf-bookend.is-absent .tf-bookend-absent{grid-column:1/-1;margin:0;color:var(--tf-ink-3);font-size:10.5px}.tf-bookends-notstarted{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding:7px 8px;border:1px solid var(--tf-line-2);border-radius:7px}.tf-bookends-notstarted-count{color:var(--tf-ink-2);font-size:10.5px}.tf-bookends-notstarted-count strong{color:var(--tf-warn-ink,var(--tf-ink));font-size:14px;font-variant-numeric:tabular-nums}.tf-bookends-notstarted-names{flex:1;min-width:0;overflow:hidden;color:var(--tf-ink-3);font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.tf-bookends-allout{margin:0;padding:7px 8px;border-radius:7px;background:var(--tf-ok-tint);color:var(--tf-ok-ink);font-size:10.5px}.tf-bookends-pending{margin:0;padding:7px 8px;border-radius:7px;background:var(--tf-warm-tint);color:var(--tf-ink-2);font-size:10.5px}.tf-bookends-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:7px;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-3);font-size:9px}.tf-bookends-card footer span{display:flex;align-items:center;gap:4px}@media (max-width:420px){.tf-bookend{grid-template-columns:1fr}.tf-bookend-meta{grid-column:1}}.tf-ffe-card{display:grid;gap:14px;padding:18px;border:1px solid var(--tf-line);border-radius:var(--tf-radius);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-ffe-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tf-ffe-card h2{margin:3px 0 0;font-size:18px}.tf-ffe-eyebrow{color:var(--tf-fuel);font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.tf-ffe-asof{color:var(--tf-ink-3);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.tf-ffe-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.tf-ffe-kpis>div{padding:10px;border-radius:var(--tf-radius-sm);background:var(--tf-surface-2)}.tf-ffe-kpis dt{color:var(--tf-ink-3);font-size:10px}.tf-ffe-kpis dd{margin:4px 0 0;font-size:19px;font-weight:750;font-variant-numeric:tabular-nums}.tf-ffe-drain{color:var(--tf-alert)}.tf-ffe-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.tf-ffe-row{display:grid;grid-template-columns:minmax(88px,auto) minmax(0,1fr) minmax(0,2fr) auto;align-items:center;gap:12px;width:100%;padding:10px 12px;border:1px solid var(--tf-line-2);border-radius:var(--tf-radius-sm);background:var(--tf-surface-2);color:inherit;font:inherit;text-align:start}.tf-ffe-row-action{cursor:pointer}.tf-ffe-row-action:hover{border-color:var(--tf-accent);background:var(--tf-accent-tint)}.tf-ffe-row-action:focus-visible{outline:2px solid var(--tf-focus);outline-offset:1px}.tf-ffe-amount{display:flex;align-items:center;gap:6px;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.tf-ffe-amount.tf-ffe-drain{color:var(--tf-alert)}.tf-ffe-amount.tf-ffe-refuel{color:var(--tf-ink-2)}.tf-ffe-vehicle{display:grid;min-width:0}.tf-ffe-vehicle strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.tf-ffe-vehicle small,.tf-ffe-where{color:var(--tf-ink-3);font-size:11px}.tf-ffe-where{display:flex;align-items:center;gap:5px;min-width:0}.tf-ffe-where>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-ffe-noplace{color:var(--tf-nodata);font-style:italic}.tf-ffe-time{color:var(--tf-ink-2);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.tf-ffe-inconclusive{display:flex;gap:10px;padding:13px;border:1px solid var(--tf-warn-line);border-radius:var(--tf-radius-sm);background:var(--tf-warn-bg);color:var(--tf-warn-ink)}.tf-ffe-inconclusive strong{font-size:13px}.tf-ffe-inconclusive p{margin:4px 0 0;font-size:11px;opacity:.9}.tf-ffe-note{display:flex;align-items:center;gap:6px;margin:0;color:var(--tf-ink-3);font-size:11px}.tf-ffe-note.tf-ffe-warn{color:var(--tf-warn-ink)}@media (max-width: 900px){.tf-ffe-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-ffe-row{grid-template-columns:minmax(88px,auto) minmax(0,1fr) auto}.tf-ffe-where{grid-column:1 / -1}}.tf-dashboard{height:100%;min-height:0;overflow:auto;overscroll-behavior:contain;padding:28px 32px 38px;background:var(--tf-bg)}.tf-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}.tf-dashboard-head h1{margin:5px 0 2px;font-size:30px;line-height:1;font-weight:750;letter-spacing:-.035em}.tf-dashboard-head p{margin:8px 0 0;color:var(--tf-ink-3);font-size:12px}.tf-dash-eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--tf-ink-3);font-size:10px;font-weight:750}.tf-dashboard-controls{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.tf-range-switcher,.tf-pack-switcher{display:flex;gap:3px;padding:4px;border:1px solid var(--tf-line);border-radius:12px;background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-range-switcher button,.tf-pack-switcher button{min-height:34px;border:0;border-radius:8px;padding:0 13px;background:transparent;color:var(--tf-ink-3);font:650 11px var(--tf-sans);transition:background-color .16s,color .16s,transform .12s,box-shadow .16s}.tf-range-switcher button:hover,.tf-pack-switcher button:hover{color:var(--tf-ink);background:var(--tf-surface-2)}.tf-range-switcher button:active,.tf-pack-switcher button:active{transform:scale(.97)}.tf-range-switcher button[aria-pressed=true]{background:var(--tf-ink);color:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-pack-switcher button[aria-pressed=true]{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-range-wrap{position:relative;max-width:100%}.tf-range-switcher{flex-wrap:wrap;justify-content:flex-end}.tf-range-switcher button:last-child{display:flex;align-items:center;gap:4px}.tf-custom-range{position:absolute;z-index:20;top:calc(100% + 7px);right:0;width:300px;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:13px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-custom-range label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.tf-custom-range input{width:100%;min-height:38px;padding:0 8px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);font-size:11px}.tf-custom-range p{grid-column:1/-1;margin:0;color:var(--tf-alert);font-size:10px}.tf-custom-range>div{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px}.tf-custom-range button{min-height:34px;padding:0 12px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink-2);font:650 11px var(--tf-sans)}.tf-custom-range .tf-custom-apply{border-color:var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent)}.tf-custom-range .tf-custom-apply:disabled{border-color:var(--tf-line);background:var(--tf-line-2);color:var(--tf-ink-3);cursor:not-allowed}.tf-kpi-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:13px;margin-bottom:13px}.tf-kpi,.tf-dash-card{border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-kpi{position:relative;display:grid;grid-template-columns:auto 1fr;align-content:start;gap:13px;min-height:158px;padding:17px;overflow:hidden;transition:transform .16s,box-shadow .16s,border-color .16s}.tf-kpi:hover{transform:translateY(-1px);box-shadow:var(--tf-shadow);border-color:color-mix(in srgb,var(--tf-accent) 20%,var(--tf-line))}.tf-kpi-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px}.tf-tone-accent{color:var(--tf-accent-strong);background:var(--tf-accent-tint)}.tf-tone-run{color:var(--tf-run);background:var(--tf-run-tint)}.tf-tone-idle{color:var(--tf-idle);background:var(--tf-idle-tint)}.tf-tone-alert{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-tone-fuel{color:var(--tf-fuel);background:var(--tf-fuel-tint)}.tf-tone-warm{color:var(--tf-warm);background:var(--tf-warm-tint)}.tf-tone-offline{color:var(--tf-offline);background:var(--tf-offline-tint)}.tf-kpi-copy{min-width:0}.tf-kpi strong{display:block;margin-top:8px;font-size:31px;line-height:1;font-weight:760;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.tf-kpi small{position:absolute;bottom:14px;left:17px;color:var(--tf-ink-3);font-size:10px}.tf-dash-spark{position:absolute;right:14px;bottom:28px;width:42%;height:38px;overflow:visible}.tf-dash-spark polyline{fill:none;stroke:currentColor;stroke-width:2;vector-effect:non-scaling-stroke;opacity:.72}.tf-kpi-accent{color:var(--tf-accent)}.tf-kpi-run{color:var(--tf-run)}.tf-kpi-idle{color:var(--tf-idle)}.tf-kpi-alert{color:var(--tf-alert)}.tf-kpi-fuel{color:var(--tf-fuel)}.tf-kpi-warm{color:var(--tf-warm)}.tf-kpi .tf-kpi-copy,.tf-kpi>small,.tf-kpi-locked>div{color:var(--tf-ink)}.tf-kpi-locked{background:repeating-linear-gradient(135deg,var(--tf-surface),var(--tf-surface) 10px,var(--tf-surface-2) 10px,var(--tf-surface-2) 11px)}.tf-kpi-locked strong{color:var(--tf-ink-3)}.tf-kpi-locked>div>span:last-child{display:block;margin-top:7px;color:var(--tf-ink-2);font-size:12px}.tf-kpi-locked small{color:var(--tf-accent-strong)}.tf-dashboard-row{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:13px;margin-bottom:13px}.tf-dashboard-row-attention{grid-template-columns:minmax(0,1.75fr) minmax(320px,1fr)}.tf-dash-card{min-height:244px;padding:19px}.tf-dash-card header{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.tf-dash-card h2{margin:4px 0 0;font-size:17px;letter-spacing:-.015em}.tf-live-dot{display:flex;align-items:center;gap:6px;color:var(--tf-run);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.tf-live-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--tf-run);box-shadow:0 0 0 3px var(--tf-run-tint)}.tf-exception-tools{display:flex;align-items:center;gap:12px}.tf-exception-tools label{min-height:34px;padding:0 8px;display:flex;align-items:center;gap:5px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink-3)}.tf-exception-tools select{max-width:170px;border:0;background:transparent;color:var(--tf-ink-2);font-size:11px;font-weight:650;outline:0}.tf-exception-list{display:grid}.tf-exception{display:grid;grid-template-columns:34px minmax(150px,1.2fr) minmax(120px,1fr) auto;align-items:center;gap:10px;min-height:49px;border-top:1px solid var(--tf-line-2);font-size:12px}.tf-exception:first-child{border-top:0}.tf-exception-copy{display:grid;gap:2px}.tf-exception-copy strong{font-weight:700}.tf-exception-copy small{color:var(--tf-ink-3);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.tf-exception>span:nth-of-type(3),.tf-exception time{color:var(--tf-ink-3)}.tf-exception-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px}.tf-exception-critical{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-exception-warning{color:var(--tf-idle);background:var(--tf-idle-tint)}.tf-exception-info{color:var(--tf-stop);background:var(--tf-stop-tint)}.tf-exception-count{margin:9px 0 0;color:var(--tf-ink-3);font-size:9px;text-align:right}.tf-pulse-body{display:flex;align-items:center;gap:25px}.tf-donut{width:132px;height:132px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;position:relative}.tf-donut svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.tf-donut-segment{cursor:pointer;opacity:.82;transition:opacity .16s,stroke-width .16s,filter .16s}.tf-donut-segment:hover,.tf-donut-segment:focus-visible,.tf-donut-segment.is-active{opacity:1;stroke-width:7;filter:drop-shadow(0 2px 2px rgba(16,32,48,.12));outline:none}.tf-donut span{position:relative;z-index:1;width:78px;height:78px;display:grid;place-content:center;border-radius:50%;background:var(--tf-surface);box-shadow:inset 0 0 0 1px var(--tf-line-2);text-align:center;color:var(--tf-ink-3);font-size:9px;text-transform:uppercase;letter-spacing:.08em;pointer-events:none}.tf-donut strong{display:block;color:var(--tf-ink);font-size:25px;line-height:1.2}.tf-pulse-legend{flex:1;display:grid;gap:5px}.tf-pulse-legend button{width:100%;display:grid;grid-template-columns:8px 1fr auto 34px;gap:8px;align-items:center;min-height:31px;padding:4px 6px;border:0;border-radius:8px;background:transparent;color:var(--tf-ink);font:inherit;text-align:left;cursor:pointer;transition:background-color .14s,transform .14s}.tf-pulse-legend button:hover,.tf-pulse-legend button.is-active{background:var(--tf-surface-2);transform:translate(2px)}.tf-pulse-legend i{width:8px;height:8px;border-radius:50%}.tf-pulse-legend span,.tf-pulse-legend small{color:var(--tf-ink-3)}.tf-pulse-legend strong{font-variant-numeric:tabular-nums}.tf-pulse-legend small{text-align:right}.tf-trend-chart{height:166px;display:flex;align-items:stretch;gap:8px;padding-top:12px}.tf-trend-column{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;gap:7px;padding:0;border:0;background:transparent;color:inherit;cursor:default}.tf-trend-column>span{height:126px;width:100%;display:flex;align-items:flex-end;border-bottom:1px solid var(--tf-line)}.tf-trend-column i{display:block;width:100%;min-width:5px;border-radius:5px 5px 1px 1px;background:linear-gradient(var(--tf-accent),var(--tf-accent-strong));opacity:.68;transition:opacity .14s,transform .14s}.tf-trend-column:hover i,.tf-trend-column:focus-visible i,.tf-trend-column.is-latest i{opacity:1}.tf-trend-column.is-latest i{box-shadow:0 0 0 2px var(--tf-accent-tint)}.tf-trend-column small{font-size:9px;color:var(--tf-ink-3)}.tf-trend-column.is-latest small{color:var(--tf-accent-strong);font-weight:750}.tf-trend-column b{position:absolute;z-index:3;left:50%;top:8px;transform:translate(-50%,-100%) translateY(-6px);display:none;min-width:max-content;padding:7px 9px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-ink);box-shadow:var(--tf-shadow);color:var(--tf-surface);font-size:10px;font-weight:700}.tf-trend-column b span{display:block;margin-top:2px;color:color-mix(in srgb,var(--tf-surface) 70%,transparent);font-size:9px;font-weight:500}.tf-trend-column:hover b,.tf-trend-column:focus-visible b{display:block}.tf-module-placeholder{min-height:155px;display:grid;place-content:center;text-align:center;gap:6px;border:1px dashed var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-module-placeholder strong{font-size:13px}.tf-module-placeholder span{max-width:300px;color:var(--tf-ink-3);font-size:11px}.tf-kpi-band .tf-insight-card{min-height:158px;display:grid;grid-template-columns:auto 1fr;align-content:start;gap:13px;padding:17px}.tf-insight-card strong{display:block;margin-top:8px;font-size:27px;line-height:1;font-weight:760;font-variant-numeric:tabular-nums}.tf-insight-card p{margin:8px 0 0;color:var(--tf-ink-2);font-size:11px;font-weight:650}.tf-insight-card small{display:block;margin-top:7px;color:var(--tf-ink-3);font-size:10px}.tf-idle-waste{background:linear-gradient(145deg,var(--tf-surface),var(--tf-warm-tint))}.tf-anomaly-insight{background:linear-gradient(145deg,var(--tf-surface),var(--tf-alert-tint))}.tf-anomaly-insight ul{grid-column:1/-1;display:grid;gap:3px;margin:8px 0 0;padding:0;list-style:none}.tf-anomaly-insight li{display:flex;justify-content:space-between;gap:6px;color:var(--tf-ink-2);font-size:9px}.tf-anomaly-insight li b{color:var(--tf-alert);font-weight:650;text-transform:capitalize}.tf-fleet-activity{min-height:244px}.tf-fleet-activity header{margin-bottom:14px}.tf-fleet-activity h2{font-size:15px}.tf-activity-date{color:var(--tf-accent-strong);font-size:10px;font-weight:750;font-variant-numeric:tabular-nums}.tf-activity-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.tf-activity-summary>div{display:grid;gap:4px;padding:11px 12px;border-radius:10px;background:var(--tf-surface-2)}.tf-activity-summary span,.tf-activity-bars span{color:var(--tf-ink-3);font-size:10px;font-weight:650}.tf-activity-summary strong{font-size:22px;line-height:1;font-variant-numeric:tabular-nums}.tf-activity-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.tf-activity-bars>div{display:grid;gap:5px;padding:9px 7px;border-top:3px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);text-align:center}.tf-activity-bars strong{font-size:16px;font-variant-numeric:tabular-nums}.tf-activity-run{border-top-color:var(--tf-run)!important}.tf-activity-idle{border-top-color:var(--tf-idle)!important}.tf-activity-stop{border-top-color:var(--tf-stop)!important}.tf-activity-run strong{color:var(--tf-run)}.tf-activity-idle strong{color:var(--tf-idle)}.tf-activity-stop strong{color:var(--tf-stop)}@media (max-width:1000px){.tf-dashboard-head{align-items:flex-start;flex-direction:column}.tf-dashboard-controls{width:100%;align-items:flex-start}.tf-range-wrap{width:100%}.tf-range-switcher{justify-content:flex-start}.tf-pack-switcher{max-width:100%;overflow:auto}.tf-dashboard-row,.tf-dashboard-row-attention{grid-template-columns:1fr}}@media (max-width:620px){.tf-dashboard{padding:18px 14px}.tf-kpi-band{grid-template-columns:1fr}.tf-dashboard-controls,.tf-range-switcher,.tf-pack-switcher{width:100%}.tf-range-switcher button{flex:1;padding:0 7px}.tf-custom-range{position:fixed;top:auto;right:14px;bottom:18px;left:14px;width:auto}.tf-pack-switcher{overflow:auto}.tf-pack-switcher button{white-space:nowrap}.tf-pulse-body{align-items:flex-start;flex-direction:column}.tf-attention>header{align-items:flex-start;gap:10px}.tf-exception-tools{align-items:flex-end;flex-direction:column;gap:6px}.tf-exception-tools label{min-height:40px}.tf-exception{grid-template-columns:34px 1fr auto}.tf-exception>span:nth-of-type(3){grid-column:2/4}.tf-trend-chart{gap:4px}}.tf-dashboard-actions{display:flex;gap:6px}.tf-dashboard-actions button{display:flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface);color:var(--tf-ink-2);font-weight:700}.tf-scope-chips{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:-8px 0 14px}.tf-scope-chips span{padding:6px 9px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:10px;font-weight:700}.tf-scope-chips button{border:0;background:transparent;color:var(--tf-alert);font-size:10px;font-weight:700}.tf-widget-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.tf-widget-slot{min-width:0}.tf-widget-compact{grid-column:span 2}.tf-widget-normal{grid-column:span 3}.tf-widget-wide{grid-column:1/-1}.tf-widget-fill{grid-column-end:-1}.tf-widget-slot>.tf-kpi-band{margin-bottom:0}.tf-widget-slot>.tf-dash-card,.tf-widget-slot>.tf-state{height:100%}@media (max-width:1000px){.tf-widget-compact,.tf-widget-normal{grid-column:span 3}.tf-widget-fill{grid-column-end:-1}}@media (max-width:620px){.tf-dashboard-actions{width:100%}.tf-dashboard-actions button{flex:1;justify-content:center}.tf-widget-compact,.tf-widget-normal,.tf-widget-wide,.tf-widget-fill{grid-column:1/-1}}.tf-dashboard-module-unavailable{box-shadow:none}.tf-dashboard-module-unavailable header{align-items:center}.tf-module-status{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid var(--tf-line);border-radius:999px;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.tf-dashboard-module-unavailable .tf-module-placeholder{color:var(--tf-ink-2)}.tf-dashboard-module-unavailable .tf-module-placeholder span{line-height:1.45}.tf-dashboard .tf-fleet-status-compare{display:grid;gap:14px}.tf-dashboard .tf-fleet-status-compare header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tf-dashboard .tf-fleet-status-compare header h2{margin:3px 0 0;font-size:18px}.tf-dashboard .tf-fleet-status-compare header>strong{color:var(--tf-ink-2);font-size:13px;font-variant-numeric:tabular-nums}.tf-dashboard .tf-fleet-status-track{display:flex;height:10px;overflow:hidden;border-radius:999px;background:var(--tf-line-2)}.tf-dashboard .tf-fleet-status-track i{min-width:2px}.tf-dashboard .tf-fleet-status-track .is-run,.tf-dashboard .tf-fleet-status-rows .is-run{background:var(--tf-run)}.tf-dashboard .tf-fleet-status-track .is-idle,.tf-dashboard .tf-fleet-status-rows .is-idle{background:var(--tf-idle)}.tf-dashboard .tf-fleet-status-track .is-stop,.tf-dashboard .tf-fleet-status-rows .is-stop{background:var(--tf-stop)}.tf-dashboard .tf-fleet-status-track .is-offline,.tf-dashboard .tf-fleet-status-rows .is-offline{background:var(--tf-offline)}.tf-dashboard .tf-fleet-status-rows{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.tf-dashboard .tf-fleet-status-rows button{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:8px 9px;border:1px solid var(--tf-line-2);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink-2);text-align:left;font:inherit;cursor:pointer}.tf-dashboard .tf-fleet-status-rows button:hover,.tf-dashboard .tf-fleet-status-rows button:focus-visible{border-color:var(--tf-accent);outline:2px solid color-mix(in srgb,var(--tf-accent) 24%,transparent);outline-offset:1px}.tf-dashboard .tf-fleet-status-rows button>span{display:flex;align-items:center;gap:6px;font-size:11px}.tf-dashboard .tf-fleet-status-rows button>span i{width:8px;height:8px;border-radius:50%;background:var(--tf-ink-3)}.tf-dashboard .tf-fleet-status-rows strong{color:var(--tf-ink);font-size:14px}.tf-dashboard .tf-fleet-status-rows small{color:var(--tf-ink-3);font-size:10px;font-variant-numeric:tabular-nums}.tf-dashboard-head{display:flex;flex-direction:column;gap:10px;margin:0 0 14px}.tf-dashboard-head .tf-dashboard-controls{display:flex;flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.tf-dash-select{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 10px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface);color:var(--tf-ink-2)}.tf-dash-select:focus-within{border-color:var(--tf-accent)}.tf-dash-select>svg{flex-shrink:0;color:var(--tf-ink-3)}.tf-dash-select select{border:0;background:transparent;color:var(--tf-ink);font:600 13px var(--tf-sans);cursor:pointer;padding:0 2px 0 0;max-width:22ch}.tf-dash-select select:focus{outline:none}.tf-analytics{min-height:0}.tf-card-head{display:flex;align-items:center;justify-content:flex-start;gap:12px}.tf-card-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;color:var(--tf-accent);background:var(--tf-accent-tint)}.tf-card-icon-alert{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-rank-medal{color:var(--tf-accent-ink)}.tf-rank-1{background:color-mix(in srgb,var(--tf-idle) 22%,transparent);color:var(--tf-idle)}.tf-rank-2{background:color-mix(in srgb,var(--tf-stop) 18%,transparent);color:var(--tf-stop)}.tf-rank-3{background:color-mix(in srgb,var(--tf-warm) 18%,transparent);color:var(--tf-warm)}.tf-analytics-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,1fr);gap:12px;align-items:start}.tf-co2-summary{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;margin-bottom:12px;padding:12px 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-co2-summary .tf-card-icon{color:var(--tf-fuel);background:var(--tf-fuel-tint)}.tf-co2-summary div{display:grid;gap:2px}.tf-co2-summary small{color:var(--tf-ink-3);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.tf-co2-summary strong{font-size:18px;font-variant-numeric:tabular-nums}.tf-co2-summary strong i{color:var(--tf-ink-2);font-size:10px;font-style:normal}.tf-co2-summary p{margin-inline-start:auto;color:var(--tf-ink-3);font-size:10px;text-align:end}.tf-co2-value{color:var(--tf-fuel)!important}.tf-analytics .tf-dash-card{min-height:440px;overflow:hidden}.tf-analytics-table-wrap{overflow-x:auto}.tf-analytics-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.tf-analytics-table th,.tf-analytics-table td{height:48px;padding:0 10px;border-top:1px solid var(--tf-line-soft);text-align:end;white-space:nowrap}.tf-analytics-table thead th{height:32px;border-top:0;color:var(--tf-ink-3);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-analytics-table th:nth-child(2),.tf-analytics-table td:nth-child(2){text-align:start}.tf-analytics-table tbody th{color:var(--tf-ink);font-weight:600}.tf-analytics-table small{color:var(--tf-ink-3);font-size:9px}.tf-number{color:var(--tf-ink-2)}.tf-rank{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:7px;background:var(--tf-inset);color:var(--tf-ink-3);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.tf-score-badge{display:inline-grid;min-width:44px;min-height:26px;place-items:center;border-radius:7px;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.tf-score-good{background:color-mix(in srgb,var(--tf-run) 14%,transparent);color:var(--tf-run)}.tf-score-warn{background:color-mix(in srgb,var(--tf-idle) 14%,transparent);color:var(--tf-idle)}.tf-score-poor{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-score-none{background:var(--tf-inset);color:var(--tf-ink-3)}.tf-metric-switcher{display:flex;gap:4px;margin:0 0 14px;padding:4px;border:1px solid var(--tf-line);border-radius:12px;background:var(--tf-inset)}.tf-metric-switcher button{flex:1;min-height:38px;border:0;border-radius:8px;padding:0 9px;background:transparent;color:var(--tf-ink-3);font:600 10px var(--tf-sans);white-space:nowrap;cursor:pointer;transition:background-color .16s,color .16s,transform .12s}.tf-metric-switcher button:hover{color:var(--tf-ink)}.tf-metric-switcher button:active{transform:scale(.97)}.tf-metric-switcher button[aria-pressed=true]{background:var(--tf-accent-weak);color:var(--tf-accent)}.tf-benchmark-list{display:grid;margin:0;padding:0;list-style:none;font-variant-numeric:tabular-nums}.tf-benchmark-list li{display:grid;grid-template-columns:26px minmax(0,1fr) 38px;align-items:center;gap:10px;min-height:58px;border-top:1px solid var(--tf-line-soft)}.tf-benchmark-list li:first-child{border-top:0}.tf-benchmark-main{min-width:0}.tf-benchmark-copy{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;font-size:11px}.tf-benchmark-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-benchmark-copy span{flex:0 0 auto;color:var(--tf-ink-2);font-weight:600}.tf-percentile-track{height:7px;overflow:hidden;border-radius:4px;background:var(--tf-surface-2);border:1px solid var(--tf-line)}.tf-percentile-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--tf-accent),var(--tf-accent-strong));transition:width .3s ease}.tf-percentile-label{color:var(--tf-ink-3);font-size:10px;font-weight:700;text-align:end}.tf-analytics .tf-state{min-height:80px;justify-content:center;text-align:center}.tf-analytics .tf-state-empty{flex-direction:column}.tf-anomalies{min-height:0!important;margin-top:12px}.tf-anomalies>header{align-items:center}.tf-anomaly-filter{margin-inline-start:auto;display:grid;gap:4px;color:var(--tf-ink-3);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-anomaly-filter select{min-width:164px;height:36px;padding-block:0;padding-inline:10px 30px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-inset);color:var(--tf-ink);font:600 11px var(--tf-sans)}.tf-anomaly-table th:first-child,.tf-anomaly-table td:first-child{text-align:start}.tf-anomaly-table tbody th{display:table-cell}.tf-anomaly-table tbody th strong,.tf-anomaly-table tbody th small{display:block}.tf-anomaly-table tbody th small{margin-top:3px;color:var(--tf-ink-3);font-size:9px;font-weight:500}.tf-anomaly-evidence{color:var(--tf-ink);font-weight:650}.tf-anomaly-evidence span{color:var(--tf-ink-3);font-weight:500}.tf-z-chip{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 8px;border-radius:7px;background:var(--tf-inset);color:var(--tf-ink-2);font-size:10.5px;font-weight:750}.tf-z-chip i{font-size:8px;font-style:normal}.tf-z-above i{color:var(--tf-alert)}.tf-z-below i{color:var(--tf-cold)}.tf-anomaly-severity{display:inline-grid;min-width:64px;min-height:24px;place-items:center;border-radius:7px;font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.tf-anomaly-critical{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-anomaly-warning{background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-anomaly-info{background:var(--tf-surface-2);color:var(--tf-ink-3)}@media (max-width:1000px){.tf-analytics-grid{grid-template-columns:1fr}.tf-analytics .tf-dash-card{min-height:0}}@media (max-width:620px){.tf-anomalies>header{align-items:stretch;flex-direction:column}.tf-anomaly-filter select{width:100%}.tf-analytics-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.tf-analytics-table tbody,.tf-analytics-table tr,.tf-analytics-table th,.tf-analytics-table td{display:block}.tf-analytics-table tr{display:grid;grid-template-columns:42px minmax(120px,1fr) repeat(2,minmax(58px,auto));align-items:center;padding:9px 0;border-top:1px solid var(--tf-line-soft)}.tf-analytics-table th,.tf-analytics-table td{height:auto;padding:4px 6px;border:0;text-align:end}.tf-analytics-table td:nth-of-type(1){grid-row:1 / 3}.tf-analytics-table th{grid-column:2 / -1}.tf-analytics-table td:nth-of-type(4),.tf-analytics-table td:nth-of-type(5){color:var(--tf-ink-3);font-size:10px}.tf-anomaly-table tr{grid-template-columns:minmax(0,1fr) auto}.tf-anomaly-table th{grid-column:1 / -1!important}.tf-anomaly-table td{display:flex!important;align-items:center;justify-content:space-between;gap:12px;text-align:end!important}.tf-anomaly-table td:before{content:attr(data-label);color:var(--tf-ink-3);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.tf-metric-switcher{overflow-x:auto}.tf-metric-switcher button{min-width:max-content}}.tf-policyholder{height:100vh;overflow:auto;padding:28px 32px 44px;background:var(--tf-bg);color:var(--tf-ink)}.tf-policy-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;max-width:1180px;margin:0 auto 20px}.tf-policy-head h1{margin:4px 0 7px;font-size:30px;letter-spacing:-.035em}.tf-policy-head p{margin:0;color:var(--tf-ink-2);max-width:650px;line-height:1.55}.tf-policy-kicker{display:block;color:var(--tf-accent-strong);font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.tf-policy-readonly{display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:12px;font-weight:700;white-space:nowrap}.tf-policy-consent{max-width:1180px;margin:0 auto 18px;padding:17px 18px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-policy-consent.is-consented{border-color:color-mix(in srgb,var(--tf-run) 28%,var(--tf-line));background:linear-gradient(90deg,var(--tf-run-tint),var(--tf-surface) 28%)}.tf-policy-consent-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:var(--tf-accent-strong);background:var(--tf-accent-tint)}.tf-policy-consent h2{margin:0 0 4px;font-size:16px}.tf-policy-consent p{margin:0;max-width:760px;color:var(--tf-ink-2);font-size:12px;line-height:1.5}.tf-policy-toggle{min-height:44px;display:flex;align-items:center;gap:9px;cursor:pointer}.tf-policy-toggle input{position:absolute;opacity:0;pointer-events:none}.tf-policy-toggle>span{width:40px;height:23px;border-radius:99px;background:var(--tf-stop-tint);box-shadow:inset 0 0 0 1px var(--tf-line);position:relative;transition:background-color .16s}.tf-policy-toggle>span:after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:17px;height:17px;border-radius:50%;background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);transition:transform .18s cubic-bezier(.23,1,.32,1)}.tf-policy-toggle input:checked+span{background:var(--tf-run)}.tf-policy-toggle input:checked+span:after{transform:translate(17px)}.tf-policy-toggle input:focus-visible+span{outline:2px solid var(--tf-accent);outline-offset:3px}.tf-policy-toggle b{font-size:12px;color:var(--tf-ink-2)}.tf-policy-grid,.tf-policy-preview{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px}.tf-policy-grid>.tf-policy-score-card{grid-column:1/2}.tf-policy-grid>.tf-policy-card:nth-child(2){grid-column:1/2}.tf-policy-grid>.tf-policy-card:nth-child(3){grid-column:2/3;grid-row:1/3}.tf-policy-grid>.tf-policy-premium{grid-column:1/3}.tf-policy-card{min-width:0;padding:20px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-policy-card>header{display:flex;align-items:center;gap:11px;margin-bottom:17px}.tf-policy-card>header>div{min-width:0}.tf-policy-card h1,.tf-policy-card h2{margin:2px 0 0;font-size:18px;letter-spacing:-.02em}.tf-policy-card-icon,.tf-policy-factor-icon{width:36px;height:36px;flex:0 0 auto;border-radius:10px;display:grid;place-items:center;color:var(--tf-accent-strong);background:var(--tf-accent-tint)}.tf-policy-card-icon-alert,.tf-policy-event-icon{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-policy-card header label{margin-inline-start:auto;display:grid;gap:4px;color:var(--tf-ink-3);font-size:10px;text-transform:uppercase;font-weight:700}.tf-policy-card select{min-width:160px;height:36px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);padding:0 9px}.tf-policy-score-layout{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:27px}.tf-policy-gauge{width:168px;height:168px;position:relative;display:grid;place-items:center}.tf-policy-gauge svg{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-90deg)}.tf-policy-gauge circle{fill:none;stroke-width:9}.tf-policy-gauge-track{stroke:var(--tf-line-2)}.tf-policy-gauge-value{stroke:currentColor;stroke-linecap:round}.tf-policy-band-excellent{color:var(--tf-run)}.tf-policy-band-good{color:var(--tf-accent-strong)}.tf-policy-band-fair{color:var(--tf-idle)}.tf-policy-band-poor{color:var(--tf-alert)}.tf-policy-gauge>span{display:grid;text-align:center}.tf-policy-gauge strong{font-size:40px;line-height:1;color:var(--tf-ink)}.tf-policy-gauge small{margin-top:4px;color:var(--tf-ink-3)}.tf-policy-score-copy h2{font-size:22px;margin:8px 0 3px}.tf-policy-score-copy p{margin:0;color:var(--tf-ink-2)}.tf-policy-band-chip{display:inline-flex;padding:5px 8px;border-radius:7px;background:color-mix(in srgb,currentColor 12%,transparent);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.tf-policy-spark{width:100%;max-width:290px;height:50px;margin-top:12px;overflow:visible}.tf-policy-spark polyline{fill:none;stroke:var(--tf-accent);stroke-width:2.5}.tf-policy-spark circle{fill:var(--tf-surface);stroke:var(--tf-accent);stroke-width:2}.tf-policy-score-meta{display:flex;gap:22px;color:var(--tf-ink-3);font-size:11px}.tf-policy-score-meta strong{color:var(--tf-ink);font-size:13px}.tf-policy-factors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tf-policy-factors article{display:flex;gap:11px;min-height:104px;padding:13px;border:1px solid var(--tf-line-2);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-policy-factors small{display:block;color:var(--tf-ink-3);font-weight:700}.tf-policy-factors strong{display:block;margin:5px 0 3px;font-size:17px}.tf-policy-factors p{margin:0;color:var(--tf-ink-3);font-size:10px;line-height:1.35}.tf-policy-coming{opacity:.72}.tf-policy-muted{color:var(--tf-ink-3)}.tf-policy-events{list-style:none;margin:0;padding:0;display:grid;gap:7px}.tf-policy-events li{display:grid;grid-template-columns:34px 1fr auto auto;align-items:center;gap:9px;padding:9px;border-radius:10px;background:var(--tf-surface-2)}.tf-policy-event-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center}.tf-policy-events strong,.tf-policy-events span{display:block}.tf-policy-events div span{margin-top:2px;color:var(--tf-ink-3);font-size:10px;text-transform:capitalize}.tf-policy-events b{font-size:11px;color:var(--tf-ink-2)}.tf-policy-severity{padding:4px 6px;border-radius:6px;font-size:9px;font-weight:800;text-transform:uppercase}.tf-policy-severity-critical{color:var(--tf-alert);background:var(--tf-alert-tint)}.tf-policy-severity-warning{color:var(--tf-idle);background:var(--tf-idle-tint)}.tf-policy-severity-info{color:var(--tf-stop);background:var(--tf-stop-tint)}.tf-policy-premium>header>strong{margin-inline-start:auto;padding:7px 9px;border-radius:7px;color:var(--tf-alert);background:var(--tf-alert-tint);font-size:11px;text-transform:uppercase}.tf-policy-premium>p{color:var(--tf-ink-2);line-height:1.5}.tf-policy-band-table{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.tf-policy-band-table>[role=row]{display:grid;grid-template-columns:9px 1fr;gap:5px 8px;padding:11px;border:1px solid var(--tf-line-2);border-radius:10px;background:var(--tf-surface-2);text-transform:capitalize}.tf-policy-band-table>[role=row].is-current{border-color:currentColor;box-shadow:inset 0 0 0 1px currentColor}.tf-policy-band-table span:nth-of-type(2),.tf-policy-band-table b{grid-column:2}.tf-policy-band-table span{color:var(--tf-ink-3);font-size:10px}.tf-policy-band-table b{font-size:17px}.tf-policy-band-dot{width:8px;height:8px;border-radius:50%;background:currentColor;margin-top:4px}.tf-policy-preview-gauge{min-height:260px;display:grid;place-content:center;justify-items:center;gap:9px;color:var(--tf-ink-3);text-align:center}.tf-policy-preview-gauge strong{font-size:34px;color:var(--tf-ink)}.tf-policy-preview-gauge span{max-width:270px;line-height:1.45}@media (max-width:900px){.tf-policy-grid,.tf-policy-preview{grid-template-columns:1fr}.tf-policy-grid>.tf-policy-card,.tf-policy-grid>.tf-policy-premium{grid-column:1!important;grid-row:auto!important}.tf-policy-band-table{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.tf-policyholder{padding:20px 14px 32px}.tf-policy-head{display:block}.tf-policy-readonly{width:max-content;margin-top:12px}.tf-policy-consent{grid-template-columns:38px 1fr}.tf-policy-toggle{grid-column:1/3}.tf-policy-score-layout{grid-template-columns:1fr;justify-items:center}.tf-policy-score-copy{text-align:center}.tf-policy-score-meta{justify-content:center}.tf-policy-factors,.tf-policy-band-table{grid-template-columns:1fr}.tf-policy-card{padding:16px}.tf-policy-premium>header{align-items:flex-start;flex-wrap:wrap}.tf-policy-premium>header>strong{margin-inline-start:47px}.tf-policy-events li{grid-template-columns:34px 1fr auto}.tf-policy-events b{grid-column:2/4}}.tf-fuel{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-fuel header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-fuel-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-fuel-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-fuel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-fuel-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-fuel-field small{font-size:11px;color:var(--tf-ink-3)}.tf-fuel-grid label,.tf-fuel-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-fuel span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-fuel input,.tf-fuel select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-fuel input:disabled,.tf-fuel select:disabled{opacity:.55;cursor:not-allowed}.tf-fuel-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-fuel-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-fuel-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-fuel-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-fuel-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-fuel-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-fuel-save:disabled{opacity:.5;cursor:not-allowed}.tf-fuel-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-fuel h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-fuel h4{margin:6px 0 0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-fuel-sub{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-3)}.tf-fuel-grid small{font-size:10.5px;color:var(--tf-ink-3)}.tf-spd{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-spd header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-spd-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-spd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-spd-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-spd-field small{font-size:11px;color:var(--tf-ink-3)}.tf-spd-grid label,.tf-spd-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-spd span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-spd input,.tf-spd select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-spd input:disabled,.tf-spd select:disabled{opacity:.55;cursor:not-allowed}.tf-spd-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-spd-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-spd-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-spd-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-spd-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-spd-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-spd-save:disabled{opacity:.5;cursor:not-allowed}.tf-spd-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-spd h4{margin:6px 0 0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-spd-sub{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-3)}.tf-spd{display:flex;flex-direction:column;gap:9px}.tf-spd h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-spd-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-spd-grid small{font-size:10.5px;color:var(--tf-ink-3)}.tf-cc{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-cc header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-cc h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-cc h4{margin:0 0 5px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-cc-lede{margin:0;font-size:12px;line-height:1.55;color:var(--tf-ink-2)}.tf-cc-lede code{font-family:var(--tf-mono);font-size:11.5px}.tf-cc-company{display:flex;align-items:center;gap:6px}.tf-cc-company span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-cc select,.tf-cc input{padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink);min-width:0}.tf-cc input:disabled,.tf-cc select:disabled{opacity:.55;cursor:not-allowed}.tf-cc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-cc-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);font-size:12.5px}.tf-cc-kind{font-family:var(--tf-mono);font-size:12px;color:var(--tf-ink);font-weight:600}.tf-cc-scope{color:var(--tf-ink-2)}.tf-cc-mode{color:var(--tf-ink-2);font-size:11.5px}.tf-cc-mode.is-drop{color:var(--tf-bad-ink)}.tf-cc-mode.is-unknown{color:var(--tf-ink-3);font-style:italic}.tf-cc-state{font-size:11px;font-weight:600;color:var(--tf-warn-ink)}.tf-cc-state.is-off{color:var(--tf-ink-3);font-weight:400}.tf-cc-note{color:var(--tf-ink-3);font-size:11.5px;font-style:italic}.tf-cc-actions{margin-left:auto;display:flex;gap:6px}.tf-cc-actions button{padding:4px 9px;font-size:11.5px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-cc-actions button.is-delete{color:var(--tf-bad-ink);border-color:var(--tf-bad-line)}.tf-cc-actions button:disabled{opacity:.5;cursor:not-allowed}.tf-cc-observed>div{display:flex;gap:6px;flex-wrap:wrap}.tf-cc-observed button{padding:4px 9px;font-size:11.5px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);cursor:pointer}.tf-cc-observed button b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-cc-add{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-cc-add label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-cc-add span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-cc-go{padding:7px 12px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-cc-go:disabled{opacity:.5;cursor:not-allowed}.tf-cc-hint{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-cc-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-cc-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-cc-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-cc-role{font-weight:600;color:var(--tf-ink);text-transform:none;letter-spacing:0;font-size:12.5px}.tf-cc-name{color:var(--tf-ink-2)}.tf-cc-reach{color:var(--tf-ink-3);font-size:11.5px}.tf-cc-primary{font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:999px;color:var(--tf-ok-ink);background:var(--tf-ok-bg);border:1px solid var(--tf-ok-line)}.tf-cc-list button{margin-left:auto}.tf-cc-warn{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-cc-check{flex-direction:row!important;align-items:center;gap:5px}.tf-cc-check span{text-transform:none;letter-spacing:0;font-size:12px;color:var(--tf-ink-2)}.tf-amute{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-amute header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-amute h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-amute h4{margin:0 0 5px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-amute-lede{margin:0;font-size:12px;line-height:1.55;color:var(--tf-ink-2)}.tf-amute-lede code{font-family:var(--tf-mono);font-size:11.5px}.tf-amute-company{display:flex;align-items:center;gap:6px}.tf-amute-company span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-amute select,.tf-amute input{padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink);min-width:0}.tf-amute input:disabled,.tf-amute select:disabled{opacity:.55;cursor:not-allowed}.tf-amute-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-amute-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);font-size:12.5px}.tf-amute-kind{font-family:var(--tf-mono);font-size:12px;color:var(--tf-ink);font-weight:600}.tf-amute-scope{color:var(--tf-ink-2)}.tf-amute-mode{color:var(--tf-ink-2);font-size:11.5px}.tf-amute-mode.is-drop{color:var(--tf-bad-ink)}.tf-amute-mode.is-unknown{color:var(--tf-ink-3);font-style:italic}.tf-amute-state{font-size:11px;font-weight:600;color:var(--tf-warn-ink)}.tf-amute-state.is-off{color:var(--tf-ink-3);font-weight:400}.tf-amute-note{color:var(--tf-ink-3);font-size:11.5px;font-style:italic}.tf-amute-actions{margin-left:auto;display:flex;gap:6px}.tf-amute-actions button{padding:4px 9px;font-size:11.5px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-amute-actions button.is-delete{color:var(--tf-bad-ink);border-color:var(--tf-bad-line)}.tf-amute-actions button:disabled{opacity:.5;cursor:not-allowed}.tf-amute-observed>div{display:flex;gap:6px;flex-wrap:wrap}.tf-amute-observed button{padding:4px 9px;font-size:11.5px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);cursor:pointer}.tf-amute-observed button b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-amute-add{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-amute-add label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-amute-add span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-amute-go{padding:7px 12px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-amute-go:disabled{opacity:.5;cursor:not-allowed}.tf-amute-hint{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-amute-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-amute-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-amute-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-obtype-card{margin-bottom:14px}.tf-obtype-list{display:grid}.tf-obtype-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 16px;padding:14px 20px;border-bottom:1px solid var(--tf-line-2)}.tf-obtype-list>article:last-child{border-bottom:0}.tf-obtype-list>article.is-off{opacity:.6}.tf-obtype-identity{display:grid;gap:2px;min-width:0}.tf-obtype-identity strong{font-size:14px}.tf-obtype-identity small{color:var(--tf-ink-3);font-size:10px;font-variant-numeric:tabular-nums}.tf-obtype-facts{grid-column:1/2;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.tf-obtype-facts>span{padding:3px 8px;border-radius:999px;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:10px;font-weight:650}.tf-obtype-badge{background:var(--tf-accent-tint)!important;color:var(--tf-accent-ink)!important}.tf-obtype-actions{grid-column:2/3;grid-row:1/3;display:flex;align-items:center;justify-content:flex-end;gap:8px}.tf-obtype-form{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:start}.tf-obtype-add{padding:16px 20px;border-top:1px solid var(--tf-line-2);background:var(--tf-surface-2)}.tf-obtype-form h3{grid-column:1/-1;margin:0;font-size:14px}.tf-obtype-form>label{display:grid;gap:5px;min-width:0}.tf-obtype-form>label>span:first-child{color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-obtype-form select{width:100%;height:40px;padding-block:0;padding-inline:11px 30px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12px}.tf-obtype-form select:disabled{cursor:not-allowed;opacity:.65}.tf-obtype-form small{color:var(--tf-ink-3);font-size:9.5px;line-height:1.4}.tf-obtype-note{grid-column:1/-1;margin:0;color:var(--tf-ink-3);font-size:10.5px;line-height:1.45}.tf-obtype-form .tf-obtype-actions{grid-column:1/-1;grid-row:auto}.tf-obtype-footer{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:12px 20px;border-top:1px solid var(--tf-line-2);background:var(--tf-surface-2)}.tf-obtype-footer p{margin-block:0;margin-inline:0 auto;color:var(--tf-ink-3);font-size:10.5px}@media (max-width:760px){.tf-obtype-list>article{grid-template-columns:1fr}.tf-obtype-actions,.tf-obtype-facts{grid-column:1/-1;grid-row:auto}.tf-obtype-actions{justify-content:flex-start;flex-wrap:wrap}.tf-obtype-form{grid-template-columns:1fr}.tf-obtype-footer{align-items:stretch;flex-direction:column}}.tf-company-settings{height:100%;overflow:auto;padding:28px clamp(18px,4vw,52px) 48px;background:var(--tf-bg);color:var(--tf-ink)}.tf-company-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;max-width:1080px;margin:0 auto 24px}.tf-company-settings-head>div>span,.tf-company-settings-card-head>div>span,.tf-company-settings-section-head span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-company-settings-head h1{margin:5px 0 4px;font-size:28px;line-height:1.15;letter-spacing:-.025em}.tf-company-settings-head p{max-width:640px;margin:0;color:var(--tf-ink-2);font-size:13px;line-height:1.55;text-wrap:pretty}.tf-company-settings-security{display:flex;align-items:center;gap:7px;flex:none;padding:8px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);color:var(--tf-ink-2);font-size:11px;font-weight:650}.tf-company-settings-scope{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(220px,320px);align-items:center;gap:12px;max-width:1080px;margin:0 auto 14px;padding:12px 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-company-settings-scope-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-company-settings-scope label{display:grid;gap:2px}.tf-company-settings-scope label span{color:var(--tf-accent-strong);font-size:9px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.tf-company-settings-scope label strong{font-size:13px}.tf-company-settings-scope select{width:100%;height:40px;padding-block:0;padding-inline:11px 34px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12px;font-weight:650}.tf-company-settings-scope select:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-company-settings-card{max-width:1080px;margin:0 auto;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-company-settings-card-head{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid var(--tf-line-2)}.tf-company-settings-card-icon{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:11px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-company-settings-card-head h2{margin:3px 0 2px;font-size:18px;letter-spacing:-.015em}.tf-company-settings-card-head p{margin:0;color:var(--tf-ink-3);font-size:11.5px}.tf-company-settings-state{display:flex;align-items:center;gap:6px;margin-inline-start:auto;padding:6px 9px;border-radius:999px;background:var(--tf-offline-tint);color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-company-settings-state i{width:7px;height:7px;border-radius:50%;background:var(--tf-offline)}.tf-company-settings-state.is-configured{background:var(--tf-run-tint);color:var(--tf-run)}.tf-company-settings-state.is-configured i{background:var(--tf-run)}.tf-alert-rules-card{margin-top:14px;margin-bottom:14px}.tf-alert-rules-inherited{display:flex;align-items:center;gap:8px;margin:0;padding:10px 20px;border-bottom:1px solid var(--tf-line-2);background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:11px;font-weight:650}.tf-alert-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 20px 20px}.tf-alert-rules-grid fieldset{min-width:0;margin:0;padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3)}.tf-alert-rules-grid fieldset:disabled{opacity:.68}.tf-alert-rules-grid legend{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 2px;color:var(--tf-ink);font-size:12px;font-weight:750}.tf-alert-rules-grid legend>span,.tf-alert-rules-grid legend>label{display:flex;align-items:center;gap:7px}.tf-alert-rules-grid legend>span{color:var(--tf-accent-strong)}.tf-alert-rules-grid legend>label{color:var(--tf-ink-2);font-size:10px;font-weight:650}.tf-alert-rules-grid legend input{width:15px;height:15px;accent-color:var(--tf-accent)}.tf-alert-rules-grid fieldset>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.tf-alert-rules-grid fieldset>div>label{display:grid;gap:5px}.tf-alert-rules-grid fieldset>div>label>span{min-height:14px;color:var(--tf-ink-3);font-size:9.5px;letter-spacing:.02em}.tf-alert-rules-grid select{width:100%;height:38px;padding-block:0;padding-inline:10px 28px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:11px}.tf-alert-rules-grid select:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-alert-rule-temperature{grid-column:1/-1}.tf-alert-rule-temperature>div{grid-template-columns:repeat(4,minmax(0,1fr))!important}.tf-alert-rule-fuel{grid-column:1/-1}.tf-alert-rule-fuel>div{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr)!important}.tf-alert-rule-fuel>div+div{margin-top:10px}.tf-alert-rule-switch{display:flex!important;align-items:center;gap:8px;align-self:end;min-height:38px;color:var(--tf-ink-2);font-size:11px;font-weight:650}.tf-alert-rule-switch input{width:15px;height:15px;flex:none;accent-color:var(--tf-accent)}.tf-alert-rule-note{margin:10px 0 0;color:var(--tf-ink-3);font-size:9.5px;line-height:1.45}.tf-alert-rule-note.is-warning{padding:8px 10px;border-radius:var(--tf-r-sm);background:var(--tf-alert-tint);color:var(--tf-alert);font-weight:650}.tf-alert-rules-footer{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:12px 20px;border-top:1px solid var(--tf-line-2);background:var(--tf-surface-2)}.tf-alert-rules-footer p{margin-block:0;margin-inline:0 auto;color:var(--tf-ink-3);font-size:10.5px}.tf-branding-packs-card{margin-bottom:14px}.tf-branding-packs-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.tf-branding-packs-layout fieldset{min-width:0;margin:0;padding:20px;border:0}.tf-branding-packs-layout fieldset+fieldset{border-inline-start:1px solid var(--tf-line-2)}.tf-branding-packs-layout legend{padding:0;color:var(--tf-ink);font-size:13px;font-weight:750}.tf-pack-picker>p{margin:5px 0 14px;color:var(--tf-ink-3);font-size:10.5px;line-height:1.45}.tf-pack-picker>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tf-pack-picker>div>label{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3);cursor:pointer}.tf-pack-picker input{width:16px;height:16px;flex:none;accent-color:var(--tf-accent)}.tf-pack-picker label>span{display:grid;gap:2px}.tf-pack-picker strong{color:var(--tf-ink);font-size:11px}.tf-pack-picker small{color:var(--tf-ink-3);font-size:9.5px;line-height:1.35}.tf-brand-fields{display:grid;align-content:start;gap:12px}.tf-brand-fields>label{display:grid;gap:5px}.tf-brand-fields>label>span:first-child{color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-brand-fields small{color:var(--tf-ink-3);font-size:9.5px;line-height:1.4}.tf-brand-accent-input{display:grid;grid-template-columns:42px minmax(0,1fr);gap:7px}.tf-brand-accent-input input[type=color]{padding:4px;cursor:pointer}.tf-company-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tf-company-settings-grid>section{min-width:0;padding:22px}.tf-company-settings-grid>section+section{border-inline-start:1px solid var(--tf-line-2)}.tf-company-settings-section-head{display:flex;align-items:center;justify-content:space-between;color:var(--tf-ink-3)}.tf-company-settings-section-head h3{margin:3px 0 0;color:var(--tf-ink);font-size:14px}.tf-company-settings-key-state,.tf-company-settings-key-form{display:grid;gap:12px;margin-top:20px}.tf-company-settings-key-state>div:first-child{display:grid;gap:4px;padding:14px;border-radius:10px;background:var(--tf-surface-2)}.tf-company-settings-key-state small{color:var(--tf-ink-3);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.tf-company-settings-key-state strong{font-size:18px;letter-spacing:.08em}.tf-company-settings-key-state span,.tf-company-settings-key-form>small{color:var(--tf-ink-3);font-size:10.5px;line-height:1.45}.tf-company-settings label{color:var(--tf-ink-2);font-size:11px;font-weight:700}.tf-company-settings input{width:100%;height:40px;padding:0 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12px;font-variant-numeric:tabular-nums}.tf-company-settings input:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-company-settings input:disabled{cursor:not-allowed;opacity:.65}.tf-company-settings-actions{display:flex;justify-content:flex-end;gap:8px}.tf-company-settings button{min-height:40px;padding:0 13px;border-radius:var(--tf-r-sm);font:inherit;font-size:11px;font-weight:700;transition:background-color .16s,color .16s,border-color .16s,transform .12s}.tf-company-settings button:active:not(:disabled){transform:scale(.97)}.tf-company-settings button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-company-settings button:disabled{cursor:not-allowed;opacity:.55}.tf-company-settings .tf-button-primary{border:1px solid var(--tf-accent-strong);background:var(--tf-accent-strong);color:var(--tf-on-accent)}.tf-company-settings .tf-button-primary:hover:not(:disabled){background:var(--tf-accent-ink)}.tf-company-settings .tf-button-secondary{border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2)}.tf-company-settings .tf-button-secondary:hover:not(:disabled){background:var(--tf-surface-2);color:var(--tf-ink)}.tf-company-settings .tf-button-danger{border:1px solid var(--tf-alert-tint);background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-company-settings .tf-button-danger:hover:not(:disabled){border-color:var(--tf-alert);background:var(--tf-alert);color:var(--tf-on-accent)}.tf-company-settings-usage{display:flex;flex-direction:column}.tf-company-settings-meter-copy{display:grid;gap:3px;margin-top:20px}.tf-company-settings-meter-copy strong{font-size:23px;font-variant-numeric:tabular-nums;letter-spacing:-.025em}.tf-company-settings-meter-copy strong span{color:var(--tf-ink-2);font-size:12px;font-weight:600;letter-spacing:0}.tf-company-settings-meter-copy small{color:var(--tf-ink-3);font-size:10px}.tf-company-settings-meter{height:7px;margin:12px 0 20px;border-radius:999px;overflow:hidden;background:var(--tf-line-2)}.tf-company-settings-meter i{display:block;height:100%;border-radius:inherit;background:var(--tf-accent)}.tf-company-settings-cap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:7px}.tf-company-settings-help,.tf-company-settings-validation{margin:9px 0 0;color:var(--tf-ink-3);font-size:10.5px;line-height:1.5}.tf-company-settings-validation{color:var(--tf-alert)}.tf-company-settings-message{margin:0;padding:11px 20px;border-top:1px solid var(--tf-line-2);font-size:11px;font-weight:650}.tf-company-settings-message.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-company-settings-message.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-company-settings-denied{display:grid;place-items:center}.tf-company-settings-denied>div{max-width:420px;padding:28px;text-align:center;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-company-settings-denied svg{color:var(--tf-ink-3)}.tf-company-settings-denied h1{margin:12px 0 6px;font-size:20px}.tf-company-settings-denied p{margin:0;color:var(--tf-ink-2);font-size:12px;line-height:1.5}.tf-company-settings .tf-pack-picker input[type=checkbox]{width:16px;height:16px;flex:none;padding:0;border:0;border-radius:3px;background:transparent;box-shadow:none;accent-color:var(--tf-accent)}.tf-pack-picker label>span{min-width:0}.tf-maps-key-card{margin-bottom:14px}.tf-maps-key-body{display:grid;gap:16px;padding:20px}.tf-maps-key-body>.tf-company-settings-key-state,.tf-maps-key-body>.tf-company-settings-key-form{max-width:620px;margin-top:0}.tf-maps-key-help{display:flex;align-items:center;gap:7px;margin:0;padding:10px 12px;border-radius:var(--tf-r-sm);background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-maps-key-help svg{flex:none}@media (max-width:760px){.tf-company-settings{padding:20px 14px 36px}.tf-company-settings-head{align-items:flex-start}.tf-company-settings-security{display:none}.tf-company-settings-scope{grid-template-columns:36px minmax(0,1fr)}.tf-company-settings-scope select{grid-column:1/-1}.tf-company-settings-card-head{align-items:flex-start;flex-wrap:wrap}.tf-company-settings-state{margin-inline-start:52px}.tf-company-settings-grid{grid-template-columns:1fr}.tf-company-settings-grid>section+section{border-inline-start:0;border-top:1px solid var(--tf-line-2)}.tf-company-settings-grid>section{padding:18px}.tf-company-settings-cap{grid-template-columns:1fr}.tf-company-settings-cap button{width:100%}.tf-alert-rules-grid{grid-template-columns:1fr;padding:14px}.tf-alert-rule-temperature,.tf-alert-rule-fuel{grid-column:auto}.tf-alert-rules-grid fieldset>div,.tf-alert-rule-temperature>div,.tf-alert-rule-fuel>div{grid-template-columns:1fr!important}.tf-alert-rules-footer{align-items:stretch;flex-direction:column}.tf-alert-rules-footer button{width:100%}.tf-branding-packs-layout{grid-template-columns:1fr}.tf-branding-packs-layout fieldset+fieldset{border-inline-start:0;border-top:1px solid var(--tf-line-2)}.tf-pack-picker>div{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.tf-company-settings button{transition:none}}.tf-rsub{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-rsub header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-rsub h4{margin:0 0 5px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rsub-lede{margin:0;font-size:12px;line-height:1.55;color:var(--tf-ink-2)}.tf-rsub-lede code{font-family:var(--tf-mono);font-size:11.5px}.tf-rsub-company{display:flex;align-items:center;gap:6px}.tf-rsub-company span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rsub select,.tf-rsub input{padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink);min-width:0}.tf-rsub input:disabled,.tf-rsub select:disabled{opacity:.55;cursor:not-allowed}.tf-rsub-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-rsub-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);font-size:12.5px}.tf-rsub-kind{font-family:var(--tf-mono);font-size:12px;color:var(--tf-ink);font-weight:600}.tf-rsub-scope{color:var(--tf-ink-2)}.tf-rsub-mode{color:var(--tf-ink-2);font-size:11.5px}.tf-rsub-mode.is-drop{color:var(--tf-bad-ink)}.tf-rsub-mode.is-unknown{color:var(--tf-ink-3);font-style:italic}.tf-rsub-state{font-size:11px;font-weight:600;color:var(--tf-warn-ink)}.tf-rsub-state.is-off{color:var(--tf-ink-3);font-weight:400}.tf-rsub-note{color:var(--tf-ink-3);font-size:11.5px;font-style:italic}.tf-rsub-actions{margin-left:auto;display:flex;gap:6px}.tf-rsub-actions button{padding:4px 9px;font-size:11.5px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-rsub-actions button.is-delete{color:var(--tf-bad-ink);border-color:var(--tf-bad-line)}.tf-rsub-actions button:disabled{opacity:.5;cursor:not-allowed}.tf-rsub-observed>div{display:flex;gap:6px;flex-wrap:wrap}.tf-rsub-observed button{padding:4px 9px;font-size:11.5px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);cursor:pointer}.tf-rsub-observed button b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-rsub-add span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rsub-go{padding:7px 12px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-rsub-hint{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-rsub-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-rsub-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-rsub-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-rsub-proto{font-family:var(--tf-mono);font-size:11.5px;color:var(--tf-ink-2)}.tf-rsub-kind{font-weight:600;color:var(--tf-ink);font-size:12px}.tf-rsub-text{font-family:var(--tf-mono);font-size:11px;color:var(--tf-ink-2);background:var(--tf-surface);padding:2px 6px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);max-width:40ch;overflow-x:auto;white-space:nowrap}.tf-rsub-list button{margin-left:auto;padding:4px 9px;font-size:11.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-rsub-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-rsub-form label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-rsub-wide{flex:1 1 340px}.tf-rsub-wide small{font-family:var(--tf-mono);font-size:10.5px;color:var(--tf-ink-3)}.tf-rsub-missing,.tf-rsub-warn{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-rsub{display:flex;flex-direction:column;gap:9px;padding:14px 16px;margin-top:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-rsub h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-rsub-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-rsub-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.tf-rsub-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:7px 10px;font-size:12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1)}.tf-rsub-device{font-weight:600;color:var(--tf-ink)}.tf-rsub-cadence{color:var(--tf-ink-3);font-size:11px}.tf-rsub-to{color:var(--tf-ink-2);font-size:11.5px}.tf-rsub-list button{margin-left:auto;padding:4px 9px;font-size:11.5px;cursor:pointer;border:1px solid var(--tf-bad-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-bad-ink)}.tf-rsub-add{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-rsub-add label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-rsub-wide{flex:1 1 280px}.tf-rsub-add small{font-size:10.5px;color:var(--tf-ink-3)}.tf-rsub-go{padding:7px 12px;font-size:12.5px;font-weight:600;cursor:pointer;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent)}.tf-rsub-go:disabled{opacity:.5;cursor:not-allowed}.tf-rsub-hint,.tf-rsub-gate{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-fuel-overlay-card{display:grid;gap:12px;padding:16px}.tf-fuel-overlay-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tf-fuel-overlay-card header>div{display:grid;gap:3px;min-width:0}.tf-fuel-overlay-eyebrow{display:flex;align-items:center;gap:6px;color:var(--tf-ink-3);font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-fuel-overlay-card h3{margin:0;color:var(--tf-ink);font-size:15px}.tf-fuel-overlay-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.tf-fuel-overlay-summary>div{display:grid;gap:2px;padding:9px 11px;border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-fuel-overlay-summary>div.is-alert{background:var(--tf-alert-tint)}.tf-fuel-overlay-summary>div.is-alert strong{color:var(--tf-alert)}.tf-fuel-overlay-summary small{color:var(--tf-ink-3);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase}.tf-fuel-overlay-summary strong{color:var(--tf-ink);font-size:15px;font-variant-numeric:tabular-nums}.tf-fuel-overlay-panel-title{margin:4px 0 -6px;color:var(--tf-ink-2);font-size:10.5px;font-weight:700}.tf-fuel-overlay-legend{display:flex;flex-wrap:wrap;gap:14px}.tf-fuel-overlay-legend span{display:flex;align-items:center;gap:6px;color:var(--tf-ink-2);font-size:10px}.tf-fuel-overlay-legend i{width:11px;height:3px;border-radius:2px}.tf-fuel-overlay-note,.tf-fuel-overlay-empty{margin:0;color:var(--tf-ink-3);font-size:9.5px;line-height:1.45}.tf-fuel-overlay-empty{padding:18px 0;font-size:11px;text-align:center}.tf-fuel-overlay-note.is-warning{padding:8px 10px;border-radius:var(--tf-r-sm);background:var(--tf-alert-tint);color:var(--tf-alert);font-weight:650}.tf-chart-export{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;flex:none}.tf-chart-export button{display:inline-flex;align-items:center;gap:5px;width:auto;min-height:30px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);font:inherit;font-size:10.5px;font-weight:700;cursor:pointer}.tf-chart-export button:hover:not(:disabled){background:var(--tf-surface-2);color:var(--tf-ink)}.tf-chart-export button:disabled{cursor:not-allowed;opacity:.5}.tf-chart-export button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-chart-export span{flex-basis:100%;color:var(--tf-ink-3);font-size:9.5px;text-align:end}.tf-fuel-economy-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;flex:none}.tf-fuel-economy-mode{display:inline-flex;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);overflow:hidden}.tf-fuel-economy-mode button{min-height:30px;width:auto;padding:0 10px;border:0;background:var(--tf-surface);color:var(--tf-ink-2);font:inherit;font-size:10.5px;font-weight:700;cursor:pointer}.tf-fuel-economy-mode button+button{border-inline-start:1px solid var(--tf-line)}.tf-fuel-economy-mode button[aria-pressed=true]{background:var(--tf-accent);color:var(--tf-on-accent)}.tf-fuel-economy-mode button:hover:not([aria-pressed=true]){background:var(--tf-surface-2);color:var(--tf-ink)}.tf-fuel-economy-mode button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:-3px}.tf-fuel-economy-panel-title{margin:4px 0 -6px;color:var(--tf-ink-2);font-size:10.5px;font-weight:700}.tf-fuel-economy-note{margin:0;color:var(--tf-ink-3);font-size:9.5px;line-height:1.45}.tf-fuel-economy-note.is-muted{padding:14px 0;font-size:11px;text-align:center}.tf-fuel-economy-note.is-warning{padding:8px 10px;border-radius:var(--tf-r-sm);background:var(--tf-alert-tint);color:var(--tf-alert);font-weight:650}.tf-fd-card{display:grid;gap:12px;padding:16px;border:1px solid var(--tf-line);border-radius:var(--tf-radius);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-fd-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.tf-fd-card>header>div{display:grid;gap:3px;min-width:0}.tf-fd-eyebrow{display:flex;align-items:center;gap:6px;color:var(--tf-fuel);font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-fd-card h3{margin:0;color:var(--tf-ink);font-size:15px}.tf-fd-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:0}.tf-fd-summary>div{display:grid;gap:2px;padding:9px 11px;border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-fd-summary dt{color:var(--tf-ink-3);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase}.tf-fd-summary dd{margin:0;color:var(--tf-ink);font-size:15px;font-weight:750;font-variant-numeric:tabular-nums}.tf-fd-summary>div.is-alert{background:var(--tf-alert-tint)}.tf-fd-summary>div.is-alert dd{color:var(--tf-alert)}.tf-fd-table-wrap{overflow-x:auto}.tf-fd-table{width:100%;border-collapse:collapse;font-size:11.5px}.tf-fd-table th{padding:6px 8px;border-bottom:1px solid var(--tf-line);color:var(--tf-ink-3);font-size:9.5px;font-weight:700;letter-spacing:.05em;text-align:start;text-transform:uppercase;white-space:nowrap}.tf-fd-table td{padding:7px 8px;border-bottom:1px solid var(--tf-line-2);color:var(--tf-ink-2);vertical-align:middle;white-space:nowrap}.tf-fd-table .is-num{font-variant-numeric:tabular-nums;text-align:end}.tf-fd-row time{font-variant-numeric:tabular-nums}.tf-fd-row.is-open td{border-bottom-color:transparent}.tf-fd-kind{display:flex;align-items:center;gap:6px}.tf-fd-kind-label{display:inline-flex;align-items:center;gap:5px;font-weight:700;color:var(--tf-ink)}.tf-fd-row.is-drain .tf-fd-kind-label,.tf-fd-row.is-drain .tf-fd-delta{color:var(--tf-alert)}.tf-fd-row.is-drain{background:var(--tf-alert-tint)}.tf-fd-row.is-filling .tf-fd-delta{color:var(--tf-run)}.tf-fd-delta{font-weight:750}.tf-fd-toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer;transition:transform .15s}.tf-fd-toggle[aria-expanded=true]{transform:rotate(180deg)}.tf-fd-toggle:hover{background:var(--tf-surface-2);color:var(--tf-ink)}.tf-fd-toggle:focus-visible,.tf-fd-actions button:focus-visible{outline:2px solid var(--tf-focus);outline-offset:1px}.tf-fd-row.is-grouped td:first-child{box-shadow:inset 3px 0 0 var(--tf-idle)}.tf-fd-split{display:inline-block;padding:1px 6px;border:1px solid var(--tf-warn-line);border-radius:999px;background:var(--tf-warn-bg);color:var(--tf-warn-ink);font-size:9.5px;font-weight:700;white-space:nowrap}.tf-fd-validity{display:inline-block;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:700;white-space:nowrap}.tf-fd-validity.is-valid{background:var(--tf-ok-tint);color:var(--tf-ok-ink)}.tf-fd-validity.is-moving{background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-fd-validity.is-short{background:var(--tf-nodata-tint);color:var(--tf-ink-2)}.tf-fd-validity.is-unknown{background:var(--tf-surface-2);color:var(--tf-ink-3)}.tf-fd-place{max-width:260px}.tf-fd-place>span{display:inline-block;max-width:230px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.tf-fd-place>svg{margin-inline-end:4px;vertical-align:middle;color:var(--tf-ink-3)}.tf-fd-noplace{color:var(--tf-nodata);font-style:italic;font-variant-numeric:tabular-nums}.tf-fd-actions{text-align:end}.tf-fd-actions button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-accent);cursor:pointer}.tf-fd-actions button:hover{border-color:var(--tf-accent);background:var(--tf-accent-tint)}.tf-fd-details td{padding:4px 8px 12px 36px;white-space:normal}.tf-fd-details.is-drain td{background:var(--tf-alert-tint)}.tf-fd-details dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 16px;margin:0;padding:10px 12px;border:1px solid var(--tf-line-2);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-fd-details dl>div{display:grid;gap:2px}.tf-fd-details dl>div.is-wide{grid-column:1/-1}.tf-fd-details dt{color:var(--tf-ink-3);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase}.tf-fd-details dd{margin:0;color:var(--tf-ink);font-size:12px;font-variant-numeric:tabular-nums}.tf-fd-split-hint{display:flex;align-items:flex-start;gap:6px;margin:8px 0 0;padding:8px 10px;border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm);background:var(--tf-warn-bg);color:var(--tf-warn-ink);font-size:11px;line-height:1.4}.tf-fd-split-hint svg{flex:none;margin-top:1px}.tf-fd-legend{display:flex;flex-wrap:wrap;gap:14px}.tf-fd-legend span{display:flex;align-items:center;gap:6px;color:var(--tf-ink-2);font-size:10px}.tf-fd-legend i{width:9px;height:9px;border:2px solid var(--tf-ink-2);border-radius:50%;background:var(--tf-surface)}.tf-fd-legend i.is-fill{border-color:var(--tf-run)}.tf-fd-legend i.is-drain{border-color:var(--tf-alert)}.tf-fd-note{margin:0;color:var(--tf-ink-3);font-size:9.5px;line-height:1.45}.tf-fd-note.is-warning{color:var(--tf-warn-ink)}.tf-fd-empty{margin:0;padding:18px 0;color:var(--tf-ink-3);font-size:11px;text-align:center}.tf-fd-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width:900px){.tf-fd-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.tf-report-settings{max-width:1180px;margin:0 auto;padding:18px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-report-settings>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--tf-line-2)}.tf-report-settings>header span,.tf-branding-form>header>div>span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-report-settings>header h2{margin:3px 0 0;font-size:17px}.tf-report-settings>header p{margin:3px 0 0;color:var(--tf-ink-3);font-size:10.5px}.tf-report-settings>header>svg{color:var(--tf-accent-strong)}.tf-branding-company{max-width:420px;display:grid;gap:5px;margin:15px 0;color:var(--tf-ink-2);font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.tf-branding-company select,.tf-branding-form input,.tf-branding-form select,.tf-branding-form textarea{width:100%;min-height:40px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:600 11px var(--tf-sans)}.tf-branding-form textarea{padding-top:9px;resize:vertical}.tf-branding-company select:focus,.tf-branding-form input:focus,.tf-branding-form select:focus,.tf-branding-form textarea:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-branding-layout{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:16px}.tf-branding-preview{position:sticky;top:16px;align-self:start;padding:14px;border-radius:11px;background:var(--tf-surface-2)}.tf-branding-preview>span{color:var(--tf-ink-3);font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.tf-branding-preview>article{margin-top:10px;padding:18px;border-radius:7px;background:var(--tf-surface);box-shadow:var(--tf-shadow);aspect-ratio:.72;display:flex;flex-direction:column;color:var(--preview-primary)}.tf-branding-preview article header{display:flex;align-items:center;gap:9px}.tf-branding-preview img,.tf-branding-logo-placeholder{width:42px;height:42px;object-fit:contain;border-radius:7px}.tf-branding-logo-placeholder{display:grid;place-items:center;background:color-mix(in srgb,var(--preview-accent) 12%,transparent);color:var(--preview-accent)}.tf-branding-preview header div{display:grid;gap:2px}.tf-branding-preview header strong{font-size:12px}.tf-branding-preview header small{color:var(--tf-ink-3);font-size:7px}.tf-branding-preview-rule{height:3px;margin:14px 0;background:var(--preview-accent)}.tf-branding-preview section{display:grid;gap:5px}.tf-branding-preview section small{color:var(--tf-ink-3);font-size:7px;text-transform:uppercase}.tf-branding-preview section b{font-size:25px;font-variant-numeric:tabular-nums}.tf-branding-preview section b i{font-size:8px;font-style:normal}.tf-branding-preview section span{color:var(--tf-ink-3);font-size:7px}.tf-branding-preview footer{display:flex;justify-content:space-between;gap:8px;margin-top:auto;padding-top:9px;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-3);font-size:7px}.tf-branding-preview footer b{color:var(--preview-accent)}.tf-branding-preview>p{margin:10px 2px 0;color:var(--tf-ink-3);font-size:9px;line-height:1.45}.tf-branding-form{min-width:0;border:1px solid var(--tf-line-2);border-radius:11px;overflow:hidden}.tf-branding-form>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:var(--tf-surface-2)}.tf-branding-form>header h2{margin:3px 0 0;font-size:14px}.tf-branding-access{display:flex;align-items:center;gap:5px;padding:5px 7px;border-radius:999px;background:var(--tf-offline-tint);color:var(--tf-ink-3);font-size:9px;font-weight:750}.tf-branding-access.is-editable{background:var(--tf-run-tint);color:var(--tf-run)}.tf-branding-form fieldset{margin:0;padding:15px;border:0;border-top:1px solid var(--tf-line-2)}.tf-branding-form fieldset:disabled{opacity:.68}.tf-branding-form legend{padding:0 5px;color:var(--tf-ink);font-size:11px;font-weight:750}.tf-branding-fields{display:grid;gap:10px}.tf-branding-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-branding-fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.tf-branding-fields label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:9.5px;font-weight:700}.tf-branding-fields label.is-wide{grid-column:1/-1}.tf-branding-color span{display:grid;grid-template-columns:42px 1fr;gap:6px}.tf-branding-color input[type=color]{padding:4px}.tf-branding-logo-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px}.tf-branding-file{position:relative;display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px dashed var(--tf-line);border-radius:9px;color:var(--tf-accent-strong);cursor:pointer}.tf-branding-file span{display:grid;gap:2px;font-size:10px;font-weight:750}.tf-branding-file small{color:var(--tf-ink-3);font-size:8.5px;font-weight:500}.tf-branding-file input{position:absolute;width:1px;height:1px;opacity:0}.tf-branding-logo-actions button{min-height:38px;padding:0 11px;border:1px solid var(--tf-alert-tint);border-radius:8px;background:var(--tf-alert-tint);color:var(--tf-alert);font:700 9.5px var(--tf-sans)}.tf-branding-validation,.tf-branding-message{margin:10px 0 0;color:var(--tf-alert);font-size:9.5px}.tf-branding-message{margin:0;padding:10px 15px;border-top:1px solid var(--tf-line-2);font-weight:650}.tf-branding-message.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-branding-message.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-branding-save{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;border-top:1px solid var(--tf-line-2);background:var(--tf-surface-2)}.tf-branding-save span{color:var(--tf-ink-3);font-size:9px}.tf-branding-save button{min-height:40px;padding:0 14px;border:1px solid var(--tf-accent-strong);border-radius:var(--tf-r-sm);background:var(--tf-accent-strong);color:var(--tf-on-accent);font:750 10px var(--tf-sans)}.tf-branding-save button:disabled{cursor:not-allowed;opacity:.5}.tf-branding-select-empty{min-height:280px;display:grid;place-items:center;align-content:center;gap:6px;color:var(--tf-ink-3)}.tf-branding-select-empty strong{color:var(--tf-ink);font-size:12px}.tf-branding-select-empty span{font-size:9.5px}.tf-branding-unavailable{margin-top:40px}@media (max-width:900px){.tf-branding-layout{grid-template-columns:1fr}.tf-branding-preview{position:static}.tf-branding-preview>article{max-width:360px;aspect-ratio:auto;min-height:300px}.tf-branding-fields.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.tf-report-settings{padding:14px}.tf-branding-fields.two,.tf-branding-fields.three{grid-template-columns:1fr}.tf-branding-fields>*{grid-column:1}.tf-branding-logo-actions,.tf-branding-save{align-items:stretch;flex-direction:column}.tf-branding-logo-actions button,.tf-branding-save button{width:100%}}.tf-reports{height:100%;overflow:auto;padding:28px clamp(18px,4vw,52px) 48px;background:var(--tf-bg);color:var(--tf-ink)}.tf-reports-head{max-width:1180px;margin:0 auto 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.tf-reports-head>div>span,.tf-report-controls-title>div>span,.tf-report-catalog>header span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-reports-head h1{margin:5px 0 4px;font-size:28px;line-height:1.15;letter-spacing:-.025em}.tf-reports-head p{max-width:640px;margin:0;color:var(--tf-ink-2);font-size:13px;line-height:1.55;text-wrap:pretty}.tf-reports-source{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);color:var(--tf-ink-2);font-size:11px;font-weight:650;white-space:nowrap}.tf-report-controls{max-width:1180px;margin:0 auto 16px;display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(150px,.8fr) minmax(150px,.8fr) minmax(190px,1fr);gap:12px;align-items:end;padding:16px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-report-controls-title{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding-bottom:2px}.tf-report-control-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-report-controls-title h2{margin:2px 0 0;font-size:15px}.tf-report-controls label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.tf-report-controls select,.tf-report-controls input,.tf-report-minimum input{width:100%;height:40px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:600 11px var(--tf-sans);font-variant-numeric:tabular-nums}.tf-report-controls select:focus,.tf-report-controls input:focus,.tf-report-minimum input:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-report-controls>.tf-state{min-height:0;padding:0}.tf-report-window-state{min-height:40px;display:flex;align-items:center;gap:8px;padding:0 10px;border-radius:var(--tf-r-sm);background:var(--tf-offline-tint);color:var(--tf-ink-3);font-size:10.5px;font-weight:650}.tf-report-window-state.is-ready{background:var(--tf-run-tint);color:var(--tf-run)}.tf-report-notice{max-width:1180px;margin:0 auto 16px;padding:10px 13px;border-radius:var(--tf-r-sm);font-size:11px;font-weight:650}.tf-report-notice.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-report-notice.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-report-catalog{max-width:1180px;margin:0 auto}.tf-report-catalog>header{display:flex;align-items:end;justify-content:space-between;margin:0 2px 11px}.tf-report-catalog>header h2{margin:3px 0 0;font-size:18px;letter-spacing:-.015em}.tf-report-catalog>header b{color:var(--tf-ink-3);font-size:10px;font-weight:700}.tf-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tf-report-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 12px;padding:16px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-report-card-mark{width:38px;height:38px;display:grid;place-items:center;grid-row:1/3;border-radius:11px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-report-card-copy h2{margin:1px 0 4px;font-size:14px;letter-spacing:-.01em}.tf-report-card-copy p{min-height:34px;margin:0;color:var(--tf-ink-2);font-size:10.5px;line-height:1.55;text-wrap:pretty}.tf-report-card-policy{grid-column:2;display:flex;gap:8px;margin-top:9px;color:var(--tf-ink-3);font-size:9.5px}.tf-report-card-policy span{padding:4px 6px;border-radius:6px;background:var(--tf-surface-2);font-variant-numeric:tabular-nums}.tf-report-minimum{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding-top:12px;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-report-minimum>span:last-child{display:flex;align-items:center;gap:6px}.tf-report-minimum input{width:90px;height:34px}.tf-report-minimum b{color:var(--tf-ink-3);font-size:9.5px}.tf-report-formats{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px;margin-top:13px}.tf-report-formats button{min-width:72px;min-height:40px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);font:700 10px var(--tf-sans);transition:background-color .16s,color .16s,border-color .16s,transform .12s}.tf-report-formats button:hover:not(:disabled){border-color:var(--tf-accent);background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-report-formats button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-report-formats button:active:not(:disabled){transform:scale(.97)}.tf-report-formats button:disabled{cursor:not-allowed;opacity:.48}.tf-reports-unavailable{max-width:720px;margin:80px auto 0;display:flex;align-items:flex-start;gap:14px;padding:24px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);color:var(--tf-ink-3)}.tf-reports-unavailable h2{margin:0 0 5px;color:var(--tf-ink);font-size:17px}.tf-reports-unavailable p{margin:0;color:var(--tf-ink-2);font-size:11px;line-height:1.5}.tf-report-card-warning{grid-column:1/-1;margin:11px 0 0;padding:7px 9px;border-radius:8px;background:var(--tf-idle-tint);color:var(--tf-idle);font-size:10px;font-weight:650}.tf-report-tabs{max-width:1180px;margin:0 auto 16px;display:flex;gap:4px;padding:4px;border:1px solid var(--tf-line);border-radius:12px;background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);width:max-content}.tf-report-tabs button{min-height:40px;display:flex;align-items:center;gap:7px;padding:0 13px;border:0;border-radius:8px;background:transparent;color:var(--tf-ink-2);font:700 11px var(--tf-sans)}.tf-report-tabs button[aria-pressed=true]{background:var(--tf-ink);color:var(--tf-surface)}.tf-report-tabs button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-report-analytics{max-width:1180px;margin:0 auto 18px;padding:16px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-report-analytics>header,.tf-report-schedules>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}.tf-report-analytics>header span,.tf-report-schedules>header span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-report-analytics>header h2,.tf-report-schedules>header h2{margin:3px 0 0;font-size:17px}.tf-report-analytics>header b{padding:5px 7px;border-radius:7px;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:9.5px}.tf-report-analytics-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tf-report-analytics-kpis article{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;padding:12px;border-radius:10px;background:var(--tf-surface-2);color:var(--tf-accent-strong)}.tf-report-analytics-kpis svg{grid-row:1/3;margin-top:2px}.tf-report-analytics-kpis span{color:var(--tf-ink-3);font-size:9.5px;font-weight:700;text-transform:uppercase}.tf-report-analytics-kpis strong{color:var(--tf-ink);font-size:19px;font-variant-numeric:tabular-nums}.tf-report-analytics-kpis small{color:var(--tf-ink-2);font-size:10px;font-weight:650}.tf-report-analytics-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:12px;margin-top:12px}.tf-report-analytics-grid>section{padding:13px;border:1px solid var(--tf-line-2);border-radius:10px}.tf-report-analytics-grid h3{margin:0 0 12px;font-size:12px}.tf-report-split{height:11px;display:flex;overflow:hidden;border-radius:999px;background:var(--tf-line-2)}.tf-report-split i{display:block;height:100%}.tf-report-split-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-top:12px}.tf-report-split-legend span{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:6px;color:var(--tf-ink-2);font-size:10px}.tf-report-split-legend i{width:7px;height:7px;border-radius:50%}.tf-report-split-legend b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-report-hotspots ol{display:grid;gap:7px;margin:0;padding:0;list-style:none}.tf-report-hotspots li{display:grid;gap:3px;padding-bottom:7px;border-bottom:1px solid var(--tf-line-2)}.tf-report-hotspots li:last-child{padding-bottom:0;border:0}.tf-report-hotspots li span{display:flex;align-items:center;gap:5px;color:var(--tf-ink);font-size:10.5px;font-weight:650}.tf-report-hotspots li svg{color:var(--tf-accent-strong)}.tf-report-hotspots li b,.tf-report-hotspots>p{margin:0;color:var(--tf-ink-3);font-size:9.5px;font-weight:600;font-variant-numeric:tabular-nums}.tf-report-schedules{max-width:1180px;margin:0 auto;padding:18px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-report-schedules>header{padding-bottom:14px;border-bottom:1px solid var(--tf-line-2)}.tf-report-schedules>header p{margin:3px 0 0;color:var(--tf-ink-3);font-size:10.5px}.tf-report-schedules>header>svg{color:var(--tf-accent-strong)}.tf-report-schedule-layout{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);gap:18px}.tf-report-schedule-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:15px;border-radius:11px;background:var(--tf-surface-2)}.tf-report-schedule-form h3{grid-column:1/-1;margin:0 0 2px;font-size:13px}.tf-report-schedule-form label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:9.5px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.tf-report-schedule-form label.is-wide{grid-column:1/-1}.tf-report-schedule-form input,.tf-report-schedule-form select{width:100%;height:40px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface);color:var(--tf-ink);font:600 11px var(--tf-sans)}.tf-report-schedule-form input:focus,.tf-report-schedule-form select:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-report-create{grid-column:1/-1;min-height:42px;border:1px solid var(--tf-accent-strong);border-radius:var(--tf-r-sm);background:var(--tf-accent-strong);color:var(--tf-on-accent);font:750 11px var(--tf-sans)}.tf-report-create:disabled{cursor:not-allowed;opacity:.5}.tf-report-create:focus-visible,.tf-report-delete:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-report-existing{min-width:0}.tf-report-existing-head{display:flex;align-items:center;justify-content:space-between;margin:2px 0 10px}.tf-report-existing-head h3{margin:0;font-size:13px}.tf-report-existing-head span{min-width:24px;padding:4px 6px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font-size:9px;text-align:center}.tf-report-schedule-list{display:grid;gap:7px}.tf-report-schedule-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px;border:1px solid var(--tf-line-2);border-radius:10px}.tf-report-schedule-cadence{display:grid;place-items:center;gap:3px;width:54px;padding:7px 4px;border-radius:8px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font-size:8.5px;font-weight:750;text-transform:uppercase}.tf-report-schedule-list h3{margin:0 0 2px;font-size:11.5px}.tf-report-schedule-list p,.tf-report-schedule-list small{margin:0;color:var(--tf-ink-2);font-size:9.5px}.tf-report-schedule-list small{display:block;margin-top:3px;color:var(--tf-ink-3);overflow-wrap:anywhere}.tf-report-schedule-status{padding:5px 7px;border-radius:999px;background:var(--tf-offline-tint);color:var(--tf-ink-3);font-size:8.5px;font-weight:750}.tf-report-schedule-status.is-enabled{background:var(--tf-run-tint);color:var(--tf-run)}.tf-report-delete{min-height:36px;padding:0 9px;border:1px solid var(--tf-alert-tint);border-radius:8px;background:var(--tf-alert-tint);color:var(--tf-alert);font:700 9.5px var(--tf-sans)}.tf-report-delete:disabled{cursor:not-allowed;opacity:.45}.tf-report-schedule-empty{min-height:180px;display:grid;place-items:center;align-content:center;gap:5px;color:var(--tf-ink-3);text-align:center}.tf-report-schedule-empty strong{color:var(--tf-ink);font-size:12px}.tf-report-schedule-empty span{font-size:10px}.tf-report-schedules-unavailable{margin-top:40px}.tf-report-schedules>.tf-report-notice{margin:14px 0 0}@media (max-width:900px){.tf-report-controls{grid-template-columns:1fr 1fr}.tf-report-controls-title,.tf-report-window-state{grid-column:1/-1}.tf-report-grid,.tf-report-schedule-layout,.tf-report-analytics-grid{grid-template-columns:1fr}}@media (max-width:560px){.tf-reports{padding:20px 12px 36px}.tf-reports-source{display:none}.tf-report-tabs{width:100%}.tf-report-tabs button{flex:1;justify-content:center}.tf-report-controls{grid-template-columns:1fr}.tf-report-controls>*{grid-column:1}.tf-report-card{padding:14px}.tf-report-card-policy{flex-wrap:wrap}.tf-report-formats{justify-content:stretch;flex-wrap:wrap}.tf-report-formats button{flex:1}.tf-report-minimum{align-items:flex-start;flex-direction:column}.tf-report-analytics-kpis,.tf-report-schedule-form{grid-template-columns:1fr}.tf-report-schedule-form>*{grid-column:1}.tf-report-schedule-list article{grid-template-columns:auto 1fr}.tf-report-schedule-status,.tf-report-delete{grid-column:2}.tf-report-delete{width:max-content}.tf-report-schedules{padding:14px}}@media (prefers-reduced-motion:reduce){.tf-report-formats button{transition:none}.tf-report-spin{animation:none}}.tf-report-charts-head{display:grid;gap:4px;margin:0 0 12px}.tf-report-charts-head h2{margin:0;font-size:18px}.tf-report-charts-head p{margin:0;color:var(--tf-ink-3);font-size:11px;line-height:1.5}.tf-report-charts{display:grid;gap:14px;margin-top:14px}.tf-report-charts-hint{margin:14px 0 0;padding:16px;border:1px dashed var(--tf-line);border-radius:var(--tf-r-sm);color:var(--tf-ink-3);font-size:11px;text-align:center}.tf-chart-card.is-open{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-group-reports{height:100%;overflow:auto;padding:28px clamp(18px,4vw,52px) 48px;background:var(--tf-bg);color:var(--tf-ink)}.tf-group-reports-head,.tf-group-controls,.tf-group-body{max-width:1180px;margin:0 auto}.tf-group-reports-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px}.tf-group-reports-head span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-group-reports-head h1{margin:5px 0;font-size:28px}.tf-group-reports-head p{margin:0;color:var(--tf-ink-2);font-size:13px}.tf-group-reports-head>svg{color:var(--tf-accent-strong)}.tf-group-controls{display:grid;grid-template-columns:repeat(5,1fr) auto;align-items:end;gap:10px;padding:15px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);margin-bottom:14px}.tf-group-controls label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700;text-transform:uppercase}.tf-group-controls input{height:38px;width:100%;padding:0 9px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:600 11px var(--tf-sans)}.tf-group-downloads{display:flex;gap:5px}.tf-group-downloads button{height:38px;padding:0 10px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-accent-strong);color:var(--tf-on-accent);font:700 10px var(--tf-sans)}.tf-group-downloads button:disabled{opacity:.5}.tf-group-job,.tf-group-notice{max-width:1180px;margin:0 auto 14px;padding:10px 12px;border-radius:8px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:11px}.tf-group-job{display:flex;align-items:center;gap:7px}.tf-group-body{display:grid;gap:14px}.tf-group-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.tf-group-kpis article{padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-group-kpis span{display:block;color:var(--tf-ink-3);font-size:10px;font-weight:700;text-transform:uppercase}.tf-group-kpis strong{display:block;margin-top:5px;font-size:22px;font-variant-numeric:tabular-nums}.tf-group-kpis small{font-size:10px;color:var(--tf-ink-2)}.tf-group-warning{display:flex;gap:7px;align-items:center;margin:0;padding:10px 12px;border-radius:8px;background:var(--tf-idle-tint);color:var(--tf-idle);font-size:11px}.tf-group-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tf-group-grid>section,.tf-group-table-wrap,.tf-group-trend{padding:16px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-group-body h2{margin:0 0 12px;font-size:14px}.tf-group-composition{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.tf-group-composition span{padding:11px 5px;text-align:center;background:var(--tf-surface-2);border-radius:8px;color:var(--tf-ink-2);font-size:10px;text-transform:capitalize}.tf-group-composition b{display:block;color:var(--tf-ink);font-size:18px}.tf-group-event-list{display:grid;gap:7px}.tf-group-event-list span{display:flex;justify-content:space-between;padding-bottom:6px;border-bottom:1px solid var(--tf-line-2);color:var(--tf-ink-2);font-size:11px}.tf-group-event-list b{color:var(--tf-ink)}.tf-group-muted{color:var(--tf-ink-3);font-size:11px}.tf-group-table-scroll{overflow-x:auto}.tf-group-table-wrap table{width:100%;border-collapse:collapse;font-size:11px}.tf-group-table-wrap th,.tf-group-table-wrap td{padding:9px 8px;border-bottom:1px solid var(--tf-line-2);text-align:left;white-space:nowrap}.tf-group-table-wrap th{color:var(--tf-ink-3);font-size:9px;text-transform:uppercase}.tf-group-table-wrap td{color:var(--tf-ink-2)}.tf-group-table-wrap td:first-child{color:var(--tf-ink);font-weight:700}.tf-group-trend>div{height:90px;display:flex;align-items:end;gap:5px;padding:8px;background:var(--tf-surface-2);border-radius:8px}.tf-group-trend span{flex:1;min-width:8px;background:var(--tf-accent);border-radius:4px 4px 0 0}.tf-report-spin{animation:tf-report-spin .8s linear infinite}@keyframes tf-report-spin{to{transform:rotate(360deg)}}@media (max-width:900px){.tf-group-controls{grid-template-columns:repeat(2,1fr)}.tf-group-downloads{grid-column:1/-1}.tf-group-grid{grid-template-columns:1fr}}@media (max-width:560px){.tf-group-reports{padding:20px 12px}.tf-group-kpis{grid-template-columns:1fr 1fr}.tf-group-composition{grid-template-columns:repeat(3,1fr)}}.tf-group-scope{max-width:1180px;margin:0 auto 14px;padding:15px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-group-scope h2{margin:0;font-size:15px}.tf-group-scope p{margin:5px 0 12px;color:var(--tf-ink-2);font-size:11px}.tf-group-select-grid{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:12px}.tf-group-select-grid>label,.tf-group-vehicles>label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700;text-transform:uppercase}.tf-group-select-grid select{width:100%;min-height:102px;padding:6px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:500 11px var(--tf-sans)}.tf-group-vehicles input[type=search],.tf-group-vehicles>input{height:34px;padding:0 9px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:500 11px var(--tf-sans)}.tf-group-vehicle-list{height:102px;overflow:auto;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-group-vehicle{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid var(--tf-line-2);font-size:11px;color:var(--tf-ink)}.tf-group-vehicle small{color:var(--tf-ink-3);font-size:9px}.tf-group-scope-meta{margin:10px 0 0!important;color:var(--tf-accent-ink)!important;font-weight:650}.tf-group-scope .tf-group-warning{margin:6px 0 0;padding:8px}@media (max-width:900px){.tf-group-select-grid{grid-template-columns:1fr 1fr}.tf-group-vehicles{grid-column:1/-1}}@media (max-width:560px){.tf-group-select-grid{grid-template-columns:1fr}}.tf-gr-chart{margin-top:18px}.tf-gr-chart h3{font-size:14px;margin:0 0 8px}.tf-gr-rail{display:flex;height:18px;border-radius:5px;overflow:hidden;background:#0f172a12}.tf-gr-rail span{min-width:1px}.tf-gr-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;font-size:11px;color:#64748b}.tf-gr-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px}.tf-gr-bars{height:150px;display:flex;align-items:flex-end;gap:4px;border-bottom:1px solid rgba(15,23,42,.12);padding-top:14px}.tf-gr-bar{flex:1;min-width:4px;background:var(--tf-accent, #0e7490);border-radius:3px 3px 0 0}.tf-gr-bar:hover{filter:brightness(1.15)}.tf-gr-bar.is-nodata{background:repeating-linear-gradient(45deg,rgba(148,163,184,.45),rgba(148,163,184,.45) 3px,transparent 3px,transparent 6px)}.tf-gr-barlabels{display:flex;gap:4px;margin-top:6px}.tf-gr-barlabels span{flex:1;min-width:4px;font-size:10px;color:#64748b;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-group-reports .tf-report-card{cursor:pointer}.tf-group-reports .tf-report-card.is-active{outline:2px solid var(--tf-accent, #0e7490);outline-offset:-2px}.tf-group-disclosure{margin-top:14px;padding:10px 12px;border-radius:10px;background:#0f172a0a;font-size:12px;line-height:1.5}.tf-group-run-summary{max-width:1180px;margin:0 auto 14px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface-2);box-shadow:var(--tf-shadow-sm)}.tf-group-run-summary-copy{display:grid;gap:3px;min-width:0}.tf-group-eyebrow{color:var(--tf-accent-strong);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.tf-group-run-summary strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-group-run-summary small{color:var(--tf-ink-2);font-size:10px}.tf-group-run-summary-stats{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;color:var(--tf-ink-2);font-size:10px;white-space:nowrap}.tf-group-run-summary-stats span{padding-left:10px;border-left:1px solid var(--tf-line)}.tf-group-run-summary-stats b{color:var(--tf-ink);font-size:14px;font-variant-numeric:tabular-nums}@media (max-width:560px){.tf-group-run-summary{align-items:flex-start;flex-direction:column}.tf-group-run-summary-stats{justify-content:flex-start}}.tf-reminders{height:100%;overflow:auto;padding:28px clamp(18px,4vw,52px) 48px;background:var(--tf-bg);color:var(--tf-ink)}.tf-reminders-head,.tf-reminder-toolbar,.tf-reminder-form,.tf-reminder-list{max-width:1080px;margin-left:auto;margin-right:auto}.tf-reminders-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.tf-reminders-head>div>span,.tf-reminder-form>header span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-reminders-head h1{margin:4px 0;font-size:28px}.tf-reminders-head p{margin:0;color:var(--tf-ink-2);font-size:12px}.tf-reminders-head button,.tf-reminder-form>button{min-height:42px;display:flex;align-items:center;gap:7px;padding:0 13px;border:1px solid var(--tf-accent-strong);border-radius:var(--tf-r-sm);background:var(--tf-accent-strong);color:var(--tf-on-accent);font:700 10px var(--tf-sans)}.tf-reminder-toolbar{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px;padding:11px 13px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-reminder-toolbar label,.tf-reminder-form label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.tf-reminder-toolbar select,.tf-reminder-form input,.tf-reminder-form select,.tf-reminder-form textarea{min-height:38px;padding:0 10px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);font:600 10.5px var(--tf-sans)}.tf-reminder-toolbar>span{color:var(--tf-ink-3);font-size:10px}.tf-reminder-form{margin-bottom:12px;padding:15px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-reminder-form>header{display:flex;justify-content:space-between;margin-bottom:12px}.tf-reminder-form h2{margin:3px 0 0;font-size:16px}.tf-reminder-form>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tf-reminder-form label.is-wide{grid-column:span 2}.tf-reminder-form textarea{padding-top:8px;resize:vertical}.tf-reminder-form>button{margin:12px 0 0 auto}.tf-reminder-form>button:disabled{opacity:.5}.tf-reminder-message{max-width:1080px;margin:0 auto 12px;padding:9px 12px;border-radius:8px;font-size:10px;font-weight:650}.tf-reminder-message.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-reminder-message.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-reminder-list{border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-reminder-list>header{display:flex;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--tf-line-2)}.tf-reminder-list h2{margin:0;font-size:15px}.tf-reminder-list>header span{color:var(--tf-ink-3);font-size:9px}.tf-reminder-list article{display:grid;grid-template-columns:120px minmax(0,1fr) 130px auto;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--tf-line-2);border-inline-start:3px solid transparent}.tf-reminder-list article:first-child{border-top:0}.tf-reminder-list article.is-overdue{border-inline-start-color:var(--tf-alert);background:color-mix(in srgb,var(--tf-alert-tint) 45%,transparent)}.tf-reminder-list article.is-soon{border-inline-start-color:var(--tf-idle);background:color-mix(in srgb,var(--tf-idle-tint) 38%,transparent)}.tf-reminder-list article.is-done{opacity:.58}.tf-reminder-kind{display:flex;align-items:center;gap:6px;color:var(--tf-accent-strong);font-size:9px;font-weight:750;text-transform:uppercase}.tf-reminder-copy h3{margin:0 0 3px;font-size:12px}.tf-reminder-copy p{margin:0;color:var(--tf-ink-3);font-size:9.5px}.tf-reminder-due{display:grid;gap:3px;text-align:end;font-variant-numeric:tabular-nums}.tf-reminder-due strong{font-size:11px}.tf-reminder-due span{color:var(--tf-ink-3);font-size:9px}.tf-reminder-actions{display:flex;gap:5px}.tf-reminder-actions button{min-height:36px;padding:0 9px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink-2);font:700 9px var(--tf-sans)}.tf-reminder-actions button.is-delete{border-color:var(--tf-alert-tint);background:var(--tf-alert-tint);color:var(--tf-alert)}@media (max-width:760px){.tf-reminders{padding:20px 12px 36px}.tf-reminders-head{flex-direction:column}.tf-reminder-form>div{grid-template-columns:1fr}.tf-reminder-form label.is-wide{grid-column:1}.tf-reminder-list article{grid-template-columns:1fr auto}.tf-reminder-kind,.tf-reminder-copy{grid-column:1}.tf-reminder-due,.tf-reminder-actions{grid-column:2;grid-row:auto}.tf-reminder-actions{flex-direction:column}}.tf-obligation-list{margin-top:14px}.tf-obligation-list>header{align-items:center}.tf-obligation-summary{display:flex;align-items:baseline;gap:6px;color:var(--tf-ink-2);font-size:10px}.tf-obligation-summary b{margin-left:8px;color:var(--tf-ink);font-size:18px;font-variant-numeric:tabular-nums}.tf-obligation-list article.is-overdue{border-left:3px solid var(--tf-alert)}.tf-obligation-list article.is-due-soon{border-left:3px solid var(--tf-idle)}.tf-obligation-list article.is-scheduled{border-left:3px solid var(--tf-accent)}.tf-obligation-empty{display:grid;justify-items:center;gap:6px;padding:28px 18px;text-align:center;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-2)}.tf-obligation-empty svg{color:var(--tf-accent-strong)}.tf-obligation-empty strong{color:var(--tf-ink);font-size:14px}.tf-obligation-empty span{font-size:11px}.tf-svcreq{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-svcreq-head{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-svcreq-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-svcreq-head h1{margin:8px 0;font-size:42px}.tf-svcreq-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-svcreq-head>div:last-child{display:flex;align-items:center;gap:12px}.tf-svcreq-head>div:last-child svg{color:var(--tf-accent)}.tf-svcreq-head button{border:0;border-radius:10px;padding:12px 16px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-svcreq-message{max-width:1320px;margin:-14px auto 22px;padding:12px 16px;border-radius:10px}.tf-svcreq-message.is-ok{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-svcreq-message.is-error{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}.tf-svcreq-toolbar{max-width:1320px;margin:0 auto 16px;display:flex;justify-content:space-between;align-items:center;color:var(--tf-ink-2)}.tf-svcreq-toolbar label{display:flex;align-items:center;gap:8px}.tf-svcreq-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:start}.tf-svcreq-list,.tf-svcreq-detail{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-svcreq-list>header,.tf-svcreq-detail>header{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-svcreq-list h2,.tf-svcreq-detail h2{margin:0;font-size:21px}.tf-svcreq-detail>header span{color:var(--tf-ink-3);font-size:13px}.tf-svcreq-hint{margin:0;padding:28px 24px;color:var(--tf-ink-3)}.tf-svcreq-list article{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:18px 24px;border-bottom:1px solid var(--tf-line-2);cursor:pointer}.tf-svcreq-list article:last-child{border-bottom:0}.tf-svcreq-list article.is-selected{background:var(--tf-accent-tint)}.tf-svcreq-list article.is-urgent{box-shadow:inset 4px 0 0 var(--tf-bad,#c33)}.tf-svcreq-list article.is-high{box-shadow:inset 4px 0 0 var(--tf-warn,#d90)}.tf-svcreq-kind{display:flex;align-items:center;gap:6px;color:var(--tf-ink-3);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.tf-svcreq-copy h3{margin:0 0 4px;font-size:16px}.tf-svcreq-copy p{margin:0;color:var(--tf-ink-2);font-size:14px}.tf-svcreq-meta{text-align:right}.tf-svcreq-meta strong{display:block;font-size:14px}.tf-svcreq-meta span{color:var(--tf-ink-3);font-size:13px}.tf-svcreq-actions{grid-column:1/-1;display:flex;gap:8px}.tf-svcreq-actions button{border:1px solid var(--tf-line);border-radius:8px;padding:7px 12px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font:inherit;font-weight:700;cursor:pointer}.tf-svcreq-actions button.is-reject{background:var(--tf-surface-2);color:var(--tf-ink-3)}.tf-svcreq-actions button:disabled{opacity:.55;cursor:wait}.tf-svcreq-detail article{display:flex;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-svcreq-detail article:last-child{border-bottom:0}.tf-svcreq-detail article.is-accepted{background:var(--tf-accent-tint)}.tf-svcreq-detail h3{margin:0 0 4px;font-size:16px}.tf-svcreq-detail p{margin:0;color:var(--tf-ink-2);font-size:14px}.tf-svcreq-detail aside{text-align:right;display:grid;gap:6px;justify-items:end}.tf-svcreq-detail aside strong{font-size:16px}.tf-svcreq-detail aside button{border:0;border-radius:8px;padding:7px 12px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-svcreq-detail aside button:disabled{opacity:.6;cursor:wait}.tf-svcreq-detail aside .is-awarded{color:var(--tf-accent-strong);font-weight:800;font-size:13px}.tf-svcreq-detail .tf-vms-form{margin:20px 24px 24px;box-shadow:none}.tf-svcreq-thread{padding:20px 24px 24px;border-top:1px solid var(--tf-line-2)}.tf-svcreq-thread h3{margin:0 0 12px;font-size:16px}.tf-svcreq-thread-list{margin:0;padding:0;list-style:none;display:grid;gap:10px}.tf-svcreq-thread-list li{padding:10px 12px;border-radius:10px;background:var(--tf-surface-2);border-left:3px solid var(--tf-line)}.tf-svcreq-thread-list li.is-status-change,.tf-svcreq-thread-list li.is-award{border-left-color:var(--tf-accent)}.tf-svcreq-thread-list li.is-quote{border-left-color:var(--tf-warn,#d90)}.tf-svcreq-thread-list li strong{display:block;font-size:14px}.tf-svcreq-thread-list li span{color:var(--tf-ink-3);font-size:12px}.tf-svcreq-thread-list li p{margin:6px 0 0;color:var(--tf-ink-2);font-size:14px;white-space:pre-wrap}.tf-svcreq-thread-none{color:var(--tf-ink-3);font-size:14px}.tf-svcreq-thread-add{margin-top:14px;display:grid;gap:8px;justify-items:start}.tf-svcreq-thread-add label{color:var(--tf-ink-2);font-size:13px;font-weight:700}.tf-svcreq-thread-add textarea{width:100%;box-sizing:border-box;border:1px solid var(--tf-line);border-radius:10px;padding:10px 12px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;resize:vertical}.tf-svcreq-thread-add button{border:0;border-radius:8px;padding:8px 14px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-svcreq-thread-add button:disabled{opacity:.55;cursor:not-allowed}@media (max-width:900px){.tf-svcreq{padding:28px 16px}.tf-svcreq-head h1{font-size:32px}.tf-svcreq-grid{grid-template-columns:1fr}.tf-svcreq-list article{grid-template-columns:1fr}.tf-svcreq-meta{text-align:left}}.tf-work-orders-head>div:last-child,.tf-workshops-head>div:last-child{display:flex;align-items:center;gap:12px}.tf-work-orders-head>div:last-child button,.tf-workshops-head>div:last-child button{border:0;border-radius:10px;padding:12px 16px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-work-orders-create,.tf-workshops-create{max-width:1320px;margin:0 auto 24px;padding:22px 24px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:14px;align-items:end}.tf-workshops-create{grid-template-columns:2fr 1fr auto}.tf-work-orders-create h2,.tf-workshops-create h2{grid-column:1/-1;margin:0;font-size:22px}.tf-work-orders-create label,.tf-workshops-create label{display:grid;gap:6px;color:var(--tf-ink-2);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.tf-work-orders-create input,.tf-work-orders-create select,.tf-workshops-create input{min-width:0;padding:11px 12px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;text-transform:none;letter-spacing:normal}.tf-work-orders-create button,.tf-workshops-create button{padding:11px 15px;border:0;border-radius:9px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-work-orders-create button:disabled,.tf-workshops-create button:disabled{opacity:.6;cursor:wait}.tf-work-orders-create input:focus-visible,.tf-work-orders-create select:focus-visible,.tf-workshops-create input:focus-visible,.tf-work-orders-head button:focus-visible,.tf-workshops-head button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}@media (max-width:720px){.tf-work-orders-create,.tf-workshops-create{grid-template-columns:1fr}.tf-work-orders-create h2,.tf-workshops-create h2{grid-column:auto}}.tf-vms-form{max-width:1320px;margin:0 auto 24px;padding:22px 24px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;align-items:end}.tf-vms-form h2,.tf-vms-form h3{grid-column:1/-1;margin:0;font-size:22px}.tf-vms-form h3{font-size:18px}.tf-vms-form label{display:grid;gap:6px;color:var(--tf-ink-2);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.tf-vms-form input,.tf-vms-form select{min-width:0;padding:11px 12px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;text-transform:none;letter-spacing:normal}.tf-vms-form button{padding:11px 15px;border:0;border-radius:9px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-vms-form button:disabled{opacity:.6;cursor:wait}.tf-vms-form input:focus-visible,.tf-vms-form select:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-vehicle-picker-note{display:block;margin-top:6px;color:var(--tf-warn-ink,#7a5300);font-size:12px;font-weight:600;text-transform:none;letter-spacing:normal;line-height:1.4}.tf-vinsp{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-vinsp-head{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-vinsp-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-vinsp-head h1{margin:8px 0;font-size:42px}.tf-vinsp-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-vinsp-head>svg{color:var(--tf-accent);margin-top:18px}.tf-vinsp-message{max-width:1320px;margin:-14px auto 22px;padding:12px 16px;border-radius:10px}.tf-vinsp-message.is-ok{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-vinsp-message.is-error{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}.tf-vinsp-checklist{max-width:1320px;margin:0 auto 24px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-vinsp-checklist>header{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-vinsp-checklist h2{margin:0;font-size:21px}.tf-vinsp-checklist>header span{color:var(--tf-ink-3);font-size:13px}.tf-vinsp-section{padding:8px 0}.tf-vinsp-section h3{margin:0;padding:14px 24px 6px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--tf-ink-3)}.tf-vinsp-checklist article{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-vinsp-checklist article.is-fail{box-shadow:inset 4px 0 0 var(--tf-bad,#c33)}.tf-vinsp-checklist article.is-na{opacity:.6}.tf-vinsp-label{display:flex;align-items:center;gap:10px}.tf-vinsp-label strong{font-weight:600}.tf-vinsp-critical{padding:2px 8px;border-radius:999px;background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.tf-vinsp-marks{display:flex;gap:6px}.tf-vinsp-marks button{min-width:56px;padding:7px 10px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink-3);font:inherit;font-weight:700;text-transform:capitalize;cursor:pointer}.tf-vinsp-marks button.is-on{background:var(--tf-accent);border-color:var(--tf-accent);color:#fff}.tf-vinsp-note{grid-column:1/-1;padding:10px 12px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit}.tf-vinsp-submit{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px}.tf-vinsp-submit p{margin:0;color:var(--tf-ink-2)}.tf-vinsp-submit button{padding:12px 18px;border:0;border-radius:10px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-vinsp-submit button:disabled{opacity:.6;cursor:not-allowed}.tf-vinsp-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.tf-vinsp-card{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-vinsp-card>header{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-vinsp-card h2{margin:0;font-size:21px}.tf-vinsp-card>header span{color:var(--tf-ink-3);font-size:13px}.tf-vinsp-card article{display:flex;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-vinsp-card article:last-child{border-bottom:0}.tf-vinsp-card article.is-critical{box-shadow:inset 4px 0 0 var(--tf-bad,#c33)}.tf-vinsp-card article.is-major{box-shadow:inset 4px 0 0 var(--tf-warn,#d90)}.tf-vinsp-card h3{margin:0 0 4px;font-size:16px}.tf-vinsp-card p{margin:0;color:var(--tf-ink-2);font-size:14px}.tf-vinsp-card aside{text-align:right;display:grid;gap:6px;justify-items:end;white-space:nowrap}.tf-vinsp-card aside strong{font-size:14px}.tf-vinsp-card aside span{color:var(--tf-ink-3);font-size:13px}.tf-vinsp-card aside button{border:1px solid var(--tf-line);border-radius:8px;padding:7px 12px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font:inherit;font-weight:700;cursor:pointer}.tf-vinsp-card aside button:disabled{opacity:.55;cursor:wait}@media (max-width:900px){.tf-vinsp{padding:28px 16px}.tf-vinsp-head h1{font-size:32px}.tf-vinsp-grid{grid-template-columns:1fr}.tf-vinsp-checklist article{grid-template-columns:1fr}.tf-vinsp-card article{flex-direction:column}.tf-vinsp-card aside{text-align:left;justify-items:start}}.tf-cat{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-cat-head{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-cat-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-cat-head h1{margin:8px 0;font-size:42px}.tf-cat-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-cat-head>div:last-child{display:flex;align-items:center;gap:12px}.tf-cat-head>div:last-child svg{color:var(--tf-accent)}.tf-cat-head button{border:0;border-radius:10px;padding:12px 16px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-cat-message{max-width:1320px;margin:-14px auto 22px;padding:12px 16px;border-radius:10px}.tf-cat-message.is-ok{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-cat-message.is-error{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}.tf-cat-toolbar{max-width:1320px;margin:0 auto 16px;display:flex;align-items:center;gap:20px;color:var(--tf-ink-2)}.tf-cat-toolbar label{display:flex;align-items:center;gap:8px}.tf-cat-toolbar select{padding:8px 10px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit}.tf-cat-toolbar>span{margin-left:auto;color:var(--tf-ink-3)}.tf-cat-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;align-items:start}.tf-cat-card{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-cat-card>header{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-cat-card h2{margin:0;font-size:19px}.tf-cat-card>header span{color:var(--tf-ink-3);font-size:13px}.tf-cat-card article{display:flex;justify-content:space-between;gap:14px;padding:14px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-cat-card article:last-child{border-bottom:0}.tf-cat-card article.is-retired{opacity:.55}.tf-cat-card h3{margin:0 0 3px;font-size:15px;font-weight:600}.tf-cat-card p{margin:0;color:var(--tf-ink-2);font-size:13px}.tf-cat-card aside{display:grid;gap:6px;justify-items:end;white-space:nowrap}.tf-cat-card aside span{color:var(--tf-ink-3);font-size:12px}.tf-cat-card aside button{border:1px solid var(--tf-line);border-radius:8px;padding:5px 10px;background:var(--tf-surface-2);color:var(--tf-ink-3);font:inherit;font-size:13px;cursor:pointer}.tf-cat-card aside button:disabled{opacity:.55;cursor:wait}.tf-cat-retired{font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:11px}.tf-cat-edit-note{grid-column:1/-1;margin:0;color:var(--tf-ink-2);font-size:13px;line-height:1.5}.tf-cat-edit-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px}.tf-cat-edit-actions button{border:1px solid var(--tf-line);border-radius:10px;padding:11px 16px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-weight:700;cursor:pointer}.tf-cat-edit-actions button:last-child{border-color:var(--tf-accent);background:var(--tf-accent);color:#fff}.tf-cat-edit-actions button:disabled{opacity:.55;cursor:not-allowed}@media (max-width:900px){.tf-cat{padding:28px 16px}.tf-cat-head h1{font-size:32px}.tf-cat-toolbar{flex-wrap:wrap}}.tf-rate{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-rate header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-rate-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-rate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-rate-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-rate-field small{font-size:11px;color:var(--tf-ink-3)}.tf-rate-grid label,.tf-rate-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-rate span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rate input,.tf-rate select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-rate input:disabled,.tf-rate select:disabled{opacity:.55;cursor:not-allowed}.tf-rate-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-rate-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-rate-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-rate-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-rate-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-rate-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-rate-save:disabled{opacity:.5;cursor:not-allowed}.tf-rate-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-rate h4{margin:6px 0 0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rate-sub{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-3)}.tf-rate{display:flex;flex-direction:column;gap:9px;padding:14px 16px;margin-top:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-rate h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-rate-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-rate-grid small{font-size:10.5px;color:var(--tf-ink-3)}.tf-rate-check{flex-direction:row!important;align-items:center;gap:6px}.tf-rate-check span{text-transform:none;letter-spacing:0;font-size:12px;color:var(--tf-ink-2)}.tf-rate-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-rate-head label{display:flex;align-items:center;gap:6px}.tf-rate-head span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rate-bands ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.tf-rate-bands li{display:flex;gap:12px;font-size:12px;padding:6px 9px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1)}.tf-rate-bands h4{margin:0 0 5px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rate-none,.tf-rate-note{margin:5px 0 0;font-size:11.5px;color:var(--tf-ink-3)}.tf-cover{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-cover-head{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-cover-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-cover-head h1{margin:8px 0;font-size:42px}.tf-cover-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-cover-head>div:last-child{display:flex;align-items:center;gap:10px}.tf-cover-head>div:last-child svg{color:var(--tf-accent)}.tf-cover-head button{border:0;border-radius:10px;padding:12px 16px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-cover-message{max-width:1320px;margin:-14px auto 18px;padding:12px 16px;border-radius:10px}.tf-cover-message.is-ok{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-cover-message.is-warn{background:var(--tf-warn-tint,#fff6e0);color:var(--tf-warn-ink,#7a5300)}.tf-cover-message.is-error{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}.tf-cover-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.tf-cover-card{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-cover-card>header{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-cover-card h2{margin:0;font-size:20px}.tf-cover-card>header label{display:flex;align-items:center;gap:8px;color:var(--tf-ink-3);font-size:13px}.tf-cover-card article{display:flex;justify-content:space-between;gap:14px;padding:16px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-cover-card article:last-child{border-bottom:0}.tf-cover-card article.is-superseded{opacity:.55}.tf-cover-card article.is-expired{box-shadow:inset 4px 0 0 var(--tf-bad,#c33)}.tf-cover-card h3{margin:0 0 4px;font-size:15px}.tf-cover-card p{margin:0;color:var(--tf-ink-2);font-size:13px}.tf-cover-figures{margin-top:4px!important;color:var(--tf-ink-3)!important}.tf-cover-card aside{display:grid;gap:6px;justify-items:end;white-space:nowrap}.tf-cover-card aside strong{font-size:15px}.tf-cover-card aside span{color:var(--tf-ink-3);font-size:12px}.tf-cover-card aside select{padding:6px 8px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:13px;text-transform:capitalize}.tf-cover-tag{padding:2px 8px;border-radius:999px;background:var(--tf-surface-2);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.tf-cover-tag.is-bad{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}@media (max-width:900px){.tf-cover{padding:28px 16px}.tf-cover-head{flex-direction:column;gap:14px}.tf-cover-head h1{font-size:32px}.tf-cover-grid{grid-template-columns:1fr}}.tf-work-orders{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-work-orders-head{display:flex;justify-content:space-between;align-items:flex-start;max-width:1320px;margin:0 auto 32px}.tf-work-orders-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-work-orders-head h1{margin:8px 0;font-size:42px}.tf-work-orders-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-work-orders-head>svg{color:var(--tf-accent);margin-top:18px}.tf-work-orders-toolbar,.tf-work-orders-list{max-width:1320px;margin:0 auto 24px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm)}.tf-work-orders-toolbar{display:flex;align-items:end;justify-content:space-between;padding:20px 24px;color:var(--tf-ink-2);font-weight:700}.tf-work-orders-toolbar label{display:grid;gap:7px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.tf-work-orders-toolbar select{min-width:220px;padding:12px 14px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;text-transform:none;letter-spacing:normal}.tf-work-orders-list>header{display:flex;justify-content:space-between;align-items:end;padding:22px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-work-orders-list h2{margin:0;font-size:22px}.tf-work-orders-list header span{color:var(--tf-ink-3);font-size:14px}.tf-work-order-card{display:flex;justify-content:space-between;gap:24px;padding:22px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-work-order-card:last-child{border-bottom:0}.tf-work-order-code{display:flex;gap:10px;align-items:center;color:var(--tf-ink-2);font-weight:800}.tf-work-order-code span{padding:4px 9px;border-radius:999px;color:#fff;font-size:11px}.tf-work-order-card h3{margin:9px 0 5px;font-size:18px}.tf-work-order-card p{margin:0;color:var(--tf-ink-2)}.tf-work-order-meta{display:grid;grid-template-columns:repeat(2,minmax(100px,auto));gap:5px 20px;text-align:right;color:var(--tf-ink-2);font-size:13px}.tf-work-order-meta strong{color:var(--tf-ink);font-size:15px}.tf-work-order-meta span{white-space:nowrap}@media (max-width:720px){.tf-work-orders{padding:28px 16px}.tf-work-orders-head h1{font-size:32px}.tf-work-orders-toolbar,.tf-work-order-card{display:grid;gap:16px}.tf-work-orders-toolbar select{width:100%}.tf-work-order-meta{text-align:left}}.tf-work-order-hit{width:100%;display:flex;justify-content:space-between;gap:24px;border:0;background:transparent;padding:0;text-align:left;color:inherit;font:inherit;cursor:pointer}.tf-work-order-card.is-selected{border-color:var(--tf-accent)}.tf-work-order-detail{margin-top:20px;border:1px solid var(--tf-line);border-radius:16px;background:var(--tf-surface);overflow:hidden}.tf-work-order-detail>header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--tf-line)}.tf-work-order-detail>header span{font-size:11px;letter-spacing:.12em;color:var(--tf-accent-strong)}.tf-work-order-detail>header h2{margin:4px 0 0}.tf-work-order-detail>header button,.tf-work-order-actions button,.tf-work-order-line button{border:1px solid var(--tf-line);border-radius:9px;padding:9px 13px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;cursor:pointer}.tf-work-order-detail-body{padding:22px}.tf-work-order-summary{display:grid;gap:7px}.tf-work-order-summary p{font-size:20px;font-weight:700;margin:0}.tf-work-order-summary span{color:var(--tf-ink-2)}.tf-work-order-summary strong{font-size:13px;color:var(--tf-ink-2)}.tf-work-order-actions{display:flex;align-items:end;gap:10px;margin:20px 0;padding:15px;border-radius:12px;background:var(--tf-surface-2)}.tf-work-order-actions label{display:grid;gap:5px;font-size:12px;font-weight:700}.tf-work-order-actions select,.tf-work-order-actions input{border:1px solid var(--tf-line);border-radius:8px;padding:9px;background:var(--tf-surface);font:inherit}.tf-work-order-actions button{background:var(--tf-accent);color:#fff;border-color:var(--tf-accent)}.tf-work-order-message{padding:10px;background:var(--tf-accent-tint);border-radius:8px}.tf-work-order-detail-body section{margin-top:22px}.tf-work-order-detail-body h3{margin-bottom:10px}.tf-work-order-line{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--tf-line-2)}.tf-work-order-line div{display:grid;gap:4px}.tf-work-order-line span,.tf-work-order-history span{font-size:13px;color:var(--tf-ink-2)}.tf-work-order-line em{font-style:normal;color:var(--tf-run)}.tf-work-order-history{display:grid;gap:10px}.tf-work-order-history article{display:grid;gap:4px;padding:11px 13px;border-left:3px solid var(--tf-accent);background:var(--tf-surface-2)}.tf-work-order-history p{margin:2px 0 0}.tf-work-orders-list button:focus-visible,.tf-work-order-detail button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-workshops{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-workshops-head{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-workshops-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-workshops-head h1{margin:8px 0;font-size:42px}.tf-workshops-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-workshops-head>svg{color:var(--tf-accent);margin-top:18px}.tf-workshops-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:24px}.tf-workshops-card{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-workshops-card>header{display:flex;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-workshops-card h2{margin:0;font-size:21px}.tf-workshops-card header span,.tf-workshops-card small{color:var(--tf-ink-3)}.tf-workshops-card article{padding:20px 24px;border-bottom:1px solid var(--tf-line-2)}.tf-workshops-card article:last-child{border-bottom:0}.tf-workshops-card h3{margin:0 0 6px;font-size:17px}.tf-workshops-card p{margin:0;color:var(--tf-ink-2)}.tf-workshops-card aside{display:flex;gap:12px;margin-top:10px;color:var(--tf-ink-3);font-size:13px}.tf-workshops-card aside strong{color:var(--tf-ink)}.tf-workshops-card button{float:right;margin-top:-2px;border:1px solid var(--tf-line);border-radius:8px;padding:7px 10px;background:var(--tf-surface-2);color:var(--tf-ink-3)}.tf-workshops-message{max-width:1320px;margin:-14px auto 22px;padding:12px 16px;border-radius:10px;background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-workshops-merge-actions{display:flex;gap:8px;margin-top:12px}.tf-workshops-merge-actions button{float:none;margin:0;color:var(--tf-accent-strong);background:var(--tf-accent-tint);font-weight:700}.tf-workshops-merge-actions button:disabled{opacity:.55;cursor:wait}@media (max-width:800px){.tf-workshops{padding:28px 16px}.tf-workshops-head h1{font-size:32px}.tf-workshops-grid{grid-template-columns:1fr}}.tf-workshop-spend{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-workshop-spend>header{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-workshop-spend header span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-workshop-spend h1{margin:8px 0;font-size:42px}.tf-workshop-spend header p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-workshop-spend>header>svg{color:var(--tf-accent)}.tf-workshop-spend-toolbar,.tf-workshop-spend-card{max-width:1320px;margin:0 auto 24px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm)}.tf-workshop-spend-toolbar{padding:20px 24px;display:flex;justify-content:space-between;align-items:end;color:var(--tf-ink-2);font-weight:700}.tf-workshop-spend-toolbar label{display:grid;gap:7px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.tf-workshop-spend-toolbar select{padding:12px 14px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface-2);font:inherit;color:var(--tf-ink)}.tf-workshop-table{overflow:auto}.tf-workshop-row{min-width:820px;display:grid;grid-template-columns:2fr repeat(6,1fr);gap:14px;padding:18px 24px;border-bottom:1px solid var(--tf-line-2);align-items:center}.tf-workshop-row:last-child{border-bottom:0}.tf-workshop-row span{color:var(--tf-ink-2)}.tf-workshop-row small{display:block;color:var(--tf-ink-3);font-size:12px;margin-top:4px}.tf-workshop-row.is-head{color:var(--tf-ink-2);font-size:12px;text-transform:uppercase;letter-spacing:.06em;background:var(--tf-surface-2)}@media (max-width:720px){.tf-workshop-spend{padding:28px 16px}.tf-workshop-spend h1{font-size:32px}}.tf-spend-views{display:flex;gap:6px}.tf-spend-views button{padding:8px 14px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink-3);font:inherit;font-weight:700;cursor:pointer;text-transform:capitalize}.tf-spend-views button.is-on{background:var(--tf-accent);border-color:var(--tf-accent);color:#fff}.tf-workshop-row.is-service{grid-template-columns:2fr 1fr 1fr 1.2fr 1.2fr}.tf-spend-note{margin:0;padding:14px 22px;border-bottom:1px solid var(--tf-line-2);background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-workshop-row.is-cycle{grid-template-columns:1.6fr 1fr 1.4fr 1.4fr 1.4fr}.tf-costs{display:flex;flex-direction:column;gap:16px;padding:18px;overflow-y:auto}.tf-costs-head{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}.tf-costs-head h1{margin:2px 0 0;color:var(--tf-ink);font-size:21px;font-weight:700}.tf-costs-sub{margin:4px 0 0;color:var(--tf-ink-3);font-size:12.5px;font-variant-numeric:tabular-nums}.tf-costs-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.tf-costs-company{display:flex;flex-direction:column;gap:4px}.tf-costs-company span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-costs-company select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3, var(--tf-surface-2));color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-costs-windows{display:flex;gap:6px}.tf-costs-window{padding:7px 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink-2);font:inherit;font-size:12.5px;cursor:pointer}.tf-costs-window.active{border-color:var(--tf-accent);background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-weight:600}.tf-costs-total{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface-2)}.tf-costs-total-label{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-costs-total-value{display:flex;align-items:baseline;gap:8px;color:var(--tf-ink);font-size:34px;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.tf-costs-total-value small{color:var(--tf-ink-3);font-size:13px;font-weight:500;letter-spacing:0}.tf-costs-total-note{margin:2px 0 0;max-width:68ch;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-costs-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.tf-costs-cat{display:flex;flex-direction:column;gap:5px;padding:12px 13px;border:1px solid var(--tf-line-soft);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-costs-cat-label{color:var(--tf-ink-2);font-size:12px;font-weight:600}.tf-costs-cat-value{color:var(--tf-ink);font-size:21px;font-weight:650;font-variant-numeric:tabular-nums}.tf-costs-cat.unknown{border-style:dashed}.tf-costs-cat.unknown .tf-costs-cat-value{color:var(--tf-ink-3);font-weight:500}.tf-costs-cat-note{margin:2px 0 0;color:var(--tf-ink-3);font-size:11.5px;line-height:1.45}.tf-costs-cat-basis{margin:0;color:var(--tf-ink-3);font-size:11px;opacity:.8}.tf-costs-cov{align-self:flex-start;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:600}.tf-costs-cov.full{background:var(--tf-run-tint, var(--tf-surface-3));color:var(--tf-run)}.tf-costs-cov.partial{background:var(--tf-idle-tint, var(--tf-surface-3));color:var(--tf-idle)}.tf-costs-cov.none{background:transparent;color:var(--tf-ink-3);font-weight:500;font-style:italic}.tf-costs-unattr{padding:13px 15px;border:1px dashed var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-costs-unattr h2{display:flex;align-items:center;gap:7px;margin:0;color:var(--tf-ink);font-size:13.5px;font-weight:650}.tf-costs-unattr-intro{margin:5px 0 9px;max-width:70ch;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-costs-unattr ul{display:flex;flex-direction:column;gap:7px;margin:0;padding:0;list-style:none}.tf-costs-unattr li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:12.5px}.tf-costs-unattr-label{min-width:96px;color:var(--tf-ink-2);font-weight:600}.tf-costs-unattr li strong{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-costs-unattr-items{color:var(--tf-ink-3);font-size:11.5px}.tf-costs-unattr-reason{flex:1 1 260px;color:var(--tf-ink-3);font-size:11.5px;line-height:1.45}.tf-costs-vehicles-head{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;justify-content:space-between}.tf-costs-vehicles-head h2{margin:0;color:var(--tf-ink);font-size:14px;font-weight:650}.tf-costs-vehicles-meta{color:var(--tf-ink-3);font-size:12px}.tf-costs-table{width:100%;margin-top:8px;border-collapse:collapse;font-size:12.5px}.tf-costs-table th,.tf-costs-table td{padding:8px 10px;border-bottom:1px solid var(--tf-line-soft);text-align:left}.tf-costs-table th{color:var(--tf-ink-3);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tf-costs-table .num{text-align:right;font-variant-numeric:tabular-nums}.tf-costs-table td.num{color:var(--tf-ink-2)}.tf-costs-table td.num.unknown{color:var(--tf-ink-3)}.tf-costs-table td.num.total{color:var(--tf-ink);font-weight:650}.tf-costs-table tr.open{background:var(--tf-surface-2)}.tf-costs-reg{padding:0;border:0;background:none;color:var(--tf-accent-ink);font:inherit;font-weight:600;text-align:left;cursor:pointer}.tf-costs-reg:hover{text-decoration:underline}.tf-costs-detail td{background:var(--tf-surface-2)}.tf-costs-detail dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin:0}.tf-costs-detail dt{color:var(--tf-ink-3);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tf-costs-detail dd{display:flex;flex-direction:column;gap:4px;margin:3px 0 0}.tf-costs-detail dd strong{color:var(--tf-ink);font-size:15px;font-variant-numeric:tabular-nums}.tf-costs-detail dd em{color:var(--tf-ink-3);font-size:11.5px;font-style:normal;line-height:1.45}.tf-costs-empty,.tf-costs-unpriced{margin:10px 0 0;max-width:72ch;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-costs-cat-basis.is-estimated{color:var(--tf-warn-ink, var(--tf-ink-2))}.tf-costs-est-tag{display:inline-block;margin-right:6px;padding:1px 5px;border:1px solid var(--tf-warn-line, var(--tf-line));border-radius:3px;background:var(--tf-warn-bg, transparent);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tf-dispatch{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-dispatch-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.tf-dispatch-head span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-dispatch-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-dispatch-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-dispatch-filter{display:flex;gap:7px;align-items:center;flex:0 0 auto;color:var(--tf-ink-2);font-size:12.5px;white-space:nowrap}.tf-dispatch-list{display:flex;flex-direction:column;gap:12px}.tf-dispatch-job{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:14px 16px}.tf-dispatch-job>header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.tf-dispatch-job h3{margin:6px 0 4px;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-dispatch-meta{margin:0;color:var(--tf-ink-3);font-size:12px}.tf-dispatch-status{display:inline-block;padding:2px 7px;border-radius:3px;border:1px solid var(--tf-line);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-2)}.tf-dispatch-status.is-in_progress{border-color:var(--tf-ok-line, var(--tf-line));color:var(--tf-ok-ink, var(--tf-ink))}.tf-dispatch-status.is-declined{border-color:var(--tf-warn-line, var(--tf-line));color:var(--tf-warn-ink, var(--tf-ink))}.tf-dispatch-status.is-cancelled,.tf-dispatch-status.is-completed{opacity:.7}.tf-dispatch-counts{text-align:right;flex:0 0 auto}.tf-dispatch-counts strong{display:block;font-size:19px;font-weight:600;color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-dispatch-counts strong span{font-size:13px;font-weight:500;color:var(--tf-ink-3)}.tf-dispatch-counts small{color:var(--tf-ink-3);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase}.tf-dispatch-flag{display:flex;gap:7px;align-items:flex-start;margin:10px 0 0;padding:8px 10px;border:1px solid var(--tf-warn-line, var(--tf-line));border-radius:5px;background:var(--tf-warn-bg, transparent);color:var(--tf-warn-ink, var(--tf-ink-2));font-size:12.5px;line-height:1.5}.tf-dispatch-flag svg{flex:0 0 auto;margin-top:2px}.tf-dispatch-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-dispatch-job>footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.tf-dispatch-actions{display:flex;gap:6px;flex-wrap:wrap}.tf-dispatch-job button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-dispatch-job button:hover:not(:disabled){border-color:var(--tf-line-strong, var(--tf-line))}.tf-dispatch-job button:disabled{opacity:.45;cursor:not-allowed}.tf-dispatch-toggle{color:var(--tf-ink-2)!important}.tf-dispatch-stops{list-style:none;margin:12px 0 0;padding:12px 0 0;border-top:1px solid var(--tf-line);display:flex;flex-direction:column;gap:8px}.tf-dispatch-stop{display:flex;gap:11px;align-items:flex-start}.tf-dispatch-stop-seq{flex:0 0 22px;height:22px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--tf-line);color:var(--tf-ink-3);font-size:11px;font-variant-numeric:tabular-nums}.tf-dispatch-stop.is-served .tf-dispatch-stop-seq{border-color:var(--tf-ok-line, var(--tf-line));color:var(--tf-ok-ink, var(--tf-ink-2))}.tf-dispatch-stop-body{flex:1 1 auto;min-width:0}.tf-dispatch-stop-body strong{display:block;font-size:13px;font-weight:500;color:var(--tf-ink)}.tf-dispatch-stop-state{margin:2px 0 0;color:var(--tf-ink-2);font-size:12px}.tf-dispatch-stop-reason{color:var(--tf-ink-3)}.tf-dispatch-stop-actions{display:flex;gap:4px;flex:0 0 auto}.tf-dispatch-corr{display:flex;gap:5px;align-items:flex-start;margin:4px 0 0;font-size:11.5px;line-height:1.45}.tf-dispatch-corr svg{flex:0 0 auto;margin-top:1px}.tf-dispatch-corr.is-confirmed{color:var(--tf-ok-ink, var(--tf-ink-3))}.tf-dispatch-corr.is-contradicted{color:var(--tf-warn-ink, var(--tf-ink-2))}.tf-dispatch-corr.is-unverifiable{color:var(--tf-ink-3);font-style:italic}.tf-dispatch-head-actions{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto;flex-wrap:wrap}.tf-dispatch-customer{display:flex;flex-direction:column;gap:4px}.tf-dispatch-customer span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-dispatch-customer select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-2));color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-dispatch-choose{color:var(--tf-ink-2);font-size:13px;padding:28px 0}.tf-dispatch-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-dispatch-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-dispatch-new:disabled{opacity:.45;cursor:not-allowed}.tf-newjob{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-newjob>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.tf-newjob h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-newjob h3{margin:0;font-size:12px;font-weight:600;color:var(--tf-ink-2);letter-spacing:.04em;text-transform:uppercase}.tf-newjob-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.tf-newjob label{display:flex;flex-direction:column;gap:4px}.tf-newjob label.is-wide{grid-column:1 / -1;margin-top:12px}.tf-newjob label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-newjob input,.tf-newjob select,.tf-newjob textarea{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-newjob textarea{resize:vertical}.tf-newjob-vehicle{margin:10px 0 0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-newjob-stops{margin-top:16px;padding-top:14px;border-top:1px solid var(--tf-line)}.tf-newjob-stops-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.tf-newjob-stop-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-newjob-stop-list li{display:flex;gap:10px;align-items:center}.tf-newjob-seq{flex:0 0 20px;height:20px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--tf-line);color:var(--tf-ink-3);font-size:10.5px;font-variant-numeric:tabular-nums}.tf-newjob-stop-name{flex:1 1 auto;font-size:13px;color:var(--tf-ink)}.tf-newjob-stop-name em{color:var(--tf-warn-ink, var(--tf-ink-3));font-style:normal;font-size:12px}.tf-newjob-stop-actions{display:flex;gap:3px}.tf-newjob-stop-actions button{width:24px;height:24px;border:1px solid var(--tf-line);border-radius:4px;background:transparent;color:var(--tf-ink-2);font:inherit;font-size:12px;cursor:pointer}.tf-newjob-stop-actions button:disabled{opacity:.35;cursor:not-allowed}.tf-newjob-warn{display:flex;gap:7px;align-items:flex-start;margin:12px 0 0;padding:8px 10px;border:1px solid var(--tf-warn-line, var(--tf-line));border-radius:5px;background:var(--tf-warn-bg, transparent);color:var(--tf-warn-ink, var(--tf-ink-2));font-size:12.5px;line-height:1.5}.tf-newjob-warn svg{flex:0 0 auto;margin-top:2px}.tf-newjob-hint{margin:0;color:var(--tf-ink-3);font-size:12px}.tf-newjob-error{margin:12px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-newjob>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-newjob>footer button,.tf-newjob>header button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-newjob>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-drv{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-drv-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.tf-drv-head span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-drv-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-drv-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-drv-head-actions{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto;flex-wrap:wrap}.tf-drv-customer{display:flex;flex-direction:column;gap:4px}.tf-drv-customer span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-drv-customer select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-2));color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-drv-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-drv-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-drv-new:disabled{opacity:.45;cursor:not-allowed}.tf-drv-choose{color:var(--tf-ink-2);font-size:13px;padding:24px 0}.tf-drv-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-drv-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-drv-main{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.tf-drv-id{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:2px}.tf-drv-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-drv-meta{color:var(--tf-ink-3);font-size:12px}.tf-drv-lic{font-size:11.5px;color:var(--tf-ink-3)}.tf-drv-lic.is-none{font-style:italic}.tf-drv-lic.is-soon{color:var(--tf-warn-ink, var(--tf-ink-2))}.tf-drv-lic.is-expired{color:var(--tf-bad-ink, var(--tf-ink));font-weight:600}.tf-drv-vehicle{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}.tf-drv-vehicle span{color:var(--tf-ink-3);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase}.tf-drv-vehicle select{padding:6px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;min-width:170px}.tf-drv-actions{display:flex;gap:6px;align-items:center;flex:0 0 auto}.tf-drv-row button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-drv-row button:disabled{opacity:.45;cursor:not-allowed}.tf-drv-badge{display:inline-flex;gap:4px;align-items:center;padding:3px 8px;border-radius:3px;border:1px solid var(--tf-ok-line, var(--tf-line));color:var(--tf-ok-ink, var(--tf-ink-2));font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tf-drv-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-drv-hint{margin:0;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-drv-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-drv-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.tf-drv-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-drv-form>header button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-drv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.tf-drv-grid label{display:flex;flex-direction:column;gap:4px}.tf-drv-grid label.is-wide{grid-column:1 / -1}.tf-drv-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-drv-grid input{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-drv-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-drv-form>footer button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-drv-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-drv-login{margin-top:12px;padding-top:12px;border-top:1px solid var(--tf-line)}.tf-drv-login-lede{margin:0 0 10px;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-drv-login-actions{display:flex;gap:8px;margin:12px 0 8px}.tf-vcp{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-vcp header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-vcp h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-vcp-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-vcp-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-vcp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-vcp-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-vcp-field small{font-size:11px;color:var(--tf-ink-3)}.tf-vcp-grid label,.tf-vcp-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-vcp span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-vcp input,.tf-vcp select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-vcp input:disabled,.tf-vcp select:disabled{opacity:.55;cursor:not-allowed}.tf-vcp-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-vcp-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-vcp-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-vcp-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-vcp-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-vcp-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-vcp-save:disabled{opacity:.5;cursor:not-allowed}.tf-vcp-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-cal{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-cal header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-cal-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-cal-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-cal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-cal-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-cal-field small{font-size:11px;color:var(--tf-ink-3)}.tf-cal-grid label,.tf-cal-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-cal span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-cal input,.tf-cal select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-cal input:disabled,.tf-cal select:disabled{opacity:.55;cursor:not-allowed}.tf-cal-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-cal-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-cal-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-cal-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-cal-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-cal-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-cal-save:disabled{opacity:.5;cursor:not-allowed}.tf-cal-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-cal h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-cal h4{margin:6px 0 0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-cal-sub{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-3)}.tf-cal-grid small{font-size:10.5px;color:var(--tf-ink-3)}.tf-cal{display:flex;flex-direction:column;gap:9px}.tf-cal h4{margin:0;font-size:12px;font-weight:650;color:var(--tf-ink);text-transform:none;letter-spacing:0}.tf-cal-lede{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-2)}.tf-cal-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.tf-cal-list li{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:7px 10px;font-size:12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1)}.tf-cal-channel{font-family:var(--tf-mono);font-weight:600;color:var(--tf-ink)}.tf-cal-kind{color:var(--tf-ink-3);font-size:11px}.tf-cal-params{color:var(--tf-ink-2);font-family:var(--tf-mono);font-size:11px}.tf-cal-unit{color:var(--tf-ink-3);font-size:11px}.tf-cal-off{color:var(--tf-warn-ink);font-size:11px;font-weight:600}.tf-cal-list button{margin-left:auto}.tf-cal-form{display:flex;flex-direction:column;gap:8px}.tf-cal-formula{margin:0;align-self:end;font-size:11px;color:var(--tf-ink-3);font-family:var(--tf-mono)}.tf-cal-points{display:flex;flex-direction:column;gap:5px}.tf-cal-points>div{display:flex;gap:6px}.tf-cal-points input{width:110px}.tf-cal-points>button{align-self:flex-start;font-size:11.5px;padding:4px 9px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink-2);cursor:pointer}.tf-veh{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-veh-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px}.tf-veh-head span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-veh-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-veh-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-veh-filter{display:flex;gap:7px;align-items:center;flex:0 0 auto;color:var(--tf-ink-2);font-size:12.5px;white-space:nowrap}.tf-veh-summary{margin:0 0 16px;padding:9px 12px;border-radius:5px;font-size:13px;border:1px solid var(--tf-warn-line, var(--tf-line));background:var(--tf-warn-bg, transparent);color:var(--tf-warn-ink, var(--tf-ink-2))}.tf-veh-summary.is-clear{border-color:var(--tf-line);background:transparent;color:var(--tf-ink-3)}.tf-veh-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-veh-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-veh-row.has-gap{border-left:3px solid var(--tf-warn-line, var(--tf-line))}.tf-veh-main{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.tf-veh-id{flex:1 1 240px;min-width:0}.tf-veh-id strong{display:block;font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-veh-meta{color:var(--tf-ink-3);font-size:12px}.tf-veh-meta em{font-style:italic}.tf-veh-fuel{display:flex;flex-direction:column;gap:3px;align-items:flex-start;flex:0 0 auto}.tf-veh-grade{font-family:inherit;font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border:1px solid var(--tf-line);border-radius:3px;color:var(--tf-ink-2)}.tf-veh-econ{font-size:12px;color:var(--tf-ink-2);font-variant-numeric:tabular-nums}.tf-veh-gap{display:inline-flex;gap:5px;align-items:center;font-size:11.5px;color:var(--tf-warn-ink, var(--tf-ink-3))}.tf-veh-row>.tf-veh-main>button,.tf-veh-edit button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-veh-edit button:disabled{opacity:.45;cursor:not-allowed}.tf-veh-edit{margin-top:12px;padding-top:12px;border-top:1px solid var(--tf-line)}.tf-veh-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.tf-veh-grid label{display:flex;flex-direction:column;gap:4px}.tf-veh-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-veh-grid input,.tf-veh-grid select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-veh-grid input:disabled{opacity:.5;cursor:not-allowed}.tf-veh-note{margin:10px 0 0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-veh-error{margin:10px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-veh-edit-actions{display:flex;gap:8px;align-items:center;margin-top:14px;flex-wrap:wrap}.tf-veh-hint{color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-veh-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-veh-add{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-veh-group{margin:6px 0 0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-veh-notes{display:flex;flex-direction:column;gap:3px}.tf-veh-notes span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-veh-notes textarea{padding:6px 8px;font:inherit;font-size:12.5px;resize:vertical;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-veh-clearnote{margin:0;font-size:11px;color:var(--tf-ink-3)}.tf-drp{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.tf-drp-card{display:flex;flex-direction:column;gap:9px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-drp-card h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-drp-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-drp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.tf-drp-grid label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-drp-grid span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-drp-grid input,.tf-drp-grid select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-drp-grid input[aria-invalid=true]{border-color:var(--tf-bad-line)}.tf-drp-grid input:disabled,.tf-drp-grid select:disabled{opacity:.55;cursor:not-allowed}.tf-drp-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-drp-outcome{margin:0;padding:8px 10px;font-size:12px;line-height:1.45;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-drp-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-drp-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-drp-go{align-self:flex-start;padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-drp-go:disabled{opacity:.5;cursor:not-allowed}.tf-drp-gate{margin:0;font-size:11px;color:var(--tf-ink-3)}@media (max-width: 900px){.tf-drp{grid-template-columns:1fr}}.tf-rtc{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-rtc header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-rtc-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-rtc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-rtc-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-rtc-field small{font-size:11px;color:var(--tf-ink-3)}.tf-rtc-grid label,.tf-rtc-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-rtc span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rtc input,.tf-rtc select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-rtc input:disabled,.tf-rtc select:disabled{opacity:.55;cursor:not-allowed}.tf-rtc-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-rtc-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-rtc-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-rtc-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-rtc-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-rtc-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-rtc-save:disabled{opacity:.5;cursor:not-allowed}.tf-rtc-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-rtc h4{margin:6px 0 0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-rtc-sub{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-3)}.tf-rtc{display:flex;flex-direction:column;gap:9px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-rtc h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-rtc-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-rtc-grid small{font-size:10.5px;color:var(--tf-ink-3)}.tf-dev{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-dev-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.tf-dev-head span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-dev-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-dev-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-dev-head-actions{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto;flex-wrap:wrap}.tf-dev-customer{display:flex;flex-direction:column;gap:4px}.tf-dev-customer span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-dev-customer select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-2));color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-dev-choose{color:var(--tf-ink-2);font-size:13px;padding:24px 0}.tf-dev-summary{margin:0 0 12px;color:var(--tf-ink-3);font-size:12px}.tf-dev-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-dev-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-dev-main{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.tf-dev-id{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:2px}.tf-dev-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-dev-meta{color:var(--tf-ink-3);font-size:12px}.tf-dev-fix{font-size:11.5px;color:var(--tf-ink-3)}.tf-dev-fix.is-never{font-style:italic;color:var(--tf-warn-ink, var(--tf-ink-2))}.tf-dev-vehicle,.tf-dev-status-field{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}.tf-dev-vehicle span,.tf-dev-status-field span{color:var(--tf-ink-3);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase}.tf-dev-vehicle select,.tf-dev-status-field select{padding:6px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;min-width:160px}.tf-dev-vehicle select:disabled,.tf-dev-status-field select:disabled{opacity:.45;cursor:not-allowed}.tf-dev-flags{display:flex;gap:8px;align-items:center;flex:0 0 auto;flex-wrap:wrap}.tf-dev-row button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-dev-row button:disabled{opacity:.45;cursor:not-allowed}.tf-dev-status{font-size:11.5px;font-weight:600;letter-spacing:.04em;color:var(--tf-ink-2);text-transform:uppercase}.tf-dev-status.is-unknown{font-style:italic;font-weight:400;text-transform:none;color:var(--tf-ink-3)}.tf-dev-badge{display:inline-flex;gap:4px;align-items:center;padding:3px 8px;border-radius:3px;border:1px solid var(--tf-line);color:var(--tf-ink-2);font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tf-dev-badge.is-off{border-color:var(--tf-bad-line, var(--tf-line));color:var(--tf-bad-ink, var(--tf-ink-2))}.tf-dev-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-dev-hint{margin:8px 0 0;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-dev-history{list-style:none;margin:10px 0 0;padding:10px 0 0;border-top:1px solid var(--tf-line);display:flex;flex-direction:column;gap:6px}.tf-dev-history li{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:12px;color:var(--tf-ink-2)}.tf-dev-history strong{font-weight:600;color:var(--tf-ink)}.tf-dev-history-role{color:var(--tf-ink-3);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase}.tf-dev-history-when{color:var(--tf-ink-3)}.tf-dev-history-reason{color:var(--tf-ink-3);font-style:italic}.tf-cgc{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-cgc header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-cgc-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-cgc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-cgc-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-cgc-field small{font-size:11px;color:var(--tf-ink-3)}.tf-cgc-grid label,.tf-cgc-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-cgc span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-cgc input,.tf-cgc select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-cgc input:disabled,.tf-cgc select:disabled{opacity:.55;cursor:not-allowed}.tf-cgc-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-cgc-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-cgc-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-cgc-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-cgc-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-cgc-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-cgc-save:disabled{opacity:.5;cursor:not-allowed}.tf-cgc-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-cgc h4{margin:6px 0 0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-cgc-sub{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-3)}.tf-cgc{display:flex;flex-direction:column;gap:9px;padding:14px 16px;margin-top:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-cgc h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-cgc-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-cgc-grid small{font-size:10.5px;color:var(--tf-ink-3)}.tf-cgc-check{flex-direction:row!important;align-items:center;gap:6px}.tf-cgc-check span{text-transform:none;letter-spacing:0;font-size:12px;color:var(--tf-ink-2)}.tf-cgc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-cgc-head label{display:flex;align-items:center;gap:6px}.tf-cgc-head span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-wcred{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-wcred-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-wcred-head h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-wcred-head{flex-wrap:wrap}.tf-wcred-head label{display:flex;align-items:center;gap:6px}.tf-wcred-head span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-wcred-head select{max-width:220px}.tf-wcred-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-wcred-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.tf-wcred-grid label{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:12px}.tf-wcred-grid small{font-size:11px;color:var(--tf-ink-3)}.tf-wcred-wide{grid-column:1 / -1}.tf-wcred-none{margin:0;padding:7px 10px;font-size:11.5px;line-height:1.45;color:var(--tf-warn-ink);background:var(--tf-warn-bg);border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm)}.tf-wcred-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-wcred-outcome{margin:0;font-size:12px}.tf-wcred-outcome.is-ok{color:var(--tf-ok-ink)}.tf-wcred-outcome.is-bad{color:var(--tf-bad-ink)}.tf-wcred-actions{display:flex;gap:10px;flex-wrap:wrap}.tf-wcred-go{border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);border-radius:var(--tf-r-sm);padding:6px 14px;font-size:12px;cursor:pointer}.tf-wcred-go:disabled{opacity:.55;cursor:not-allowed}.tf-wcred-actions .is-danger{border:1px solid var(--tf-bad-line);background:var(--tf-surface);color:var(--tf-bad-ink);border-radius:var(--tf-r-sm);padding:6px 12px;font-size:12px;cursor:pointer}.tf-wcred-gate{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-cust{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-cust-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px}.tf-cust-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-cust-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-cust-head p{margin:0;max-width:66ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-cust-head-actions{display:flex;gap:12px;align-items:flex-end;flex:0 0 auto}.tf-cust-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-cust-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-cust-new:disabled{opacity:.45;cursor:not-allowed}.tf-cust-role{display:flex;gap:6px;align-items:center;margin:0 0 14px;color:var(--tf-ink-2);font-size:12.5px}.tf-cust-warn{margin:0 0 14px;padding:9px 12px;border:1px solid var(--tf-warn-line, var(--tf-line));border-radius:var(--tf-r-md, 8px);color:var(--tf-warn-ink, var(--tf-ink-2));font-size:12.5px;line-height:1.5}.tf-cust-groups{display:flex;flex-direction:column;gap:20px}.tf-cust-group>header{display:flex;align-items:baseline;gap:10px;padding-bottom:6px;border-bottom:1px solid var(--tf-line);margin-bottom:10px}.tf-cust-group h2{margin:0;font-size:14px;font-weight:600;color:var(--tf-ink);letter-spacing:.01em}.tf-cust-group-count{color:var(--tf-ink-3);font-size:11.5px}.tf-cust-group.is-warn>header{border-bottom-color:var(--tf-warn-line, var(--tf-line))}.tf-cust-group.is-warn h2{color:var(--tf-warn-ink, var(--tf-ink))}.tf-cust-group-note{margin:0 0 10px;max-width:74ch;color:var(--tf-ink-2);font-size:12px;line-height:1.55}.tf-cust-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-cust-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-cust-main{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.tf-cust-id{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:3px}.tf-cust-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-cust-meta{color:var(--tf-ink-3);font-size:12px;display:flex;flex-wrap:wrap;gap:4px 10px}.tf-cust-detail em{font-style:normal;color:var(--tf-ink-3);opacity:.8}.tf-cust-unknown{font-style:italic;opacity:.85}.tf-cust-pill{align-self:flex-start;padding:2px 8px;border-radius:3px;border:1px solid var(--tf-line);font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--tf-ink-2)}.tf-cust-pill.is-on{border-color:var(--tf-ok-line, var(--tf-line));color:var(--tf-ok-ink, var(--tf-ink-2))}.tf-cust-pill.is-off{border-color:var(--tf-bad-line, var(--tf-line));color:var(--tf-bad-ink, var(--tf-ink-2))}.tf-cust-pill.is-unknown{font-style:italic;text-transform:none;letter-spacing:0}.tf-cust-actions{display:flex;gap:6px;align-items:center;flex:0 0 auto;flex-wrap:wrap}.tf-cust-row button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-cust-row button:disabled{opacity:.45;cursor:not-allowed}.tf-cust-danger{color:var(--tf-bad-ink, var(--tf-ink))}.tf-cust-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-cust-hint{margin:6px 0 0;max-width:74ch;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-cust-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:18px}.tf-cust-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.tf-cust-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-cust-form>header button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-cust-owner{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-3, var(--tf-surface-1));padding:12px 14px;margin-bottom:14px}.tf-cust-owner h3{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--tf-ink);letter-spacing:.04em;text-transform:uppercase}.tf-cust-owner label{display:flex;flex-direction:column;gap:4px;max-width:360px}.tf-cust-owner label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-cust-owner select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:13px}.tf-cust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.tf-cust-grid label{display:flex;flex-direction:column;gap:4px}.tf-cust-grid label.is-wide{grid-column:1 / -1}.tf-cust-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-cust-grid input,.tf-cust-grid select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-cust-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-cust-form>footer button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-cust-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-cust-form>footer .tf-cust-hint{margin:0}.tf-cust-edit{margin-top:12px;padding-top:12px;border-top:1px solid var(--tf-line)}.tf-cust-edit-actions{display:flex;gap:8px;margin-top:12px}.tf-cust-move{margin-top:12px;padding-top:12px;border-top:1px solid var(--tf-line);display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.tf-cust-move label{display:flex;flex-direction:column;gap:4px}.tf-cust-move label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-cust-move select{padding:6px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;min-width:220px}.tf-cust-move .tf-cust-warn{flex:1 1 100%;margin:0 0 4px}.tf-cust-move .tf-cust-error{flex:1 1 100%}.tf-co{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-co-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px}.tf-co-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-co-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-co-head p{margin:0;max-width:66ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-co-head-actions{display:flex;gap:12px;align-items:flex-end;flex:0 0 auto}.tf-co-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-co-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-co-new:disabled{opacity:.45;cursor:not-allowed}.tf-co-role{display:flex;gap:6px;align-items:center;margin:0 0 14px;max-width:78ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-co-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-co-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-co-main{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.tf-co-id{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:3px}.tf-co-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-co-meta{color:var(--tf-ink-3);font-size:12px;display:flex;flex-wrap:wrap;gap:4px 10px}.tf-co-detail em{font-style:normal;opacity:.8}.tf-co-unknown{font-style:italic;opacity:.85}.tf-co-pill{align-self:flex-start;padding:2px 8px;border-radius:3px;border:1px solid var(--tf-line);font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--tf-ink-2)}.tf-co-pill.is-on{border-color:var(--tf-ok-line, var(--tf-line));color:var(--tf-ok-ink, var(--tf-ink-2))}.tf-co-pill.is-off{border-color:var(--tf-bad-line, var(--tf-line));color:var(--tf-bad-ink, var(--tf-ink-2))}.tf-co-pill.is-unknown{font-style:italic;text-transform:none;letter-spacing:0}.tf-co-actions{display:flex;gap:6px;align-items:center;flex:0 0 auto}.tf-co-row button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-co-row button:disabled{opacity:.45;cursor:not-allowed}.tf-co-danger{color:var(--tf-bad-ink, var(--tf-ink))}.tf-co-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-co-hint{margin:0 0 12px;max-width:74ch;color:var(--tf-ink-3);font-size:12px;line-height:1.55}.tf-co-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:18px}.tf-co-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tf-co-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-co-form>header button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-co-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.tf-co-grid label{display:flex;flex-direction:column;gap:4px}.tf-co-grid label.is-wide{grid-column:1 / -1}.tf-co-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-co-grid input{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-co-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-co-form>footer button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-co-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-co-edit{margin-top:12px;padding-top:12px;border-top:1px solid var(--tf-line)}.tf-co-status{display:flex;flex-direction:column;gap:4px;margin-top:12px;max-width:240px}.tf-co-status>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-co-status select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-co-edit-actions{display:flex;gap:8px;margin-top:12px}.tf-co-portal{grid-column:1 / -1;display:flex;flex-direction:column;gap:10px;margin:4px 0 0;padding:12px 14px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-raised)}.tf-co-portal legend{padding:0 6px;font:700 10px var(--tf-sans);letter-spacing:.09em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-co-portal label{display:flex;flex-direction:column;gap:4px}.tf-co-portal-note{margin:0;color:var(--tf-ink-3);font-size:12px;line-height:1.45}.tf-ins{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-ins-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:14px}.tf-ins-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-ins-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-ins-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-ins-windows{display:flex;gap:6px;flex:0 0 auto}.tf-ins-windows button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink-2);font:inherit;font-size:12.5px;cursor:pointer}.tf-ins-windows button.is-active{border-color:var(--tf-line-strong, var(--tf-line));color:var(--tf-ink);font-weight:500;background:var(--tf-surface-2)}.tf-ins-illustrative{display:flex;gap:8px;align-items:flex-start;margin:0 0 18px;padding:10px 12px;border:1px solid var(--tf-warn-line, var(--tf-line));border-radius:5px;background:var(--tf-warn-bg, transparent);color:var(--tf-warn-ink, var(--tf-ink-2));font-size:12.5px;line-height:1.5;max-width:90ch}.tf-ins-illustrative svg{flex:0 0 auto;margin-top:2px}.tf-ins-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:16px}.tf-ins-kpis article{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:14px 16px}.tf-ins-kpis h2{margin:0 0 8px;font-size:10.5px;font-weight:600;color:var(--tf-ink-3);letter-spacing:.07em;text-transform:uppercase}.tf-ins-kpis p{margin:0;font-size:13px;color:var(--tf-ink-2)}.tf-ins-kpis strong{font-size:24px;font-weight:600;color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-ins-kpis small{display:block;margin-top:5px;color:var(--tf-ink-3);font-size:11.5px}.tf-ins-of{color:var(--tf-ink-3);font-size:13px}.tf-ins-unknown{color:var(--tf-ink-3);font-style:italic;font-size:13px}.tf-ins-panel{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:14px 16px;margin-bottom:12px}.tf-ins-panel>header{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:12px;flex-wrap:wrap}.tf-ins-panel h2{margin:0;font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-ins-panel>header span{color:var(--tf-ink-3);font-size:12px;font-variant-numeric:tabular-nums}.tf-ins-tiers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.tf-ins-tiers li{display:grid;grid-template-columns:92px 1fr 84px;gap:12px;align-items:center}.tf-ins-tier{font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border:1px solid var(--tf-line);border-radius:3px;color:var(--tf-ink-2);text-align:center;background:var(--tf-surface)}.tf-ins-tier.is-preferred{color:var(--tf-ok-ink);border-color:var(--tf-ok-line);background:var(--tf-ok-tint)}.tf-ins-tier.is-standard{color:var(--tf-cold);border-color:#a8c3f5;background:var(--tf-cold-tint)}.tf-ins-tier.is-elevated{color:var(--tf-warn-ink);border-color:var(--tf-warn-line);background:var(--tf-warn-tint)}.tf-ins-tier.is-high{color:var(--tf-bad-ink);border-color:var(--tf-bad-line);background:var(--tf-bad-tint)}.tf-ins-tier.is-no-score-yet,.tf-ins-tier.is-{color:var(--tf-nodata);border-color:var(--tf-line);background:var(--tf-nodata-tint);font-style:italic}.tf-ins-bar{height:8px;border-radius:4px;background:var(--tf-line-2);overflow:hidden;display:block}.tf-ins-bar>span{display:block;height:100%;border-radius:4px;background:var(--tf-nodata)}.tf-ins-tiers li.is-preferred .tf-ins-bar>span{background:var(--tf-ok)}.tf-ins-tiers li.is-standard .tf-ins-bar>span{background:var(--tf-cold)}.tf-ins-tiers li.is-elevated .tf-ins-bar>span{background:var(--tf-warn)}.tf-ins-tiers li.is-high .tf-ins-bar>span{background:var(--tf-bad)}.tf-ins-tier-n{text-align:right;font-variant-numeric:tabular-nums;font-size:13px;color:var(--tf-ink)}.tf-ins-tier-n small{display:block;color:var(--tf-ink-3);font-size:11px}.tf-ins-truncated{display:flex;gap:6px;align-items:flex-start;margin:12px 0 0;color:var(--tf-warn-ink, var(--tf-ink-2));font-size:12px;line-height:1.5}.tf-ins-attention{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-ins-attention li{display:grid;grid-template-columns:1fr 92px 60px 130px;gap:12px;align-items:center;font-size:13px}.tf-ins-attention strong{font-weight:500;color:var(--tf-ink)}.tf-ins-score{text-align:right;font-variant-numeric:tabular-nums;color:var(--tf-ink)}.tf-ins-km{text-align:right;color:var(--tf-ink-3);font-size:12px;font-variant-numeric:tabular-nums}.tf-ins-claims{display:flex;gap:28px;font-size:13px;color:var(--tf-ink-2)}.tf-ins-absent{color:var(--tf-ink-3);font-size:12.5px;margin:0;padding:12px 0}.tf-grp{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-grp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.tf-grp-head span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-grp-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-grp-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-grp-head-actions{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto;flex-wrap:wrap}.tf-grp-customer{display:flex;flex-direction:column;gap:4px}.tf-grp-customer span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-grp-customer select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-2));color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-grp-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-grp-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-grp-new:disabled{opacity:.45;cursor:not-allowed}.tf-grp-choose{color:var(--tf-ink-2);font-size:13px;padding:24px 0}.tf-grp-tree,.tf-grp-children{list-style:none;margin:0;padding:0}.tf-grp-tree{display:flex;flex-direction:column;gap:6px}.tf-grp-children{display:flex;flex-direction:column;gap:6px;margin-top:6px}.tf-grp-node{display:block}.tf-grp-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:10px 14px}.tf-grp-twig{color:var(--tf-ink-3);font-size:12px;width:10px;flex:0 0 auto}.tf-grp-id{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:2px}.tf-grp-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-grp-meta{color:var(--tf-ink-3);font-size:12px}.tf-grp-orphan{display:inline-flex;align-items:center;gap:4px;color:var(--tf-warn-ink, var(--tf-ink-2));font-size:11.5px}.tf-grp-move{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}.tf-grp-move span{color:var(--tf-ink-3);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase}.tf-grp-move select{padding:6px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;min-width:170px}.tf-grp-actions{display:flex;gap:6px;align-items:center;flex:0 0 auto}.tf-grp-row button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-grp-row button:disabled{opacity:.45;cursor:not-allowed}.tf-grp-danger{color:var(--tf-bad-ink, var(--tf-ink))}.tf-grp-rename{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.tf-grp-rename input{padding:6px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-grp-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-grp-error-top{margin:0 0 12px}.tf-grp-hint{margin:0;color:var(--tf-ink-3);font-size:12px;line-height:1.5;max-width:60ch}.tf-grp-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-grp-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.tf-grp-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-grp-form>header button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-grp-field{display:flex;flex-direction:column;gap:4px;max-width:320px}.tf-grp-field>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-grp-field input{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-grp-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-grp-form>footer button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-grp-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-key{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-key-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.tf-key-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-key-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-key-head p{margin:0;max-width:66ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-key-head-actions{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto;flex-wrap:wrap}.tf-key-customer{display:flex;flex-direction:column;gap:4px}.tf-key-customer span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-key-customer select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-2));color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-key-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-key-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-key-new:disabled{opacity:.45;cursor:not-allowed}.tf-key-choose{color:var(--tf-ink-2);font-size:13px;margin:0 0 16px;max-width:66ch;line-height:1.55}.tf-key-reveal{border:1px solid var(--tf-warn-line, var(--tf-line-strong, var(--tf-line)));border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:18px}.tf-key-reveal h2{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-key-reveal-lede{margin:0 0 12px;max-width:68ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-key-secret{display:block;padding:12px 14px;border:1px solid var(--tf-line);border-radius:6px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;letter-spacing:.02em;word-break:break-all;-webkit-user-select:all;user-select:all}.tf-key-reveal-actions{display:flex;gap:8px;margin:12px 0 10px;flex-wrap:wrap}.tf-key-reveal-actions button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-key-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-key-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tf-key-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-key-form>header button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-key-warn{display:flex;align-items:flex-start;gap:7px;margin:0 0 14px;padding:10px 12px;border:1px solid var(--tf-warn-line, var(--tf-line));border-radius:6px;color:var(--tf-warn-ink, var(--tf-ink-2));font-size:12.5px;line-height:1.5;max-width:68ch}.tf-key-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.tf-key-grid label{display:flex;flex-direction:column;gap:4px}.tf-key-grid label.is-wide{grid-column:1 / -1}.tf-key-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-key-grid input,.tf-key-grid select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-key-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-key-form>footer button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-key-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-key-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-key-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-key-id{flex:1 1 200px;min-width:0;display:flex;flex-direction:column;gap:3px}.tf-key-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-key-prefix{color:var(--tf-ink-3);font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.tf-key-facts{flex:2 1 300px;min-width:0;display:flex;flex-direction:column;gap:2px}.tf-key-reach{font-size:12.5px;font-weight:600;color:var(--tf-ink-2)}.tf-key-meta{color:var(--tf-ink-3);font-size:12px}.tf-key-revoke{padding:6px 13px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-bad-ink, var(--tf-ink));font:inherit;font-size:12px;cursor:pointer;flex:0 0 auto}.tf-key-revoke:disabled{opacity:.45;cursor:not-allowed}.tf-key-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-key-error-top{margin:0 0 12px}.tf-key-hint{margin:0;color:var(--tf-ink-3);font-size:12px;line-height:1.5;max-width:62ch}.tf-whk{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-whk-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.tf-whk-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-whk-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-whk-head p{margin:0;max-width:68ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-whk-head-actions{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto;flex-wrap:wrap}.tf-whk-customer{display:flex;flex-direction:column;gap:4px}.tf-whk-customer span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-whk-customer select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-2));color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-whk-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-whk-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-whk-new:disabled{opacity:.45;cursor:not-allowed}.tf-whk-choose{color:var(--tf-ink-2);font-size:13px;padding:24px 0;max-width:62ch;line-height:1.55}.tf-whk-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-whk-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-whk-main{display:flex;align-items:flex-start;gap:18px}.tf-whk-id{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.tf-whk-id strong{font-size:13.5px;font-weight:600;color:var(--tf-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-whk-meta{color:var(--tf-ink-3);font-size:12px}.tf-whk-actions{display:flex;gap:6px;align-items:center;flex:0 0 auto}.tf-whk-row button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-whk-row button:disabled{opacity:.45;cursor:not-allowed}.tf-whk-sub{margin:10px 0 0;display:flex;flex-direction:column;gap:6px}.tf-whk-chips{display:flex;flex-wrap:wrap;gap:5px;margin:0}.tf-whk-chip{display:inline-flex;padding:3px 8px;border-radius:3px;border:1px solid var(--tf-line);background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink-2);font-size:11px}.tf-whk-chip.is-all{border-color:var(--tf-line-strong, var(--tf-line));color:var(--tf-ink);font-weight:600}.tf-whk-chip.is-bad{border-color:var(--tf-bad-line, var(--tf-line));color:var(--tf-bad-ink, var(--tf-ink));font-weight:600}.tf-whk-sub-note{color:var(--tf-ink-3);font-size:12px}.tf-whk-raw{display:block;font-family:var(--tf-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:11.5px;color:var(--tf-ink-3);word-break:break-all}.tf-whk-warn{margin:0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12px;line-height:1.55;max-width:76ch}.tf-whk-warn code{font-family:var(--tf-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:11.5px}.tf-whk-health{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.tf-whk-flag{font-size:11px;color:var(--tf-ink-3);padding:2px 7px;border-radius:3px;border:1px solid var(--tf-line)}.tf-whk-flag.is-bad{color:var(--tf-bad-ink, var(--tf-ink));border-color:var(--tf-bad-line, var(--tf-line));font-weight:600}.tf-whk-flag.is-off{color:var(--tf-ink-2)}.tf-whk-flag.is-unknown{font-style:italic}.tf-whk-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-whk-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.tf-whk-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-whk-form>header button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-whk-url{display:flex;flex-direction:column;gap:4px}.tf-whk-url span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-whk-url input{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-whk-target{margin:10px 0 0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-whk-all{display:flex;gap:8px;align-items:center;margin:14px 0 4px;color:var(--tf-ink);font-size:13px}.tf-whk-picker{display:flex;flex-direction:column;gap:14px;margin-top:12px}.tf-whk-picker fieldset{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);padding:12px 14px;margin:0}.tf-whk-picker fieldset:disabled{opacity:.45}.tf-whk-picker legend{padding:0 6px;color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-whk-legend-note{margin:0 0 10px;color:var(--tf-ink-3);font-size:12px;line-height:1.55;max-width:76ch}.tf-whk-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px 16px}.tf-whk-opt{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--tf-ink)}.tf-whk-opt input{margin-top:3px;flex:0 0 auto}.tf-whk-opt>span{display:flex;flex-direction:column;gap:1px;min-width:0}.tf-whk-opt code{font-family:var(--tf-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:10.5px;color:var(--tf-ink-3)}.tf-whk-opt em{font-style:normal;font-size:11px;color:var(--tf-ink-3);line-height:1.45}.tf-whk-preview{margin-top:14px;display:flex;flex-direction:column;gap:4px}.tf-whk-preview>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-whk-preview code{font-family:var(--tf-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:12px;color:var(--tf-ink);word-break:break-all;padding:8px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1))}.tf-whk-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-whk-form>footer button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-whk-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-whk-error{margin:10px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-whk-hint{margin:0;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-whk-secret{border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-whk-secret h2{margin:0 0 8px;display:flex;gap:6px;align-items:center;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-whk-secret-lede{margin:0 0 10px;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55;max-width:76ch}.tf-whk-secret-value{display:block;font-family:var(--tf-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:13px;color:var(--tf-ink);word-break:break-all;padding:10px 12px;margin-bottom:10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1))}.tf-whk-secret button{margin-top:12px;padding:6px 14px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-lic{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-lic-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px}.tf-lic-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-lic-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-lic-head p{margin:0;max-width:70ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-lic-picker{display:flex;flex-direction:column;gap:4px;flex:0 0 auto}.tf-lic-picker>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-lic select,.tf-lic input,.tf-lic textarea{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-lic textarea{font-family:var(--tf-mono, ui-monospace, monospace);font-size:12px;resize:vertical}.tf-lic button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-lic button:hover:not(:disabled){background:var(--tf-surface-2)}.tf-lic button:disabled{opacity:.45;cursor:not-allowed}.tf-lic-danger{color:var(--tf-bad-ink, var(--tf-ink))}.tf-lic-enforce{border:1px solid var(--tf-line);border-left-width:3px;border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:11px 14px;margin-bottom:18px;max-width:92ch}.tf-lic-enforce p{margin:0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-lic-enforce.is-off{border-left-color:var(--tf-warn-line, var(--tf-line-strong, var(--tf-line)))}.tf-lic-enforce.is-on{border-left-color:var(--tf-ok-line, var(--tf-line-strong, var(--tf-line)))}.tf-lic-enforce.is-unknown{border-left-color:var(--tf-line-strong, var(--tf-line));font-style:italic}.tf-lic-enforce code{font-size:11.5px;opacity:.85}.tf-lic-link{margin-top:6px;padding:0!important;border:0!important;background:none!important;color:var(--tf-ink-2);font-size:12px;text-decoration:underline;cursor:pointer}.tf-lic-flags{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.tf-lic-flags li{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--tf-ink-2)}.tf-lic-flag{min-width:96px;padding:1px 7px;border:1px solid var(--tf-line);border-radius:3px;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;text-align:center}.tf-lic-flag.is-on{border-color:var(--tf-ok-line, var(--tf-line));color:var(--tf-ok-ink, var(--tf-ink-2))}.tf-lic-flag.is-off{border-color:var(--tf-warn-line, var(--tf-line));color:var(--tf-ink-2)}.tf-lic-flag.is-unknown{font-style:italic;text-transform:none;letter-spacing:0}.tf-lic-section{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:14px 16px;margin-bottom:16px}.tf-lic-section-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.tf-lic-section-head h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-lic-section h3{margin:14px 0 6px;font-size:12.5px;font-weight:600;color:var(--tf-ink)}.tf-lic-section h4{margin:10px 0 4px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-lic-choose,.tf-lic-hint{margin:8px 0 0;max-width:82ch;color:var(--tf-ink-3);font-size:12px;line-height:1.55}.tf-lic-note{margin:8px 0 0;color:var(--tf-ink-2);font-size:12.5px}.tf-lic-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-lic-caps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.tf-lic-cap{display:flex;flex-direction:column;gap:2px}.tf-lic-cap-label{color:var(--tf-ink-3);font-size:10.5px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-lic-value{color:var(--tf-ink);font-size:14px;font-weight:600}.tf-lic-unlimited{color:var(--tf-ink-2);font-size:12.5px}.tf-lic-unknown{color:var(--tf-ink-3);font-size:12.5px;font-style:italic;opacity:.9}.tf-lic-resellable p{margin:0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-lic-stranded{margin-top:12px;border:1px solid var(--tf-bad-line, var(--tf-line));border-radius:6px;padding:10px 12px}.tf-lic-stranded h3{margin-top:0}.tf-lic-stranded p{margin:0 0 6px;color:var(--tf-ink-2);font-size:12.5px}.tf-lic-stranded ul{margin:0;padding-left:18px;color:var(--tf-ink-2);font-size:12.5px}.tf-lic-usage{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.tf-lic-usage-row{display:grid;grid-template-columns:130px 110px 80px 1fr;gap:10px;align-items:baseline;padding:6px 8px;border:1px solid var(--tf-line);border-radius:5px;font-size:12.5px;color:var(--tf-ink-2)}.tf-lic-usage-key{color:var(--tf-ink);font-weight:600}.tf-lic-usage-scope{color:var(--tf-ink-3);font-size:11.5px}.tf-lic-usage-current strong{font-size:14px;color:var(--tf-ink)}.tf-lic-pkgs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-lic-pkg{border:1px solid var(--tf-line);border-radius:6px;background:var(--tf-surface-3, var(--tf-surface-1));padding:10px 12px}.tf-lic-pkg.is-inactive{opacity:.72}.tf-lic-pkg-main{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.tf-lic-pkg-id{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:3px}.tf-lic-pkg-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-lic-pkg-desc,.tf-lic-pkg-modules{color:var(--tf-ink-3);font-size:12px}.tf-lic-pkg-tags{display:flex;gap:6px}.tf-lic-tag{padding:1px 7px;border:1px solid var(--tf-line);border-radius:3px;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--tf-ink-2)}.tf-lic-tag.is-off{border-color:var(--tf-bad-line, var(--tf-line))}.tf-lic-tag.is-unknown{font-style:italic;text-transform:none;letter-spacing:0}.tf-lic-pkg-caps{display:flex;gap:16px;flex:0 0 auto}.tf-lic-pkg-subs{display:flex;flex-direction:column;gap:2px;flex:0 0 auto;color:var(--tf-ink-2);font-size:12px}.tf-lic-pkg-price{color:var(--tf-ink-3);font-size:11.5px}.tf-lic-pkg-actions{display:flex;gap:6px;flex:0 0 auto}.tf-lic-form{border:1px solid var(--tf-line);border-radius:6px;background:var(--tf-surface-3, var(--tf-surface-1));padding:14px 16px;margin-bottom:14px}.tf-lic-form>header{display:flex;justify-content:space-between;align-items:center}.tf-lic-form>header h3{margin:0;font-size:14px}.tf-lic-form>footer{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.tf-lic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:10px}.tf-lic-grid label{display:flex;flex-direction:column;gap:4px}.tf-lic-grid label.is-wide{grid-column:1 / -1}.tf-lic-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-lic-field-note{font-style:normal;color:var(--tf-ink-3);font-size:11px}.tf-lic-modules{margin:14px 0 0;border:1px solid var(--tf-line);border-radius:6px;padding:10px 12px}.tf-lic-modules legend{padding:0 6px;color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-lic-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:6px}.tf-lic-check{display:flex;align-items:center;gap:6px;color:var(--tf-ink-2);font-size:12.5px}.tf-lic-check.is-blocked{opacity:.6}.tf-lic-check em{font-style:italic;font-size:11px;color:var(--tf-ink-3)}.tf-lic-extra{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;margin-top:10px}.tf-lic-extra label{display:flex;flex-direction:column;gap:4px}.tf-lic-extra label>span{color:var(--tf-ink-3);font-size:11px;letter-spacing:.05em;text-transform:uppercase}.tf-lic-json{display:flex;flex-direction:column;gap:4px;margin-top:12px}.tf-lic-json>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-lic-sub{display:flex;flex-direction:column;gap:12px}.tf-lic-sub-current p{margin:0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-lic-effective{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.tf-lic-effective h4{width:100%;margin-bottom:0}.tf-lic-assign{border:1px solid var(--tf-line);border-radius:6px;padding:12px 14px}.tf-lic-assign h3{margin-top:0}.tf-lic-assign button[type=submit]{margin-top:12px}.tf-lic-history summary{cursor:pointer;color:var(--tf-ink-2);font-size:12.5px}.tf-lic-history ul{margin:8px 0 0;padding-left:18px;color:var(--tf-ink-3);font-size:12px}.tf-comms{height:100%;overflow:auto;padding:28px clamp(18px,4vw,52px) 48px;background:var(--tf-bg);color:var(--tf-ink)}.tf-comms-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;max-width:1080px;margin:0 auto 24px}.tf-comms-head>div>span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-comms-head h1{margin:5px 0 4px;font-size:28px;line-height:1.15;letter-spacing:-.025em}.tf-comms-head p{max-width:660px;margin:0;color:var(--tf-ink-2);font-size:13px;line-height:1.55;text-wrap:pretty}.tf-comms-security{display:flex;align-items:center;gap:7px;flex:none;padding:8px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);color:var(--tf-ink-2);font-size:11px;font-weight:650}.tf-comms-scope{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(220px,320px);align-items:center;gap:12px;max-width:1080px;margin:0 auto 14px;padding:12px 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-comms-scope-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-comms-scope label{display:grid;gap:2px}.tf-comms-scope label span{color:var(--tf-accent-strong);font-size:9px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.tf-comms-scope label strong{font-size:13px}.tf-comms-scope select{width:100%;height:40px;padding-block:0;padding-inline:11px 34px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12px;font-weight:650}.tf-comms-scope select:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-comms-card{max-width:1080px;margin:0 auto 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-comms-card-head{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid var(--tf-line-2)}.tf-comms-card-icon{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:11px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-comms-card-head>div>span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-comms-card-head h2{margin:3px 0 2px;font-size:18px;letter-spacing:-.015em}.tf-comms-card-head p{margin:0;color:var(--tf-ink-3);font-size:11.5px;line-height:1.45}.tf-comms-card-body{padding:18px 20px 20px}.tf-comms-pill{display:flex;align-items:center;gap:6px;flex:none;margin-inline-start:auto;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:700;white-space:nowrap}.tf-comms-pill i{width:7px;height:7px;border-radius:50%}.tf-comms-pill.is-on{background:var(--tf-run-tint);color:var(--tf-run)}.tf-comms-pill.is-on i{background:var(--tf-run)}.tf-comms-pill.is-off{background:var(--tf-offline-tint);color:var(--tf-ink-2)}.tf-comms-pill.is-off i{background:var(--tf-offline)}.tf-comms-pill.is-unknown{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-comms-pill.is-unknown i{background:var(--tf-accent)}.tf-comms-effective{margin:0 0 16px;padding:11px 13px;border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:12px;line-height:1.5}.tf-comms-unknown-note{margin:0 0 16px;padding:11px 13px;border-inline-start:3px solid var(--tf-accent);border-radius:var(--tf-r-sm);background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:11.5px;line-height:1.5}.tf-comms-unknown-note code{font-size:11px}.tf-comms-alarm{max-width:1080px;margin:0 auto 14px;padding:12px 14px;border:1px solid var(--tf-alert);border-radius:var(--tf-r-sm);background:var(--tf-alert-tint);color:var(--tf-alert);font-size:12px;font-weight:650;line-height:1.5}.tf-comms-facts{display:flex;flex-wrap:wrap;gap:10px 28px;margin:0 0 16px}.tf-comms-facts>div{display:grid;gap:2px}.tf-comms-facts dt{color:var(--tf-ink-3);font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-comms-facts dd{margin:0;color:var(--tf-ink);font-size:12px;word-break:break-all}.tf-comms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.tf-comms-field{display:grid;align-content:start;gap:5px;min-width:0}.tf-comms-field>label{color:var(--tf-ink-2);font-size:11px;font-weight:700;word-break:break-all}.tf-comms-field small{color:var(--tf-ink-3);font-size:9.5px;line-height:1.45;word-break:break-word}.tf-comms input{width:100%;height:40px;padding:0 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12px}.tf-comms input:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-comms input:disabled{cursor:not-allowed;opacity:.65}.tf-comms-clear{justify-self:start;min-height:0!important;padding:3px 8px!important;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-alert);font:inherit;font-size:10px;font-weight:700}.tf-comms-subgroup{min-width:0;margin:14px 0 0;padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3)}.tf-comms-subgroup legend{padding:0 4px;color:var(--tf-ink);font-size:12px;font-weight:750}.tf-comms-subgroup>p{margin:0 0 12px;color:var(--tf-ink-3);font-size:10.5px;line-height:1.45}.tf-comms-form-foot{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:16px;padding-top:14px;border-top:1px solid var(--tf-line-2)}.tf-comms-form-foot p{margin-block:0;margin-inline:0 auto;color:var(--tf-ink-3);font-size:10.5px;line-height:1.45}.tf-comms-validation{margin:10px 0 0;color:var(--tf-alert);font-size:11px;font-weight:650}.tf-comms-message{margin:14px 0 0;padding:10px 12px;border-radius:var(--tf-r-sm);font-size:11.5px;font-weight:650;line-height:1.5}.tf-comms-message.is-ok{background:var(--tf-run-tint);color:var(--tf-run)}.tf-comms-message.is-bad{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-comms-test{margin-top:18px;padding:14px;border:1px dashed var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-comms-test h4{margin:0 0 4px;font-size:12.5px;font-weight:750}.tf-comms-test-lede,.tf-comms-test-denied{margin:0 0 12px;color:var(--tf-ink-3);font-size:10.5px;line-height:1.5}.tf-comms-test-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.tf-comms-test-row>label[for]{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-comms-test-row>input{flex:1 1 220px;min-width:180px}.tf-comms-test-purpose{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-comms-test-purpose select{height:40px;padding-block:0;padding-inline:10px 28px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:11px}.tf-comms-test-confirm{margin-top:12px;padding:12px;border:1px solid var(--tf-alert);border-radius:var(--tf-r-sm);background:var(--tf-alert-tint)}.tf-comms-test-confirm p{margin:0 0 10px;color:var(--tf-alert);font-size:11.5px;line-height:1.55}.tf-comms-test-actions{display:flex;flex-wrap:wrap;gap:8px}.tf-comms-outcome{margin:12px 0 0;padding:10px 12px;border-radius:var(--tf-r-sm);font-size:11.5px;line-height:1.55;font-weight:650}.tf-comms-outcome.is-ok{background:var(--tf-run-tint);color:var(--tf-run)}.tf-comms-outcome.is-bad{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-comms-outcome.is-unsure{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-comms button{min-height:40px;padding:0 13px;border-radius:var(--tf-r-sm);font:inherit;font-size:11px;font-weight:700;cursor:pointer;transition:background-color .16s,color .16s,border-color .16s,transform .12s}.tf-comms button:active:not(:disabled){transform:scale(.97)}.tf-comms button:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}.tf-comms button:disabled{cursor:not-allowed;opacity:.55}.tf-comms .tf-button-primary{border:1px solid var(--tf-accent-strong);background:var(--tf-accent-strong);color:var(--tf-on-accent)}.tf-comms .tf-button-primary:hover:not(:disabled){background:var(--tf-accent-ink)}.tf-comms .tf-button-secondary{border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2)}.tf-comms .tf-button-secondary:hover:not(:disabled){background:var(--tf-surface-2);color:var(--tf-ink)}.tf-comms-denied{display:grid;place-items:center}.tf-comms-denied>div{max-width:420px;padding:28px;text-align:center;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-comms-denied svg{color:var(--tf-ink-3)}.tf-comms-denied h1{margin:12px 0 6px;font-size:20px}.tf-comms-denied p{margin:0;color:var(--tf-ink-2);font-size:12px;line-height:1.5}@media (max-width:760px){.tf-comms{padding:20px 14px 36px}.tf-comms-security{display:none}.tf-comms-scope{grid-template-columns:36px minmax(0,1fr)}.tf-comms-scope select{grid-column:1/-1}.tf-comms-card-head{align-items:flex-start;flex-wrap:wrap}.tf-comms-pill{margin-inline-start:52px}.tf-comms-grid{grid-template-columns:1fr}.tf-comms-form-foot{align-items:stretch;flex-direction:column}.tf-comms-form-foot button{width:100%}.tf-comms-test-row>input{flex:1 1 100%}}@media (prefers-reduced-motion:reduce){.tf-comms button{transition:none}}.tf-sys{height:100%;overflow:auto;padding:28px clamp(18px,4vw,52px) 48px;background:var(--tf-bg);color:var(--tf-ink)}.tf-sys-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;max-width:1080px;margin:0 auto 24px}.tf-sys-head>div>span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-sys-head h1{margin:5px 0 4px;font-size:28px;line-height:1.15;letter-spacing:-.025em}.tf-sys-head p{max-width:680px;margin:0;color:var(--tf-ink-2);font-size:13px;line-height:1.55;text-wrap:pretty}.tf-sys-head code{font-family:var(--tf-mono);font-size:12px}.tf-sys-security{display:flex;align-items:center;gap:7px;flex:none;padding:8px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);color:var(--tf-ink-2);font-size:11px;font-weight:650}.tf-sys-denied{display:grid;place-items:center;text-align:center}.tf-sys-denied h1{margin:10px 0 6px;font-size:20px}.tf-sys-denied p{max-width:460px;margin:0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-sys-alarm{max-width:1080px;margin:0 auto 14px;padding:12px 14px;border:1px solid var(--tf-bad-line);border-radius:var(--tf-r-sm);background:var(--tf-bad-bg);color:var(--tf-bad-ink);font-size:12px;font-weight:650;line-height:1.55}.tf-sys-alarm.is-quiet{border-color:var(--tf-warn-line);background:var(--tf-warn-bg);color:var(--tf-warn-ink);font-weight:600}.tf-sys-card{max-width:1080px;margin:0 auto 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-sys-card.is-licensing{border-color:var(--tf-warn-line)}.tf-sys-card.is-pointer{background:var(--tf-surface-2)}.tf-sys-card-head{display:flex;align-items:flex-start;gap:12px;padding:18px 20px;border-bottom:1px solid var(--tf-line-2)}.tf-sys-card.is-pointer .tf-sys-card-head{border-bottom:0}.tf-sys-card-icon{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:11px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-sys-card.is-licensing .tf-sys-card-icon{background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-sys-card-head>div>span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-sys-card.is-licensing .tf-sys-card-head>div>span{color:var(--tf-warn-ink)}.tf-sys-card-head h2{margin:3px 0 4px;font-size:18px;letter-spacing:-.015em}.tf-sys-card-head p{margin:0;max-width:720px;color:var(--tf-ink-3);font-size:11.5px;line-height:1.5}.tf-sys-card-body{padding:18px 20px 20px}.tf-sys-unrecognised{margin-top:6px!important;color:var(--tf-warn-ink)!important;font-weight:650}.tf-sys-unrecognised code{font-family:var(--tf-mono)}.tf-sys-summary{margin:0 0 14px;padding:11px 13px;border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:12px;line-height:1.55}.tf-sys-pill{display:inline-flex;align-items:center;gap:6px;flex:none;padding:5px 10px;border:1px solid var(--tf-line);border-radius:999px;font-size:10px;font-weight:750;white-space:nowrap}.tf-sys-pill i{font-style:normal;font-size:10px;line-height:1}.tf-sys-pill.is-live{border-color:var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-sys-pill.is-open{border-color:var(--tf-ok-line);background:var(--tf-ok-tint);color:var(--tf-ok-ink)}.tf-sys-pill.is-unknown{border-color:var(--tf-nodata);background:var(--tf-nodata-tint);color:var(--tf-ink-2);border-style:dashed}.tf-sys-chip{display:inline-flex;align-items:center;gap:5px;justify-self:start;padding:3px 8px;border:1px solid var(--tf-line);border-radius:999px;font-size:9.5px;font-weight:700}.tf-sys-chip i{font-style:normal}.tf-sys-chip.is-restart{border-color:var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-sys-chip.is-unreported{border-color:var(--tf-nodata);border-style:dashed;background:var(--tf-nodata-tint);color:var(--tf-ink-2)}.tf-sys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.tf-sys-field{display:grid;align-content:start;gap:5px;min-width:0}.tf-sys-field>label{display:grid;gap:1px;min-width:0}.tf-sys-field-leaf{color:var(--tf-ink-2);font-size:11.5px;font-weight:700;word-break:break-word}.tf-sys-field code{color:var(--tf-ink-3);font-family:var(--tf-mono);font-size:9.5px;word-break:break-all}.tf-sys input{width:100%;height:40px;padding:0 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);outline:0;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12px}.tf-sys input:focus{border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-sys input:disabled{cursor:not-allowed;opacity:.65}.tf-sys-stored,.tf-sys-note{color:var(--tf-ink-3);font-size:9.5px;line-height:1.5;word-break:break-word}.tf-sys-note{padding-inline-start:7px;border-inline-start:2px solid var(--tf-warn-line);color:var(--tf-warn-ink)}.tf-sys-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:16px;margin-top:16px;padding-top:14px;border-top:1px solid var(--tf-line-2)}.tf-sys-foot p{margin-block:0;margin-inline:0 auto;max-width:560px;color:var(--tf-ink-3);font-size:10.5px;line-height:1.5}.tf-sys-primary,.tf-sys-secondary,.tf-sys-danger{min-height:38px;padding:0 14px;border-radius:var(--tf-r-sm);font:inherit;font-size:11.5px;font-weight:700;cursor:pointer}.tf-sys-primary{border:1px solid var(--tf-accent-strong);background:var(--tf-accent-strong);color:var(--tf-on-accent)}.tf-sys-secondary{border:1px solid var(--tf-line-strong);background:var(--tf-surface);color:var(--tf-ink)}.tf-sys-danger{border:1px solid var(--tf-bad);background:var(--tf-bad);color:var(--tf-on-accent)}.tf-sys-primary:disabled,.tf-sys-secondary:disabled,.tf-sys-danger:disabled{cursor:not-allowed;opacity:.55}.tf-sys-confirm{margin-top:14px;padding:13px;border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm);background:var(--tf-warn-bg)}.tf-sys-confirm p{margin:0 0 9px;color:var(--tf-warn-ink);font-size:11.5px;line-height:1.6}.tf-sys-confirm.is-danger{border-color:var(--tf-bad-line);background:var(--tf-bad-bg)}.tf-sys-confirm.is-danger p{color:var(--tf-bad-ink)}.tf-sys-confirm-actions{display:flex;flex-wrap:wrap;gap:8px}.tf-sys-message{margin:14px 0 0;padding:10px 12px;border-radius:var(--tf-r-sm);font-size:11.5px;font-weight:650;line-height:1.55}.tf-sys-message.is-ok{background:var(--tf-ok-bg);color:var(--tf-ok-ink)}.tf-sys-message.is-bad{background:var(--tf-bad-bg);color:var(--tf-bad-ink)}.tf-sys-flags{display:grid;gap:12px;margin:0;padding:0;list-style:none}.tf-sys-flag{padding:13px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3)}.tf-sys-flag-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.tf-sys-flag-head strong{display:block;font-size:12.5px}.tf-sys-flag-head code{display:block;margin-top:1px;color:var(--tf-ink-3);font-family:var(--tf-mono);font-size:9.5px}.tf-sys-flag-effect{margin:8px 0 0;color:var(--tf-ink-2);font-size:11px;line-height:1.6}.tf-sys-flag-unknown{margin:8px 0 0;padding:9px 11px;border-inline-start:3px solid var(--tf-nodata);border-radius:var(--tf-r-sm);background:var(--tf-nodata-tint);color:var(--tf-ink-2);font-size:10.5px;line-height:1.55}.tf-sys-flag-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}@media (max-width:720px){.tf-sys{padding:20px 14px 40px}.tf-sys-head{flex-direction:column;gap:12px}.tf-sys-foot{justify-content:flex-start}}.tf-ctpl{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-ctpl header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-ctpl h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-ctpl h4{margin:0 0 5px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-ctpl-lede{margin:0;font-size:12px;line-height:1.55;color:var(--tf-ink-2)}.tf-ctpl-lede code{font-family:var(--tf-mono);font-size:11.5px}.tf-ctpl-company{display:flex;align-items:center;gap:6px}.tf-ctpl-company span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-ctpl select,.tf-ctpl input{padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink);min-width:0}.tf-ctpl input:disabled,.tf-ctpl select:disabled{opacity:.55;cursor:not-allowed}.tf-ctpl-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-ctpl-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);font-size:12.5px}.tf-ctpl-kind{font-family:var(--tf-mono);font-size:12px;color:var(--tf-ink);font-weight:600}.tf-ctpl-scope{color:var(--tf-ink-2)}.tf-ctpl-mode{color:var(--tf-ink-2);font-size:11.5px}.tf-ctpl-mode.is-drop{color:var(--tf-bad-ink)}.tf-ctpl-mode.is-unknown{color:var(--tf-ink-3);font-style:italic}.tf-ctpl-state{font-size:11px;font-weight:600;color:var(--tf-warn-ink)}.tf-ctpl-state.is-off{color:var(--tf-ink-3);font-weight:400}.tf-ctpl-note{color:var(--tf-ink-3);font-size:11.5px;font-style:italic}.tf-ctpl-actions{margin-left:auto;display:flex;gap:6px}.tf-ctpl-actions button{padding:4px 9px;font-size:11.5px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-ctpl-actions button.is-delete{color:var(--tf-bad-ink);border-color:var(--tf-bad-line)}.tf-ctpl-actions button:disabled{opacity:.5;cursor:not-allowed}.tf-ctpl-observed>div{display:flex;gap:6px;flex-wrap:wrap}.tf-ctpl-observed button{padding:4px 9px;font-size:11.5px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);cursor:pointer}.tf-ctpl-observed button b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-ctpl-add{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-ctpl-add label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-ctpl-add span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-ctpl-go{padding:7px 12px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-ctpl-go:disabled{opacity:.5;cursor:not-allowed}.tf-ctpl-hint{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-ctpl-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-ctpl-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-ctpl-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-ctpl-proto{font-family:var(--tf-mono);font-size:11.5px;color:var(--tf-ink-2)}.tf-ctpl-kind{font-weight:600;color:var(--tf-ink);font-size:12px}.tf-ctpl-text{font-family:var(--tf-mono);font-size:11px;color:var(--tf-ink-2);background:var(--tf-surface);padding:2px 6px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);max-width:40ch;overflow-x:auto;white-space:nowrap}.tf-ctpl-list button{margin-left:auto;padding:4px 9px;font-size:11.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-ctpl-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-ctpl-form label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-ctpl-wide{flex:1 1 340px}.tf-ctpl-wide small{font-family:var(--tf-mono);font-size:10.5px;color:var(--tf-ink-3)}.tf-ctpl-missing,.tf-ctpl-warn{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-cc{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-cc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;flex-wrap:wrap}.tf-cc-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-cc-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-cc-head p{margin:0;max-width:72ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-cc-head-actions{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.tf-cc-filter{display:flex;flex-direction:column;gap:4px}.tf-cc-filter span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-cc-filter select,.tf-cc-filter input{padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-cc-new{padding:7px 14px;border:1px solid var(--tf-line-strong);border-radius:5px;background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-cc-new:hover{background:var(--tf-surface-2)}.tf-cc-banner{display:flex;align-items:flex-start;gap:8px;margin:0 0 16px;padding:10px 12px;border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-md);background:var(--tf-warn-tint);color:var(--tf-warn-ink);font-size:12.5px;line-height:1.5;max-width:84ch}.tf-cc-none{color:var(--tf-ink-2);font-size:13px;margin:0}.tf-cc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.tf-cc-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);padding:13px 15px}.tf-cc-main{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}.tf-cc-id{display:flex;flex-direction:column;gap:4px;min-width:240px;flex:1 1 280px}.tf-cc-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-cc-key{color:var(--tf-ink-2);font-size:12px;font-family:var(--tf-mono)}.tf-cc-meta{color:var(--tf-ink-3);font-size:11.5px}.tf-cc-template{display:inline-block;align-self:flex-start;max-width:100%;padding:4px 8px;border:1px solid var(--tf-line-2);border-radius:5px;background:var(--tf-surface-2);color:var(--tf-ink);font-family:var(--tf-mono);font-size:12px;word-break:break-all}.tf-cc-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-start;flex:0 1 auto}.tf-cc-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border:1px solid var(--tf-line);border-radius:999px;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:11.5px;font-weight:500;white-space:nowrap}.tf-cc-chip.is-live{border-color:var(--tf-ok-line);background:var(--tf-ok-bg);color:var(--tf-ok-ink)}.tf-cc-chip.is-off{border-color:var(--tf-line-strong);background:var(--tf-surface-2);color:var(--tf-ink-2)}.tf-cc-chip.is-danger{border-color:var(--tf-bad-line);background:var(--tf-bad-bg);color:var(--tf-bad-ink)}.tf-cc-chip.is-gated{border-color:var(--tf-warn-line);background:var(--tf-warn-bg);color:var(--tf-warn-ink)}.tf-cc-chip.is-open{border-color:var(--tf-line);background:var(--tf-surface-2);color:var(--tf-ink-2)}.tf-cc-chip.is-unknown{border-color:var(--tf-nodata);background:var(--tf-nodata-tint);color:var(--tf-ink-2)}.tf-cc-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:flex-start}.tf-cc-actions button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-cc-actions button:hover:not(:disabled){background:var(--tf-surface-2)}.tf-cc-actions button:disabled{opacity:.45;cursor:not-allowed}.tf-cc-actions .tf-cc-delete{border-color:var(--tf-bad-line);color:var(--tf-bad-ink)}.tf-cc-rolenote{margin:8px 0 0;max-width:88ch;color:var(--tf-ink-2);font-size:12px;line-height:1.5}.tf-cc-rolenote strong{color:var(--tf-bad-ink);font-weight:600}.tf-cc-caution{display:flex;align-items:flex-start;gap:7px;margin:8px 0 0;padding:8px 10px;border:1px solid var(--tf-warn-line);border-radius:6px;background:var(--tf-warn-tint);color:var(--tf-warn-ink);font-size:12px;line-height:1.5;max-width:88ch}.tf-cc-error{margin:8px 0 0;padding:8px 10px;border:1px solid var(--tf-bad-line);border-radius:6px;background:var(--tf-bad-bg);color:var(--tf-bad-ink);font-size:12.5px;line-height:1.5;max-width:88ch}.tf-cc-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-cc-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tf-cc-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-cc-form>header button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-cc-form-lede{margin:0 0 12px;max-width:72ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-cc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.tf-cc-grid label{display:flex;flex-direction:column;gap:4px}.tf-cc-grid label.is-wide{grid-column:1 / -1}.tf-cc-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-cc-grid input,.tf-cc-grid select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:13px}.tf-cc-grid .tf-cc-mono{font-family:var(--tf-mono)}.tf-cc-grid label.tf-cc-check{flex-direction:row;align-items:center;gap:8px}.tf-cc-grid label.tf-cc-check>span{text-transform:none;letter-spacing:0;font-size:12.5px;color:var(--tf-ink)}.tf-cc-grid label.tf-cc-check input{width:16px;height:16px}.tf-cc-preview{display:flex;flex-direction:column;gap:4px;margin-top:14px;padding:11px 13px;border:1px solid var(--tf-accent-tint);border-radius:var(--tf-r-md);background:var(--tf-surface-3)}.tf-cc-preview-head{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-cc-preview strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-cc-preview-why{color:var(--tf-ink-2);font-size:12px;line-height:1.5;max-width:84ch}.tf-cc-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-cc-form>footer button{padding:7px 14px;border:1px solid var(--tf-line-strong);border-radius:5px;background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.tf-cc-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-cc-hint{color:var(--tf-ink-3);font-size:12px;line-height:1.5;max-width:62ch}.tf-mlm{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-mlm-head{margin-bottom:18px}.tf-mlm-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-mlm-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-mlm-head p{margin:0;max-width:72ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-mlm-role{display:flex;gap:6px;align-items:center;margin:0 0 16px;max-width:80ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-mlm-lede{margin:0 0 12px;max-width:82ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-mlm-note{margin:8px 0 0;max-width:82ch;color:var(--tf-ink-3);font-size:12px;line-height:1.55}.tf-mlm-error{margin:8px 0 0;max-width:82ch;color:var(--tf-bad-ink);font-size:12.5px;line-height:1.5}.tf-mlm-unknown{color:var(--tf-ink-3);font-style:italic}.tf-mlm-label{display:block;color:var(--tf-ink-3);font-size:10.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}.tf-mlm-meta{color:var(--tf-ink-3);font-size:12px}.tf-mlm-fact em{font-style:normal;color:var(--tf-ink-3)}.tf-mlm-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:3px;border:1px solid var(--tf-line);background:var(--tf-surface-3);color:var(--tf-ink-2);font-size:10.5px;font-weight:600;letter-spacing:.03em;white-space:nowrap}.tf-mlm-chip.is-ok{border-color:var(--tf-ok-line);background:var(--tf-ok-tint);color:var(--tf-ok-ink)}.tf-mlm-chip.is-warn{border-color:var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-mlm-chip.is-bad{border-color:var(--tf-bad-line);background:var(--tf-bad-tint);color:var(--tf-bad-ink)}.tf-mlm-chip.is-neutral{border-color:var(--tf-line-strong);background:var(--tf-surface-2)}.tf-mlm-chip.is-unknown{border-color:var(--tf-nodata);background:var(--tf-nodata-tint);color:var(--tf-ink-2);font-weight:500;font-style:italic;letter-spacing:0}.tf-mlm-runtime{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:22px}.tf-mlm-runtime>header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:8px}.tf-mlm-runtime h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-mlm-company{display:flex;flex-direction:column;gap:4px}.tf-mlm-company>span{color:var(--tf-ink-3);font-size:10.5px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-mlm-company select{padding:6px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-mlm-runtime-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:12px}.tf-mlm-runtime-grid>div{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.tf-mlm-runtime-grid strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-mlm-registry>header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:8px}.tf-mlm-registry h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-mlm-toolbar{display:flex;gap:10px;align-items:flex-end}.tf-mlm-filter{display:flex;flex-direction:column;gap:4px}.tf-mlm-filter>span{color:var(--tf-ink-3);font-size:10.5px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-mlm-filter select{padding:6px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-mlm-toolbar button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-mlm-toolbar button:hover{background:var(--tf-surface-2)}.tf-mlm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-mlm-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface-2);padding:12px 14px}.tf-mlm-main{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.tf-mlm-id{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:5px}.tf-mlm-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-mlm-chips{display:flex;gap:6px;flex-wrap:wrap}.tf-mlm-dates{flex:0 1 240px;display:flex;flex-direction:column;gap:3px;color:var(--tf-ink-2);font-size:12px}.tf-mlm-actions{flex:0 0 auto;display:flex;gap:6px;align-items:flex-start}.tf-mlm-actions button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-mlm-actions button:hover:not(:disabled){background:var(--tf-surface-3)}.tf-mlm-actions button:disabled{opacity:.45;cursor:not-allowed}.tf-mlm-artifact{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px solid var(--tf-line-2);font-size:11.5px}.tf-mlm-artifact code{font-family:var(--tf-mono);color:var(--tf-ink-2);word-break:break-all}.tf-mlm-sha{color:var(--tf-ink-3)}.tf-mlm-metrics{color:var(--tf-ink-3);font-size:11px;word-break:break-all}.tf-mlm-gates{list-style:none;margin:10px 0 0;padding:0;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);overflow:hidden}.tf-mlm-gates li{display:grid;grid-template-columns:92px minmax(0,180px) minmax(0,1fr);gap:10px;align-items:baseline;padding:7px 12px;border-bottom:1px solid var(--tf-line-2);font-size:11.5px;background:var(--tf-surface)}.tf-mlm-gates li:last-child{border-bottom:0}.tf-mlm-gate-verdict{font-weight:600;letter-spacing:.03em}.tf-mlm-gate-name{color:var(--tf-ink-2);font-family:var(--tf-mono);word-break:break-all}.tf-mlm-gate-detail{color:var(--tf-ink-3);word-break:break-word}.tf-mlm-gates li.is-ok{box-shadow:inset 3px 0 0 var(--tf-ok)}.tf-mlm-gates li.is-ok .tf-mlm-gate-verdict{color:var(--tf-ok-ink)}.tf-mlm-gates li.is-bad{box-shadow:inset 3px 0 0 var(--tf-bad);background:var(--tf-bad-tint)}.tf-mlm-gates li.is-bad .tf-mlm-gate-verdict{color:var(--tf-bad-ink)}.tf-mlm-gates li.is-unknown{box-shadow:inset 3px 0 0 var(--tf-nodata);background:var(--tf-nodata-tint)}.tf-mlm-gates li.is-unknown .tf-mlm-gate-verdict{color:var(--tf-ink-2);font-style:italic;font-weight:500}@media (max-width: 720px){.tf-mlm-gates li{grid-template-columns:1fr;gap:2px}}.tf-mlm-activate{border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-mlm-rollback{color:var(--tf-warn-ink);border-color:var(--tf-warn-line)}.tf-mlm-confirm{margin:8px 0 0;padding:9px 11px;font-size:12px;line-height:1.5;display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--tf-bad-ink);background:var(--tf-bad-bg);border:1px solid var(--tf-bad-line);border-radius:var(--tf-r-md)}.tf-mlm-confirm button{padding:4px 10px;font-size:11.5px;font-weight:600;cursor:pointer;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink)}.tf-mlm-govern{margin:6px 0 0;font-size:12px}.tf-mlm-govern.is-ok{color:var(--tf-ok-ink)}.tf-mlm-govern.is-bad{color:var(--tf-bad-ink)}.tf-live{display:inline-flex;align-items:center;gap:7px;margin:0;font-family:var(--tf-sans);font-size:11.5px;color:var(--tf-ink-3);font-variant-numeric:tabular-nums}.tf-live-dot{width:7px;height:7px;border-radius:50%;background:var(--tf-ok);flex:none}@media (prefers-reduced-motion: no-preference){.tf-live-dot{animation:tf-live-pulse 2.4s ease-in-out infinite}@keyframes tf-live-pulse{0%,to{opacity:1}50%{opacity:.35}}}.tf-live.is-stale{color:var(--tf-warn-ink);background:var(--tf-warn-bg);border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm);padding:4px 9px;flex-wrap:wrap}.tf-live.is-stale .tf-live-dot{background:var(--tf-warn);animation:none}.tf-live-why{color:var(--tf-ink-3)}.tf-live.is-stale button{border:1px solid var(--tf-warn-line);background:var(--tf-surface);color:var(--tf-warn-ink);border-radius:var(--tf-r-sm);padding:2px 8px;font-size:11px;cursor:pointer}.tf-live.is-stale button:hover{background:var(--tf-surface-2)}.tf-pops{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-pops-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:16px}.tf-pops-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-pops-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-pops-head p{margin:0;max-width:78ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-pops-refresh{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-pops-refresh:hover{background:var(--tf-surface-2)}.tf-pops-role{display:flex;gap:6px;align-items:center;margin:0 0 16px;max-width:84ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-pops-unknown{color:var(--tf-ink-3);font-style:italic;font-weight:400}.tf-pops-unknown-block{margin:0;max-width:82ch;color:var(--tf-ink-2);font-size:12.5px;font-style:italic;line-height:1.55}.tf-pops-pending{color:var(--tf-ink-3);font-style:italic;font-weight:400;font-size:13px}.tf-pops-quiet{margin:0;max-width:82ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-pops-note{margin:10px 0 0;max-width:84ch;color:var(--tf-ink-3);font-size:12px;line-height:1.55}.tf-pops-note code{font-family:var(--tf-mono);font-size:11.5px}.tf-pops-alarm{margin:0;max-width:84ch;padding:9px 11px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-bad-line);background:var(--tf-bad-tint);color:var(--tf-bad-ink);font-size:12.5px;line-height:1.55}.tf-pops-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:3px;border:1px solid var(--tf-line);background:var(--tf-surface-3);color:var(--tf-ink-2);font-size:10.5px;font-weight:600;letter-spacing:.03em;white-space:nowrap}.tf-pops-chip.is-ok{border-color:var(--tf-ok-line);background:var(--tf-ok-tint);color:var(--tf-ok-ink)}.tf-pops-chip.is-warn{border-color:var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-pops-chip.is-bad{border-color:var(--tf-bad-line);background:var(--tf-bad-tint);color:var(--tf-bad-ink)}.tf-pops-chip.is-neutral{border-color:var(--tf-line-strong);background:var(--tf-surface-2)}.tf-pops-chip.is-unknown{border-color:var(--tf-nodata);background:var(--tf-nodata-tint);color:var(--tf-ink-2);font-weight:500;font-style:italic;letter-spacing:0}.tf-pops-kpis{display:grid;grid-template-columns:1.4fr repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.tf-pops-kpi{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);padding:12px 14px;min-width:0}.tf-pops-kpi.is-hero{border-color:var(--tf-accent);background:var(--tf-accent-tint)}.tf-pops-kpi-label{display:block;color:var(--tf-ink-3);font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.tf-pops-kpi-value{display:block;margin-top:3px;font-size:22px;font-weight:650;letter-spacing:-.02em;color:var(--tf-ink);word-break:break-word}.tf-pops-kpi-note{display:block;margin-top:3px;color:var(--tf-ink-3);font-size:11px;line-height:1.4}.tf-pops-kpi.is-ok .tf-pops-kpi-value{color:var(--tf-ok-ink)}.tf-pops-kpi.is-warn .tf-pops-kpi-value{color:var(--tf-warn-ink)}.tf-pops-kpi.is-bad .tf-pops-kpi-value{color:var(--tf-bad-ink)}.tf-pops-kpi.is-unknown .tf-pops-kpi-value{color:var(--tf-ink-2);font-style:italic;font-weight:500}.tf-pops-kpi.is-ok{border-color:var(--tf-ok-line);background:var(--tf-ok-tint)}.tf-pops-kpi.is-warn{border-color:var(--tf-warn-line);background:var(--tf-warn-tint)}.tf-pops-kpi.is-bad{border-color:var(--tf-bad-line);background:var(--tf-bad-tint)}.tf-pops-kpi.is-unknown{border-color:var(--tf-nodata);background:var(--tf-nodata-tint)}.tf-pops-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.3fr) minmax(300px,.9fr);gap:12px;align-items:start}.tf-pops-panel{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);overflow:hidden}.tf-pops-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--tf-line);background:var(--tf-surface-2)}.tf-pops-panel-head h2{margin:0;font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-pops-panel-head>span{color:var(--tf-ink-3);font-size:11.5px}.tf-pops-sec{padding:13px 14px;border-bottom:1px solid var(--tf-line-2)}.tf-pops-sec:last-child{border-bottom:0}.tf-pops-sec h3{margin:0 0 10px;color:var(--tf-ink-2);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.tf-pops-svcs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-pops-svc{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:baseline;padding-bottom:8px;border-bottom:1px dashed var(--tf-line)}.tf-pops-svc:last-child{border-bottom:0;padding-bottom:0}.tf-pops-svc-id{min-width:0;display:flex;flex-direction:column;gap:2px}.tf-pops-svc-id strong{font-size:13px;font-weight:600;color:var(--tf-ink)}.tf-pops-svc-chips{grid-column:1;display:flex;gap:5px;flex-wrap:wrap}.tf-pops-svc-age{grid-row:1;grid-column:2;color:var(--tf-ink-3);font-size:11.5px;white-space:nowrap}.tf-pops-meta{color:var(--tf-ink-3);font-size:11.5px;word-break:break-all}.tf-pops-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.tf-pops-stat{border-radius:var(--tf-r-sm);background:var(--tf-surface-3);border:1px solid var(--tf-line-2);padding:8px 10px;min-width:0}.tf-pops-stat.is-wide{grid-column:1 / -1;background:var(--tf-accent-tint);border-color:var(--tf-accent)}.tf-pops-stat>span{display:block;color:var(--tf-ink-3);font-size:9.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.tf-pops-stat>b{display:block;margin-top:2px;font-size:16px;font-weight:620;color:var(--tf-ink)}.tf-pops-stat>small{display:block;margin-top:2px;color:var(--tf-ink-3);font-size:10.5px;line-height:1.4}.tf-pops-protocols{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2px 12px}.tf-pops-protocols li{display:flex;justify-content:space-between;gap:8px;align-items:baseline;padding:3px 0;border-bottom:1px dotted var(--tf-line-2);font-size:11.5px;color:var(--tf-ink-2)}.tf-pops-protocols b{color:var(--tf-ink);font-weight:600}.tf-pops-issues{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-pops-issues li{padding:7px 10px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink);font-size:12px;line-height:1.5}.tf-pops-tablewrap{max-height:560px;overflow:auto;border:1px solid var(--tf-line-2);border-radius:var(--tf-r-sm)}.tf-pops-table{width:100%;border-collapse:collapse;font-size:12px}.tf-pops-table th,.tf-pops-table td{padding:7px 10px;border-bottom:1px solid var(--tf-line-2);text-align:left}.tf-pops-table thead th{position:sticky;top:0;z-index:1;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--tf-line)}.tf-pops-table tbody th{font-weight:500;color:var(--tf-ink)}.tf-pops-table .num{text-align:right}.tf-pops-table td.is-attention{color:var(--tf-bad-ink);font-weight:600}.tf-pops-table tbody tr:last-child th,.tf-pops-table tbody tr:last-child td{border-bottom:0}.tf-pops-tenant{display:block}.tf-pops-alarms{list-style:none;margin:0;padding:0;max-height:360px;overflow:auto}.tf-pops-alarm-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:9px;align-items:start;padding:8px 0;border-bottom:1px solid var(--tf-line-2)}.tf-pops-alarm-row:last-child{border-bottom:0}.tf-pops-alarm-row p{margin:1px 0 0;color:var(--tf-ink-2);font-size:11.5px;word-break:break-word}.tf-pops-alarm-row strong{display:block;font-size:12px;font-weight:600;color:var(--tf-ink)}.tf-pops-alarm-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--tf-bad)}.tf-pops-alarm-tenant{display:block;color:var(--tf-accent-ink);font-size:9.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.tf-pops-alarm-time{color:var(--tf-ink-3);font-size:10.5px;white-space:nowrap}@media (max-width: 1180px){.tf-pops-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.tf-pops-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-pops-right{grid-column:1 / -1}}@media (max-width: 760px){.tf-pops{padding:16px 14px 32px}.tf-pops-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-pops-layout,.tf-pops-svc{grid-template-columns:minmax(0,1fr)}.tf-pops-svc-age{grid-row:auto;grid-column:1}}.tf-pops-freshness{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-sc{padding:20px 24px 40px;overflow-y:auto;height:100%;position:relative}.tf-sc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:14px}.tf-sc-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-sc-head h1{display:flex;align-items:center;gap:8px;margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-sc-head h1 svg{color:var(--tf-accent-deep)}.tf-sc-head p{margin:0;max-width:78ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-sc-lock{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:12.5px}.tf-sc-lock.is-open{border-color:var(--tf-accent-weak);background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-sc-strip,.tf-sc-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:14px}.tf-sc-tile{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r-md);padding:10px 12px}.tf-sc-tile-label{display:block;color:var(--tf-ink-3);font-size:11.5px}.tf-sc-tile-value{display:block;margin-top:3px;font-size:18px;font-weight:600;color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-sc-tile-note{display:block;margin-top:2px;color:var(--tf-ink-3);font-size:11.5px}.tf-sc-tabs{display:flex;flex-wrap:wrap;gap:2px;border-bottom:1px solid var(--tf-line);margin-bottom:14px}.tf-sc-tab{border:0;background:none;padding:9px 12px;font:inherit;font-size:13px;color:var(--tf-ink-2);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer}.tf-sc-tab:hover{color:var(--tf-ink)}.tf-sc-tab.is-active{color:var(--tf-accent-deep);border-bottom-color:var(--tf-accent-deep);font-weight:600}.tf-sc-h3{margin:18px 0 8px;font-size:13px;font-weight:600;color:var(--tf-ink)}.tf-sc-table{width:100%;border-collapse:collapse;font-size:12.5px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r-md);overflow:hidden;margin-bottom:12px}.tf-sc-table th{text-align:left;color:var(--tf-ink-3);font-weight:500;font-size:11.5px;padding:8px 10px;border-bottom:1px solid var(--tf-line);background:var(--tf-surface-2)}.tf-sc-table td{padding:8px 10px;border-bottom:1px solid var(--tf-line-soft);color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-sc-table tr:last-child td{border-bottom:0}.tf-sc-actions{text-align:right}.tf-sc-feed td{white-space:nowrap}.tf-sc-hex{font-family:var(--tf-mono);font-size:11px;color:var(--tf-ink-2);white-space:normal;word-break:break-all}.tf-sc-chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:600;border:1px solid transparent}.tf-sc-chip.is-ok{background:var(--tf-ok-bg);color:var(--tf-ok-ink);border-color:var(--tf-ok-line)}.tf-sc-chip.is-warn{background:var(--tf-warn-bg);color:var(--tf-warn-ink);border-color:var(--tf-warn-line)}.tf-sc-chip.is-bad{background:var(--tf-bad-bg);color:var(--tf-bad-ink);border-color:var(--tf-bad-line)}.tf-sc-nr{font-style:italic;font-weight:400;color:var(--tf-ink-3)}.tf-sc-muted{color:var(--tf-ink-3);font-size:12.5px;margin:0 0 10px}.tf-sc-failure{display:flex;align-items:center;gap:6px;margin:0 0 10px;color:var(--tf-bad-ink);font-size:12.5px}.tf-sc-stale{display:flex;align-items:center;gap:6px;margin:0 0 10px;padding:8px 12px;border-radius:var(--tf-r-sm);background:var(--tf-warn-bg);color:var(--tf-warn-ink);border:1px solid var(--tf-warn-line);font-size:12.5px}.tf-sc-errors{margin:0;padding-left:18px;color:var(--tf-ink-2);font-size:12px}.tf-sc-kv{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:0 0 12px;font-size:12.5px}.tf-sc-kv>div{display:contents}.tf-sc-kv dt{color:var(--tf-ink-3)}.tf-sc-kv dd{margin:0;color:var(--tf-ink);word-break:break-word}.tf-sc-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.tf-sc-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.tf-sc-form label,.tf-sc-password{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--tf-ink-3)}.tf-sc-form input,.tf-sc-form select,.tf-sc-password input{height:34px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:13px;min-width:180px}.tf-sc-btn{height:32px;padding:0 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-sc-btn:hover:not(:disabled){background:var(--tf-surface-2)}.tf-sc-btn:disabled{opacity:.5;cursor:default}.tf-sc-btn.is-primary{background:var(--tf-accent-deep);border-color:var(--tf-accent-deep);color:var(--tf-on-accent)}.tf-sc-btn.is-danger{background:var(--tf-bad);border-color:var(--tf-bad);color:var(--tf-on-accent)}.tf-sc-btn.is-danger-outline{border-color:var(--tf-bad-line);color:var(--tf-bad-ink)}.tf-sc-confirm{position:sticky;bottom:0;margin-top:16px;padding:14px 16px;border:1px solid var(--tf-line-strong);border-radius:var(--tf-r-md);background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-sc-confirm p{margin:4px 0 10px;color:var(--tf-ink-2);font-size:12.5px}.tf-sc-confirm-row{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.tf-sc-rel-note{margin:0 0 8px;font-size:12.5px;color:var(--tf-ink-2)}.tf-sc-rel-actions{display:flex;gap:8px;margin:4px 0 12px}.tf-sc-rel-why{display:block;color:var(--tf-bad-ink);font-size:11.5px}.tf-alr{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-alr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:14px}.tf-alr-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-alr-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-alr-head p{margin:0;max-width:78ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-alr-refresh{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer;flex:none}.tf-alr-refresh:hover{background:var(--tf-surface-2)}.tf-alr-counts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 12px;font-size:12.5px;color:var(--tf-ink-2)}.tf-alr-count,.tf-alr-floor{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--tf-line);border-radius:999px;background:var(--tf-surface)}.tf-alr-count b,.tf-alr-floor b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-alr-count em{color:var(--tf-ink-3);font-style:italic}.tf-alr-floor{color:var(--tf-ink-3)}.tf-alr-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--tf-line);border-radius:999px;background:var(--tf-surface);color:var(--tf-ink-2);font:inherit;font-size:12px;cursor:pointer}.tf-alr-chip:hover{background:var(--tf-surface-2)}.tf-alr-chip.is-active{border-color:var(--tf-accent);background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-weight:600}.tf-alr-chip-count{color:var(--tf-ink-3);font-size:11px;font-variant-numeric:tabular-nums}.tf-alr-chip.is-active .tf-alr-chip-count{color:var(--tf-accent-ink)}.tf-alr-group{display:inline-flex;align-items:center;gap:8px}.tf-alr-group>span{color:var(--tf-ink-3);font-size:10.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-alr-group select{padding:5px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-alr-role{display:flex;gap:6px;align-items:center;margin:0 0 14px;max-width:80ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-alr-group-sec+.tf-alr-group-sec{margin-top:14px}.tf-alr-group-head{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:12.5px;font-weight:600;color:var(--tf-ink-2)}.tf-alr-group-count{padding:1px 7px;border:1px solid var(--tf-line);border-radius:999px;background:var(--tf-surface-3);color:var(--tf-ink-3);font-size:11px;font-weight:500;font-variant-numeric:tabular-nums}.tf-alr-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-alr-row{display:flex;align-items:stretch;gap:10px;padding:9px 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface-2)}.tf-alr-row.is-open{background:var(--tf-surface);border-color:var(--tf-line-strong)}.tf-alr-rail{flex:none;width:3px;border-radius:3px;background:var(--tf-nodata)}.tf-alr-row.is-high .tf-alr-rail{background:var(--tf-bad)}.tf-alr-row.is-medium .tf-alr-rail{background:var(--tf-warn)}.tf-alr-row.is-low .tf-alr-rail{background:var(--tf-accent)}.tf-alr-row.is-unknown .tf-alr-rail{background:var(--tf-nodata)}.tf-alr-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}.tf-alr-line{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.tf-alr-type{font-family:var(--tf-mono);font-size:12px;font-weight:600;color:var(--tf-ink)}.tf-alr-device{font-size:13px;font-weight:550;color:var(--tf-ink)}.tf-alr-vendor{padding:1px 7px;border:1px solid var(--tf-line);border-radius:3px;background:var(--tf-surface-3);color:var(--tf-ink-3);font-size:10.5px}.tf-alr-sev{display:inline-flex;align-items:center;padding:2px 8px;border-radius:3px;border:1px solid var(--tf-line);background:var(--tf-surface-3);color:var(--tf-ink-2);font-size:10.5px;font-weight:600;letter-spacing:.03em;white-space:nowrap}.tf-alr-sev.is-high{border-color:var(--tf-bad-line);background:var(--tf-bad-tint);color:var(--tf-bad-ink)}.tf-alr-sev.is-medium{border-color:var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-alr-sev.is-low{border-color:var(--tf-line-strong);background:var(--tf-surface-3);color:var(--tf-ink-2)}.tf-alr-sev.is-unknown{border-color:var(--tf-nodata);background:var(--tf-nodata-tint);color:var(--tf-ink-2);font-weight:500;font-style:italic;letter-spacing:0}.tf-alr-when{margin-left:auto;display:flex;align-items:baseline;gap:8px;white-space:nowrap;font-variant-numeric:tabular-nums}.tf-alr-when b{font-size:12px;font-weight:600;color:var(--tf-ink-2)}.tf-alr-when small{font-size:11px;color:var(--tf-ink-3)}.tf-alr-when.is-unknown{color:var(--tf-ink-3);font-style:italic;font-size:12px}.tf-alr-detail{display:flex;gap:10px;flex-wrap:wrap;align-items:baseline;font-size:12px;color:var(--tf-ink-3)}.tf-alr-place{color:var(--tf-ink-2)}.tf-alr-measure b{color:var(--tf-ink-2);font-variant-numeric:tabular-nums}.tf-alr-measure em{font-style:italic;color:var(--tf-ink-3)}.tf-alr-attrs{font-family:var(--tf-mono);font-size:11px;word-break:break-word}.tf-alr-evidence-more{padding:3px 8px;border:1px dashed var(--tf-line);border-radius:999px;background:transparent;color:var(--tf-ink-3);font-size:11px;cursor:pointer}.tf-alr-evidence-more:hover{border-color:var(--tf-accent);color:var(--tf-accent-strong)}.tf-alr-evidence-none{padding:3px 8px;color:var(--tf-ink-3);font-size:11px;font-style:italic}.tf-alr-evidence-trigger{padding:3px 8px;border:1px solid var(--tf-line);border-radius:999px;background:var(--tf-surface);color:var(--tf-accent-ink);font:inherit;font-size:11px;cursor:pointer}.tf-alr-evidence-trigger:hover,.tf-alr-evidence-trigger:focus-visible{border-color:var(--tf-accent);background:var(--tf-accent-tint)}.tf-alr-evidence-thumb{width:42px;height:32px;padding:0;overflow:hidden;border:1px solid var(--tf-line);border-radius:4px;background:var(--tf-surface);cursor:pointer}.tf-alr-evidence-thumb img{display:block;width:100%;height:100%;object-fit:cover}.tf-alr-evidence-dialog{position:fixed;top:8%;right:8%;bottom:8%;left:8%;z-index:40;display:grid;place-items:center;padding:24px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-alr-evidence-dialog img,.tf-alr-evidence-dialog video{max-width:100%;max-height:100%;object-fit:contain}.tf-alr-evidence-clip{display:grid;place-items:center;color:var(--tf-on-accent);background:var(--tf-accent)}.tf-alr-evidence-close{position:absolute;top:10px;right:10px;padding:7px 10px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);cursor:pointer}.tf-alr-evidence-close:focus-visible,.tf-alr-evidence-thumb:focus-visible{outline:2px solid var(--tf-accent);outline-offset:2px}.tf-alr-unknown{color:var(--tf-ink-3);font-style:italic;font-size:12px}.tf-alr-error{margin:4px 0 0;max-width:80ch;color:var(--tf-bad-ink);font-size:12px;line-height:1.5}.tf-alr-action{flex:none;display:flex;align-items:center}.tf-alr-action button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-alr-action button:hover:not(:disabled){background:var(--tf-surface-3)}.tf-alr-action button:disabled{opacity:.45;cursor:not-allowed}.tf-alr-ackd{color:var(--tf-ok-ink);font-size:11.5px;font-weight:600;white-space:nowrap}.tf-alr-ackd.is-pending{color:var(--tf-ink-3);font-weight:500;font-style:italic}.tf-alr-nogate{color:var(--tf-ink-3);font-size:11.5px;white-space:nowrap}.tf-alr-note{margin:16px 0 0;max-width:82ch;color:var(--tf-ink-3);font-size:12px;line-height:1.55}@media (max-width: 760px){.tf-alr-row{flex-wrap:wrap}.tf-alr-when{margin-left:0}.tf-alr-action{width:100%;justify-content:flex-end}}.tf-alr-morevehicles select{font-size:11.5px;padding:4px 8px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-alr-vis-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.tf-alr-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end;gap:12px 14px;margin:0 0 16px}.tf-alr-select{display:flex;flex-direction:column;gap:6px;min-width:0}.tf-alr-select>span{font:700 10px var(--tf-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-alr-select select,.tf-alr-select input{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface);color:var(--tf-ink);font:600 13px var(--tf-sans);-webkit-appearance:none;-moz-appearance:none;appearance:none}.tf-alr-select select{padding-right:28px;cursor:pointer}.tf-alr-select select{background-image:linear-gradient(45deg,transparent 50%,var(--tf-ink-3) 50%),linear-gradient(135deg,var(--tf-ink-3) 50%,transparent 50%);background-position:calc(100% - 15px) 15px,calc(100% - 10px) 15px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.tf-alr-select input::placeholder{color:var(--tf-ink-3);font-weight:500}.tf-alr-select select:focus,.tf-alr-select input:focus{outline:none;border-color:var(--tf-accent);box-shadow:0 0 0 3px var(--tf-accent-tint)}.tf-alr-select .tf-alr-unknown{color:var(--tf-ink-3);font-size:11px}.tf-dsv{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-dsv-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:16px}.tf-dsv-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-dsv-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-dsv-head p{margin:0;max-width:78ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-dsv-refresh{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-dsv-refresh:hover:not(:disabled){background:var(--tf-surface-2)}.tf-dsv-refresh:disabled{color:var(--tf-ink-3);cursor:not-allowed}.tf-dsv-role{display:flex;gap:6px;align-items:flex-start;margin:0 0 16px;max-width:88ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-dsv-unknown{color:var(--tf-ink-3);font-style:italic;font-weight:400}.tf-dsv-lede{margin:0 0 12px;max-width:88ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-dsv-note{margin:10px 0 0;max-width:88ch;color:var(--tf-ink-3);font-size:12px;line-height:1.55}.tf-dsv-hint{display:block;margin-top:2px;color:var(--tf-ink-3);font-size:11px;font-style:italic;line-height:1.4}.tf-dsv-warn{margin:0 0 12px;max-width:88ch;padding:9px 11px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink);font-size:12.5px;line-height:1.55}.tf-dsv-error{margin:10px 0 0;max-width:88ch;padding:9px 11px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-bad-line);background:var(--tf-bad-tint);color:var(--tf-bad-ink);font-size:12.5px;line-height:1.55}.tf-dsv-error-inline{color:var(--tf-bad-ink);font-size:11.5px;line-height:1.4}.tf-dsv-ok{color:var(--tf-ok-ink);font-size:12.5px}.tf-dsv-vis-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.tf-dsv-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:3px;border:1px solid var(--tf-line);background:var(--tf-surface-3);color:var(--tf-ink-2);font-size:10.5px;font-weight:600;letter-spacing:.03em;white-space:nowrap}.tf-dsv-chip.is-ok{border-color:var(--tf-ok-line);background:var(--tf-ok-tint);color:var(--tf-ok-ink)}.tf-dsv-chip.is-warn{border-color:var(--tf-warn-line);background:var(--tf-warn-tint);color:var(--tf-warn-ink)}.tf-dsv-chip.is-bad{border-color:var(--tf-bad-line);background:var(--tf-bad-tint);color:var(--tf-bad-ink)}.tf-dsv-chip.is-mute{border-color:var(--tf-line-strong);background:var(--tf-surface-2)}.tf-dsv-chip.is-unknown{border-color:var(--tf-nodata);background:var(--tf-nodata-tint);color:var(--tf-ink-2);font-weight:500;font-style:italic;letter-spacing:0}.tf-dsv-body{display:flex;flex-direction:column;gap:14px}.tf-dsv-card{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);padding:16px 18px;box-shadow:var(--tf-shadow-sm)}.tf-dsv-card h2{margin:0 0 6px;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-dsv-subhead{margin:16px 0 6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-dsv-group+.tf-dsv-group{border-top:1px solid var(--tf-line-2)}.tf-dsv-picker{margin-bottom:14px}.tf-dsv-pickrow{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);padding:14px 16px}.tf-dsv-pickcount{flex:1 1 100%;margin:0;color:var(--tf-ink-3);font-size:11.5px}.tf-dsv-fields{display:flex;flex-wrap:wrap;gap:12px 16px}.tf-dsv-field{display:flex;flex-direction:column;gap:4px;min-width:200px}.tf-dsv-field.is-wide{min-width:320px;flex:1 1 320px}.tf-dsv-field>span{color:var(--tf-ink-3);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.tf-dsv-field>small{max-width:46ch;color:var(--tf-ink-3);font-size:11px;line-height:1.45}.tf-dsv-field input[type=text],.tf-dsv-field input[type=email],.tf-dsv-field input[type=number],.tf-dsv-field input[type=search],.tf-dsv-field input:not([type]),.tf-dsv-field select{padding:6px 8px;border:1px solid var(--tf-line-strong);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-dsv-field input:disabled,.tf-dsv-field select:disabled,.tf-dsv-table input:disabled,.tf-dsv-table select:disabled{background:var(--tf-surface-2);color:var(--tf-ink-3);cursor:not-allowed}.tf-dsv-field input[readonly]{background:var(--tf-surface-2);color:var(--tf-ink-2)}.tf-dsv-field.is-check{flex-direction:row;align-items:center;gap:8px;min-width:0}.tf-dsv-field.is-check>span{text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:500;color:var(--tf-ink-2)}.tf-dsv-tablewrap{overflow-x:auto;border:1px solid var(--tf-line-2);border-radius:var(--tf-r-sm)}.tf-dsv-table{width:100%;border-collapse:collapse;font-size:12.5px}.tf-dsv-table th[scope=col]{text-align:left;padding:8px 10px;color:var(--tf-ink-3);font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:var(--tf-surface-2);border-bottom:1px solid var(--tf-line);white-space:nowrap}.tf-dsv-table th[scope=row]{text-align:left;padding:8px 10px;color:var(--tf-ink);font-weight:500;white-space:nowrap}.tf-dsv-table td{padding:6px 10px;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-2);vertical-align:top}.tf-dsv-table th[scope=row]{border-top:1px solid var(--tf-line-2)}.tf-dsv-table tbody tr:hover td,.tf-dsv-table tbody tr:hover th[scope=row]{background:var(--tf-surface-3)}.tf-dsv-table td.tf-dsv-chk,.tf-dsv-table th.tf-dsv-chk{text-align:center}.tf-dsv-table select{padding:4px 6px;border:1px solid var(--tf-line-strong);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12px}.tf-dsv-thr{display:inline-flex;margin-right:6px}.tf-dsv-thr input{width:84px;padding:4px 6px;border:1px solid var(--tf-line-strong);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12px}.tf-dsv-savebar{position:sticky;bottom:0;z-index:1}.tf-dsv-saverow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px}.tf-dsv-save{padding:7px 14px;border:1px solid var(--tf-accent-strong);border-radius:var(--tf-r-sm);background:var(--tf-accent);color:var(--tf-on-accent);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.tf-dsv-save:hover:not(:disabled){background:var(--tf-accent-strong)}.tf-dsv-save:disabled{border-color:var(--tf-line-strong);background:var(--tf-surface-2);color:var(--tf-ink-3);cursor:not-allowed}.tf-dsv-sends{margin-top:12px;padding:10px 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-dsv-sendlist{margin:0;padding-left:18px;color:var(--tf-ink-2);font-size:12px;line-height:1.6}.tf-dsv-sendlist code{font-family:var(--tf-mono);font-size:11.5px}.tf-dsv-snapshot{display:grid;grid-template-columns:minmax(160px,240px) 1fr;gap:6px 16px;margin:0;font-size:12.5px}.tf-dsv-snapshot dt{color:var(--tf-ink-3)}.tf-dsv-snapshot dd{margin:0;color:var(--tf-ink)}.tf-usr{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-usr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px}.tf-usr-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-usr-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-usr-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-usr-head-actions{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto}.tf-usr-new{padding:7px 14px;border:1px solid var(--tf-line-strong, var(--tf-line));border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-usr-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-usr-new:disabled{opacity:.45;cursor:not-allowed}.tf-usr-actor{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 16px;color:var(--tf-ink-2);font-size:12.5px}.tf-usr-drivernote{margin:0 0 12px;padding:9px 12px;border:1px solid var(--tf-line);border-radius:6px;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:12.5px;line-height:1.5;max-width:78ch}.tf-usr-choose{color:var(--tf-ink-2);font-size:13px;padding:24px 0}.tf-usr-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tf-usr-row{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:12px 14px}.tf-usr-row.is-readonly{background:transparent}.tf-usr-main{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.tf-usr-id{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:3px}.tf-usr-id strong{font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-usr-meta{color:var(--tf-ink-3);font-size:12px}.tf-usr-seen-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tf-usr-chip{display:inline-flex;align-items:center;padding:2px 7px;border-radius:3px;border:1px solid var(--tf-line);font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--tf-ink-2)}.tf-usr-chip.is-on{border-color:var(--tf-ok-line, var(--tf-line));color:var(--tf-ok-ink, var(--tf-ink-2))}.tf-usr-chip.is-off{border-color:var(--tf-bad-line, var(--tf-line));color:var(--tf-bad-ink, var(--tf-ink-2))}.tf-usr-chip.is-unknown{border-style:dashed;color:var(--tf-ink-3);text-transform:none;letter-spacing:0;font-weight:500}.tf-usr-seen{color:var(--tf-ink-3);font-size:11.5px}.tf-usr-seen.is-unknown{font-style:italic}.tf-usr-role{display:flex;flex-direction:column;gap:3px;flex:0 0 auto;min-width:150px}.tf-usr-rolename{display:inline-flex;align-items:center;gap:5px;color:var(--tf-ink);font-size:12.5px;font-weight:600}.tf-usr-scopename{color:var(--tf-ink-3);font-size:11.5px}.tf-usr-actions{display:flex;gap:6px;align-items:center;flex:0 0 auto;flex-wrap:wrap}.tf-usr-row button{padding:5px 11px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-usr-row button:disabled{opacity:.45;cursor:not-allowed}.tf-usr-danger{border-color:var(--tf-bad-line, var(--tf-line))!important;color:var(--tf-bad-ink, var(--tf-ink))!important}.tf-usr-readonly{color:var(--tf-ink-3);font-size:11.5px;line-height:1.5;max-width:42ch}.tf-usr-error{margin:8px 0 0;color:var(--tf-bad-ink, var(--tf-ink-2));font-size:12.5px}.tf-usr-hint{margin:0;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-usr-lede{margin:0 0 10px;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-usr-rolenote{margin:12px 0 0;color:var(--tf-ink-2);font-size:12px;line-height:1.5;max-width:70ch}.tf-usr-shape{margin:10px 0 0;color:var(--tf-ink-3);font-size:12px;line-height:1.5;max-width:70ch}.tf-usr-shape.is-bad{color:var(--tf-bad-ink, var(--tf-ink-2))}.tf-usr-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md, 8px);background:var(--tf-surface-2);padding:16px 18px;margin-bottom:16px}.tf-usr-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.tf-usr-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-usr-form>header button,.tf-usr-form>footer button{padding:7px 13px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-usr-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-usr-form>footer{display:flex;gap:12px;align-items:center;margin-top:16px;flex-wrap:wrap}.tf-usr-form>footer .tf-usr-hint{flex:1 1 320px;max-width:62ch}.tf-usr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.tf-usr-grid label,.tf-usr-scope{display:flex;flex-direction:column;gap:4px}.tf-usr-grid label>span,.tf-usr-scope>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-usr-grid input,.tf-usr-scope input,.tf-usr-scope select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:13px}.tf-usr-scope{margin-top:12px;max-width:320px}.tf-usr-sub{margin-top:12px;padding-top:12px;border-top:1px solid var(--tf-line)}.tf-usr-subactions{display:flex;gap:8px;margin-top:14px}.tf-usr-sub button{padding:6px 12px;border:1px solid var(--tf-line);border-radius:5px;background:var(--tf-surface-3, var(--tf-surface-1));color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-usr-sub button:disabled{opacity:.45;cursor:not-allowed}.tf-lifecycle{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-lifecycle>header{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-lifecycle header span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-lifecycle h1{margin:8px 0;font-size:42px}.tf-lifecycle header p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-lifecycle>header>svg{color:var(--tf-accent)}.tf-lifecycle-toolbar,.tf-lifecycle-card{max-width:1320px;margin:0 auto 24px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm)}.tf-lifecycle-toolbar{padding:20px 24px;display:flex;justify-content:space-between;align-items:end;color:var(--tf-ink-2);font-weight:700}.tf-lifecycle-toolbar label,.tf-lifecycle-form label{display:grid;gap:7px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.tf-lifecycle select,.tf-lifecycle input,.tf-lifecycle textarea{padding:12px 14px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface-2);font:inherit;color:var(--tf-ink);text-transform:none;letter-spacing:normal}.tf-lifecycle-card{padding:24px}.tf-lifecycle-card h2{margin:0 0 20px}.tf-lifecycle-form{display:grid;grid-template-columns:1fr 2fr;gap:18px}.tf-lifecycle-form label:nth-child(3){grid-column:1/-1}.tf-lifecycle-form textarea{min-height:70px;resize:vertical}.tf-lifecycle-form button{justify-self:end;grid-column:1/-1;padding:12px 20px;border:0;border-radius:10px;background:var(--tf-accent-strong);color:#fff;font:inherit;font-weight:700}.tf-lifecycle-form button:disabled{opacity:.5}.tf-lifecycle-form small{color:var(--tf-alert);font-size:11px;text-transform:none;letter-spacing:0}.tf-lifecycle-message{padding:12px;border-radius:8px;background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-lifecycle-history{display:grid;gap:10px}.tf-lifecycle-history article{display:grid;grid-template-columns:180px 1fr;gap:6px;padding:14px;border-bottom:1px solid var(--tf-line-2)}.tf-lifecycle-history span,.tf-lifecycle-history small{color:var(--tf-ink-2)}.tf-lifecycle-history small{grid-column:2}@media (max-width:720px){.tf-lifecycle{padding:28px 16px}.tf-lifecycle h1{font-size:32px}.tf-lifecycle-toolbar{display:grid;gap:12px}.tf-lifecycle-form{grid-template-columns:1fr}.tf-lifecycle-form label:nth-child(3){grid-column:auto}.tf-lifecycle-form button{grid-column:auto}.tf-lifecycle-history article{grid-template-columns:1fr}.tf-lifecycle-history small{grid-column:auto}}.tf-custody{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-custody>header{max-width:1320px;margin:0 auto 32px;display:flex;justify-content:space-between}.tf-custody header span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-custody h1{margin:8px 0;font-size:42px}.tf-custody header p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-custody>header>svg{color:var(--tf-accent)}.tf-custody-toolbar,.tf-custody-card{max-width:1320px;margin:0 auto 24px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm)}.tf-custody-toolbar{padding:20px 24px;display:flex;justify-content:space-between;align-items:end;color:var(--tf-ink-2);font-weight:700}.tf-custody label{display:grid;gap:7px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.tf-custody select,.tf-custody input,.tf-custody textarea{padding:12px 14px;border:1px solid var(--tf-line);border-radius:10px;background:var(--tf-surface-2);font:inherit;color:var(--tf-ink);text-transform:none;letter-spacing:normal}.tf-custody-card{padding:24px}.tf-custody-card h2{margin:0 0 20px}.tf-custody-form{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tf-custody-form label:nth-child(4){grid-column:1/3}.tf-custody-form textarea{min-height:70px;resize:vertical}.tf-custody-form button{align-self:end;padding:12px 20px;border:0;border-radius:10px;background:var(--tf-accent-strong);color:#fff;font:inherit;font-weight:700}.tf-custody-form button:disabled{opacity:.5}.tf-custody-message{padding:12px;border-radius:8px;background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-custody-history{display:grid;gap:10px}.tf-custody-history article{display:grid;grid-template-columns:220px 1fr;gap:6px;padding:14px;border-bottom:1px solid var(--tf-line-2)}.tf-custody-history span,.tf-custody-history small{color:var(--tf-ink-2)}.tf-custody-history small{grid-column:2}@media (max-width:720px){.tf-custody{padding:28px 16px}.tf-custody h1{font-size:32px}.tf-custody-toolbar{display:grid;gap:12px}.tf-custody-form{grid-template-columns:1fr}.tf-custody-form label:nth-child(4){grid-column:auto}.tf-custody-history article{grid-template-columns:1fr}.tf-custody-history small{grid-column:auto}}.tf-equipment{padding:32px;max-width:1280px;margin:auto;color:var(--tf-ink)}.tf-equipment header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.tf-equipment header span{color:var(--tf-accent-strong);font-weight:700;letter-spacing:.14em}.tf-equipment h1{font-size:40px;margin:8px 0}.tf-equipment h2{margin:0 0 18px}.tf-equipment header p{color:var(--tf-ink-2);font-size:17px}.tf-equipment-toolbar,.tf-equipment-card{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;padding:22px;box-shadow:var(--tf-shadow-sm);margin-bottom:18px}.tf-equipment-toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px}.tf-equipment-toolbar span{color:var(--tf-ink-3)}.tf-equipment label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:var(--tf-ink-2)}.tf-equipment input,.tf-equipment select,.tf-equipment textarea{border:1px solid var(--tf-line);border-radius:10px;padding:11px;background:var(--tf-surface-2);font:inherit;color:var(--tf-ink)}.tf-equipment textarea{min-height:70px;resize:vertical}.tf-equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tf-equipment-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tf-equipment-form label:last-of-type{grid-column:1/-1}.tf-equipment button{border:0;border-radius:10px;background:var(--tf-accent);color:#fff;padding:12px 16px;font-weight:700;cursor:pointer}.tf-equipment button:disabled{opacity:.5;cursor:not-allowed}.tf-equipment-form button{grid-column:1/-1}.tf-equipment-actions{display:flex;gap:10px;margin-top:14px}.tf-equipment button.is-secondary{background:var(--tf-surface-3);border:1px solid var(--tf-line);color:var(--tf-ink-2)}.tf-equipment-message{color:var(--tf-accent-strong);font-weight:700}.tf-equipment-list{display:grid;gap:10px}.tf-equipment-list article{padding:13px;border:1px solid var(--tf-line-2);border-radius:10px;background:var(--tf-surface-2);display:grid;gap:4px}.tf-equipment-list span,.tf-equipment-list small{color:var(--tf-ink-2)}@media (max-width:800px){.tf-equipment{padding:20px}.tf-equipment-grid{grid-template-columns:1fr}.tf-equipment-toolbar{align-items:stretch;flex-direction:column}.tf-equipment-form{grid-template-columns:1fr}}.tf-paper{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-paper-head{max-width:1320px;margin:0 auto 24px;display:flex;justify-content:space-between}.tf-paper-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-paper-head h1{margin:8px 0;font-size:42px}.tf-paper-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-paper-head>div:last-child{display:flex;align-items:center;gap:10px}.tf-paper-head>div:last-child svg{color:var(--tf-accent)}.tf-paper-head button{border:0;border-radius:10px;padding:12px 16px;background:var(--tf-accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.tf-paper-head button:disabled{opacity:.5;cursor:not-allowed}.tf-paper-toolbar{max-width:1320px;margin:0 auto 18px;display:flex;flex-wrap:wrap;align-items:end;gap:18px}.tf-paper-toolbar>label{display:grid;gap:6px;color:var(--tf-ink-2);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.tf-paper-toolbar select{min-width:260px;padding:11px 12px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;text-transform:none;letter-spacing:normal}.tf-paper-toggle{display:flex!important;align-items:center;gap:8px;padding-bottom:11px;text-transform:none!important;letter-spacing:normal!important;font-weight:600!important;color:var(--tf-ink-3)!important;font-size:13px!important}.tf-paper-message{max-width:1320px;margin:0 auto 14px;padding:12px 16px;border-radius:10px}.tf-paper-message.is-ok{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-paper-message.is-warn{background:var(--tf-warn-tint,#fff6e0);color:var(--tf-warn-ink,#7a5300)}.tf-paper-message.is-error{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}.tf-paper-note{grid-column:1/-1;margin:0;color:var(--tf-warn-ink,#7a5300);font-size:13px}.tf-paper-card{max-width:1320px;margin:0 auto;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-paper-card>header{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-paper-card h2{margin:0;font-size:20px}.tf-paper-card>header span{color:var(--tf-ink-3);font-size:13px}.tf-paper-card article{display:flex;justify-content:space-between;gap:14px;padding:16px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-paper-card article:last-child{border-bottom:0}.tf-paper-card article.is-superseded{opacity:.55}.tf-paper-card article.is-expired{box-shadow:inset 4px 0 0 var(--tf-bad,#c33)}.tf-paper-card h3{margin:0 0 4px;font-size:15px}.tf-paper-card p{margin:0;color:var(--tf-ink-2);font-size:13px}.tf-paper-meta{margin-top:4px!important;color:var(--tf-ink-3)!important}.tf-paper-card aside{display:grid;gap:6px;justify-items:end;white-space:nowrap}.tf-paper-card aside span{color:var(--tf-ink-3);font-size:12px}.tf-paper-card aside button{padding:7px 12px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.tf-paper-card aside button:disabled{opacity:.6;cursor:wait}.tf-paper-card aside select{padding:6px 8px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:13px;max-width:220px}.tf-paper-tag{padding:2px 8px;border-radius:999px;background:var(--tf-surface-2);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.tf-paper-tag.is-bad{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}.tf-paper-tag.is-warn{background:var(--tf-warn-tint,#fff6e0);color:var(--tf-warn-ink,#7a5300)}@media (max-width:900px){.tf-paper{padding:28px 16px}.tf-paper-head{flex-direction:column;gap:14px}.tf-paper-head h1{font-size:32px}.tf-paper-toolbar select{min-width:0;width:100%}.tf-paper-card article{flex-direction:column}.tf-paper-card aside{justify-items:start}}.tf-approval{min-height:100%;padding:48px clamp(24px,5vw,88px);background:var(--tf-bg);color:var(--tf-ink)}.tf-approval-head{max-width:1320px;margin:0 auto 24px;display:flex;justify-content:space-between;align-items:flex-start}.tf-approval-head span{color:var(--tf-accent-strong);font-size:12px;font-weight:800;letter-spacing:.14em}.tf-approval-head h1{margin:8px 0;font-size:42px}.tf-approval-head p{margin:0;color:var(--tf-ink-2);font-size:18px}.tf-approval-head>svg{color:var(--tf-accent);flex:none}.tf-approval-rule{max-width:1320px;margin:0 auto 18px;padding:16px 20px;border:1px solid var(--tf-line);border-left:4px solid var(--tf-accent);border-radius:12px;background:var(--tf-surface);color:var(--tf-ink-2);font-size:14px;line-height:1.6}.tf-approval-rule strong{color:var(--tf-ink)}.tf-approval-message{max-width:1320px;margin:0 auto 18px;padding:12px 16px;border-radius:10px}.tf-approval-message.is-ok{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-approval-message.is-warn{background:var(--tf-warn-tint,#fff6e0);color:var(--tf-warn-ink,#7a5300)}.tf-approval-message.is-error{background:var(--tf-bad-tint,#fdecec);color:var(--tf-bad,#a11)}.tf-approval-form{max-width:1320px;margin:0 auto 24px}.tf-approval-hint{grid-column:1/-1;margin:0;color:var(--tf-ink-3);font-size:13px}.tf-approval-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}.tf-approval-card{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:16px;box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-approval-card>header{padding:20px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-approval-card h2{margin:0 0 6px;font-size:19px}.tf-approval-card>header p{margin:0;color:var(--tf-ink-3);font-size:13px;line-height:1.5}.tf-approval-card article{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 22px;border-bottom:1px solid var(--tf-line-2)}.tf-approval-card article:last-child{border-bottom:0}.tf-approval-card h3{margin:0 0 3px;font-size:15px}.tf-approval-card article p{margin:0;color:var(--tf-ink-3);font-size:12px}.tf-approval-default{background:var(--tf-surface-2)}.tf-approval-tag{padding:2px 8px;border-radius:999px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.tf-approval-none{margin:0;padding:16px 22px;color:var(--tf-ink-3);font-size:13px}.tf-approval-revoke{padding:7px 12px;border:1px solid var(--tf-bad,#c33);border-radius:8px;background:transparent;color:var(--tf-bad,#a11);font:inherit;font-size:13px;font-weight:700;cursor:pointer}.tf-approval-revoke:hover:not(:disabled){background:var(--tf-bad-tint,#fdecec)}.tf-approval-revoke:disabled{opacity:.45;cursor:not-allowed}@media (max-width:1080px){.tf-approval-grid{grid-template-columns:1fr}}@media (max-width:900px){.tf-approval{padding:28px 16px}.tf-approval-head{flex-direction:column;gap:14px}.tf-approval-head h1{font-size:32px}}.tf-poi-type-admin{margin:0 16px 16px;padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);position:relative}.tf-poi-type-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.tf-poi-type-admin-head span,.tf-poi-type-form header span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.tf-poi-type-admin-head h3{margin:3px 0;font-size:18px;letter-spacing:-.02em}.tf-poi-type-admin-head p{margin:0;color:var(--tf-ink-2);font-size:12px}.tf-poi-type-admin-head>button{min-height:40px;padding:0 13px;border:0;border-radius:var(--tf-r-sm);display:flex;align-items:center;gap:6px;background:var(--tf-accent-strong);color:var(--tf-on-accent);font-weight:700;cursor:pointer}.tf-poi-type-toolbar{display:flex;align-items:end;gap:10px;margin-top:14px}.tf-poi-type-toolbar>label{display:grid;gap:4px;color:var(--tf-ink-3);font-size:10px;font-weight:650}.tf-poi-type-toolbar select,.tf-poi-type-search{height:38px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-inset);color:var(--tf-ink)}.tf-poi-type-toolbar select{min-width:220px;padding:0 9px}.tf-poi-type-search{flex:1;display:flex!important;align-items:center;gap:7px;padding:0 10px}.tf-poi-type-search input{width:100%;border:0;outline:0;background:transparent;color:var(--tf-ink)}.tf-poi-type-scope{height:38px;padding:0 10px;border-radius:var(--tf-r-sm);display:flex;align-items:center;gap:6px;background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-size:11px;font-weight:700}.tf-poi-type-list{display:grid;gap:5px;margin-top:10px}.tf-poi-type-row{min-height:62px;padding:8px 10px;display:grid;grid-template-columns:38px minmax(160px,1.5fr) repeat(3,minmax(90px,1fr)) auto auto;align-items:center;gap:10px;border:1px solid var(--tf-line-2);border-radius:var(--tf-r-sm);background:var(--tf-surface-3)}.tf-poi-type-row.is-disabled{opacity:.64}.tf-poi-type-glyph{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-poi-type-identity{display:grid;grid-template-columns:auto 1fr;gap:2px 7px;align-items:baseline;min-width:0}.tf-poi-type-identity strong{font-size:13px}.tf-poi-type-identity code{width:max-content;padding:2px 5px;border-radius:5px;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:10px}.tf-poi-type-identity small{grid-column:1/-1;color:var(--tf-ink-3);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.tf-poi-type-row>span:not(.tf-poi-type-glyph){display:grid;gap:2px}.tf-poi-type-row small{color:var(--tf-ink-3);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.tf-poi-type-row b{color:var(--tf-ink-2);font-size:11px}.tf-poi-type-row>em{padding:4px 7px;border-radius:99px;background:var(--tf-stop-tint);color:var(--tf-stop);font-size:10px;font-style:normal;font-weight:700}.tf-poi-type-row>em.is-enabled{background:var(--tf-run-tint);color:var(--tf-run)}.tf-poi-type-actions{display:flex;gap:4px}.tf-poi-type-actions button{min-height:32px;padding:0 8px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface);color:var(--tf-ink-2);font-size:10px;font-weight:650;cursor:pointer}.tf-poi-type-actions .is-danger{color:var(--tf-alert)}.tf-poi-type-no-match{padding:18px;text-align:center;color:var(--tf-ink-3)}.tf-poi-type-message{margin:10px 0 0;padding:8px 10px;border-radius:8px;font-size:11px}.tf-poi-type-message.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-poi-type-message.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-poi-type-form{position:fixed;z-index:20;top:50%;inset-inline-start:50%;width:min(660px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;transform:translate(-50%,-50%);padding:18px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow)}.tf-poi-type-form header{display:flex;align-items:start;justify-content:space-between}.tf-poi-type-form h4{margin:3px 0 14px;font-size:20px}.tf-poi-type-form header button{width:38px;height:38px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);font-size:22px;cursor:pointer}.tf-poi-type-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tf-poi-type-form label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:11px;font-weight:650}.tf-poi-type-form input[type=text],.tf-poi-type-form input:not([type]),.tf-poi-type-form input[type=number]{height:38px;padding:0 9px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-inset);color:var(--tf-ink)}.tf-poi-type-form label small{font-size:9px;color:var(--tf-ink-3);font-weight:400}.tf-poi-type-form fieldset{margin:14px 0 0;padding:10px;border:1px solid var(--tf-line-2);border-radius:9px;display:flex;gap:18px}.tf-poi-type-form legend{padding:0 5px;color:var(--tf-ink-3);font-size:10px;text-transform:uppercase}.tf-poi-type-form fieldset label{display:flex;align-items:center;gap:6px}.tf-poi-type-form footer{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.tf-poi-type-form footer button{min-height:38px;padding:0 14px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink-2);font-weight:700;cursor:pointer}.tf-poi-type-form footer button[type=submit]{border-color:var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent)}@media (max-width:950px){.tf-poi-type-row{grid-template-columns:38px 1fr auto auto}.tf-poi-type-row>span:not(.tf-poi-type-glyph){display:none}.tf-poi-type-toolbar{align-items:stretch;flex-direction:column}.tf-poi-type-scope{width:max-content}.tf-poi-type-form-grid{grid-template-columns:1fr}}.tf-ghp{display:flex;flex-direction:column;gap:10px}.tf-ghp-lede{margin:0;color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-ghp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);overflow:hidden}.tf-ghp-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid var(--tf-line);background:var(--tf-surface)}.tf-ghp-list li:last-child{border-bottom:0}.tf-ghp-list label{display:flex;align-items:center;gap:9px;min-width:0;cursor:pointer}.tf-ghp-list input[disabled]{cursor:not-allowed}.tf-ghp-name{display:flex;flex-direction:column;min-width:0;font-size:13px;color:var(--tf-ink)}.tf-ghp-name small{color:var(--tf-ink-3);font-size:11px}.tf-ghp-state{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex-shrink:0}.tf-ghp-err{color:var(--tf-bad-ink);font-size:10.5px;max-width:30ch;text-align:right}.tf-ghp-chip{font-size:10.5px;font-weight:600;letter-spacing:.02em;padding:3px 8px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);white-space:nowrap}.tf-ghp-chip.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-ghp-chip.is-warn{color:var(--tf-warn-ink);background:var(--tf-warn-bg);border-color:var(--tf-warn-line)}.tf-ghp-chip.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-ghp-chip.is-none,.tf-ghp-chip.is-mute{color:var(--tf-ink-3);background:var(--tf-surface-1)}.tf-ghp-blocked{border:1px dashed var(--tf-line-strong);border-radius:var(--tf-r-md);padding:10px 12px;background:var(--tf-surface-1)}.tf-ghp-blocked h4{margin:0 0 6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-ghp-blocked ul{margin:0;padding-left:16px}.tf-ghp-blocked li{font-size:12px;color:var(--tf-ink-2);margin:2px 0}.tf-ghp-blocked p{margin:7px 0 0;font-size:11.5px;color:var(--tf-ink-3)}.tf-ghp-outcome{margin:0;font-size:12.5px;padding:8px 10px;border-radius:var(--tf-r-md);border:1px solid var(--tf-line)}.tf-ghp-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-ghp-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-ghp-actions{display:flex;gap:8px;flex-wrap:wrap}.tf-ghp-actions button{font-size:12.5px;font-weight:600;padding:8px 12px;border-radius:var(--tf-r-md);border:1px solid var(--tf-line-strong);background:var(--tf-surface);color:var(--tf-ink);cursor:pointer}.tf-ghp-actions button:disabled{opacity:.55;cursor:not-allowed}.tf-ghp-actions .tf-ghp-push{background:var(--tf-accent);border-color:var(--tf-accent);color:var(--tf-on-accent)}.tf-ghp-gate{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-gisops{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-gisops header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.tf-gisops h4{margin:0 0 5px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-gisops-lede{margin:0;font-size:12px;line-height:1.55;color:var(--tf-ink-2)}.tf-gisops-lede code{font-family:var(--tf-mono);font-size:11.5px}.tf-gisops-company{display:flex;align-items:center;gap:6px}.tf-gisops-company span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-gisops select,.tf-gisops input{padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink);min-width:0}.tf-gisops input:disabled,.tf-gisops select:disabled{opacity:.55;cursor:not-allowed}.tf-gisops-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.tf-gisops-list li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);font-size:12.5px}.tf-gisops-kind{font-family:var(--tf-mono);font-size:12px;color:var(--tf-ink);font-weight:600}.tf-gisops-scope{color:var(--tf-ink-2)}.tf-gisops-mode{color:var(--tf-ink-2);font-size:11.5px}.tf-gisops-mode.is-drop{color:var(--tf-bad-ink)}.tf-gisops-mode.is-unknown{color:var(--tf-ink-3);font-style:italic}.tf-gisops-state{font-size:11px;font-weight:600;color:var(--tf-warn-ink)}.tf-gisops-state.is-off{color:var(--tf-ink-3);font-weight:400}.tf-gisops-note{color:var(--tf-ink-3);font-size:11.5px;font-style:italic}.tf-gisops-actions{margin-left:auto;display:flex;gap:6px}.tf-gisops-actions button{padding:4px 9px;font-size:11.5px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-gisops-actions button.is-delete{color:var(--tf-bad-ink);border-color:var(--tf-bad-line)}.tf-gisops-actions button:disabled{opacity:.5;cursor:not-allowed}.tf-gisops-observed>div{display:flex;gap:6px;flex-wrap:wrap}.tf-gisops-observed button{padding:4px 9px;font-size:11.5px;border-radius:999px;border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);cursor:pointer}.tf-gisops-observed button b{color:var(--tf-ink);font-variant-numeric:tabular-nums}.tf-gisops-add{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-gisops-add label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-gisops-add span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-gisops-go{padding:7px 12px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-gisops-go:disabled{opacity:.5;cursor:not-allowed}.tf-gisops-hint{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-gisops-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-gisops-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-gisops-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-gisops-proto{font-family:var(--tf-mono);font-size:11.5px;color:var(--tf-ink-2)}.tf-gisops-kind{font-weight:600;color:var(--tf-ink);font-size:12px}.tf-gisops-text{font-family:var(--tf-mono);font-size:11px;color:var(--tf-ink-2);background:var(--tf-surface);padding:2px 6px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);max-width:40ch;overflow-x:auto;white-space:nowrap}.tf-gisops-list button{margin-left:auto;padding:4px 9px;font-size:11.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);cursor:pointer}.tf-gisops-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-gisops-form label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-gisops-wide{flex:1 1 340px}.tf-gisops-wide small{font-family:var(--tf-mono);font-size:10.5px;color:var(--tf-ink-3)}.tf-gisops-missing,.tf-gisops-warn{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-gisops{display:flex;flex-direction:column;gap:14px;padding:14px 16px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-gisops h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-gisops-block{display:flex;flex-direction:column;gap:8px}.tf-gisops-block h4{margin:0;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-gisops-block>p{margin:0;font-size:11.5px;line-height:1.5;color:var(--tf-ink-2)}.tf-gisops-row{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.tf-gisops-row label{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-gisops-row small{font-size:10.5px;color:var(--tf-ink-3)}.tf-gisops-row button{padding:7px 12px;font-size:12.5px;font-weight:600;cursor:pointer;border-radius:var(--tf-r-md);border:1px solid var(--tf-line-strong);background:var(--tf-surface);color:var(--tf-ink)}.tf-gisops-row button:disabled{opacity:.5;cursor:not-allowed}.tf-gisops-row button.is-danger{color:var(--tf-bad-ink);border-color:var(--tf-bad-line)}.tf-gisops-features{display:flex;flex-direction:column;gap:3px}.tf-gisops-features textarea{padding:6px 8px;font-family:var(--tf-mono);font-size:11.5px;resize:vertical;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-gisops-features small{font-size:10.5px;color:var(--tf-ink-3)}.tf-gisops-confirm{margin:0;padding:9px 11px;font-size:12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--tf-bad-ink);background:var(--tf-bad-bg);border:1px solid var(--tf-bad-line);border-radius:var(--tf-r-md)}.tf-gisops-confirm button{padding:4px 10px;font-size:11.5px;font-weight:600;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line);background:var(--tf-surface);color:var(--tf-ink);cursor:pointer}.tf-gisops-hint,.tf-gisops-gate{margin:0;font-size:11.5px;color:var(--tf-ink-3)}.tf-gisops-hint{color:var(--tf-warn-ink)}.tf-geofences{height:100%;min-height:0;padding:24px;display:flex;flex-direction:column;gap:14px;background:var(--tf-bg);overflow:hidden}.tf-geofences.is-creating .tf-geofence-grid{grid-template-columns:minmax(0,1fr)}.tf-geofences.is-creating .tf-geofence-ledger,.tf-geofences.is-creating .tf-geofence-detail{display:none}.tf-geofences.is-creating .tf-geofence-canvas{grid-column:1;box-shadow:var(--tf-shadow)}.tf-gis-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.tf-gis-head>div>span,.tf-geofence-head span,.tf-geofence-ledger header span,.tf-geofence-detail header span,.tf-geofence-create header span,.tf-route-ledger header span,.tf-route-detail header span{display:block;color:var(--tf-accent-strong);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.tf-gis-head h1{margin:4px 0 2px;font-size:28px;line-height:1.05;letter-spacing:-.03em}.tf-gis-head p,.tf-geofence-head p{margin:0;color:var(--tf-ink-2)}.tf-gis-tabs{display:flex;gap:4px;padding:4px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:12px;box-shadow:var(--tf-shadow-sm)}.tf-gis-tabs button{min-height:38px;padding:0 13px;border:0;border-radius:8px;display:flex;align-items:center;gap:7px;background:transparent;color:var(--tf-ink-2);font-weight:700;cursor:pointer}.tf-gis-tabs button[aria-pressed=true]{background:var(--tf-ink);color:var(--tf-surface)}.tf-gis-tabs button:focus-visible,.tf-route-list button:focus-visible{outline:3px solid color-mix(in srgb,var(--tf-accent) 35%,transparent);outline-offset:2px}.tf-geofence-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.tf-geofence-section-head{padding:10px 2px 0}.tf-geofence-section-head h2{margin:3px 0 2px;font-size:18px}.tf-geofence-head>button,.tf-geofence-create button{min-height:42px;border:0;border-radius:var(--tf-r-sm);padding:0 16px;display:flex;align-items:center;gap:8px;background:var(--tf-accent-strong);color:var(--tf-on-accent);font-weight:700;cursor:pointer}.tf-geofence-grid,.tf-route-grid{flex:1;min-height:0;display:grid;grid-template-columns:264px minmax(360px,1fr) 296px;gap:12px}.tf-route-workspace{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.tf-route-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 2px}.tf-route-workspace-head>div:first-child>span{color:var(--tf-accent-strong);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.tf-route-workspace-head h2{margin:3px 0 1px;font-size:18px}.tf-route-workspace-head p{margin:0;color:var(--tf-ink-2);font-size:12px}.tf-route-actions{display:flex;align-items:end;gap:8px}.tf-route-actions label{display:grid;gap:4px;color:var(--tf-ink-2);font-size:11px;font-weight:650}.tf-route-actions select{height:40px;min-width:210px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface);color:var(--tf-ink);padding:0 9px}.tf-route-actions>button{height:40px;padding:0 13px;border:0;border-radius:9px;display:flex;align-items:center;gap:7px;background:var(--tf-accent-strong);color:var(--tf-on-accent);font-weight:700;cursor:pointer}.tf-route-actions>button:disabled{opacity:.5;cursor:not-allowed}.tf-geofence-ledger,.tf-geofence-detail,.tf-geofence-canvas,.tf-route-ledger,.tf-route-detail,.tf-route-canvas,.tf-gis-places{min-height:0;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r);box-shadow:var(--tf-shadow-sm);overflow:hidden}.tf-geofence-ledger,.tf-route-ledger{display:flex;flex-direction:column}.tf-geofence-ledger>header,.tf-route-ledger>header{padding:16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--tf-line-2)}.tf-geofence-ledger h2,.tf-geofence-detail h2,.tf-geofence-create h2,.tf-route-ledger h2,.tf-route-detail h2{margin:3px 0 0;font-size:18px;letter-spacing:-.02em}.tf-geofence-ledger header>strong,.tf-route-ledger header>strong{font-size:22px}.tf-geofence-list,.tf-route-list{padding:8px;display:grid;gap:4px;overflow:auto}.tf-geofence-list>button,.tf-route-list>button{width:100%;min-height:58px;border:0;border-radius:10px;background:transparent;padding:9px 10px;display:grid;grid-template-columns:8px 1fr 18px;gap:10px;align-items:center;color:var(--tf-ink);text-align:start;cursor:pointer}.tf-route-list>button{grid-template-columns:22px 1fr}.tf-geofence-list>button:hover,.tf-route-list>button:hover{background:var(--tf-surface-2)}.tf-geofence-list>button.is-selected,.tf-route-list>button.is-selected{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-geofence-list i{width:8px;height:32px;border-radius:8px}.tf-geofence-list span,.tf-route-list span{display:grid;gap:3px;min-width:0}.tf-geofence-list strong,.tf-geofence-list small,.tf-route-list strong,.tf-route-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-geofence-list small,.tf-route-list small{color:var(--tf-ink-3);font-size:11px;text-transform:capitalize}.tf-geofence-canvas,.tf-route-canvas{position:relative}.tf-geofence-map,.tf-route-map,.tf-route-map-wrap{position:absolute;top:0;right:0;bottom:0;left:0}.tf-route-map-help{position:absolute;z-index:2;inset-inline-start:14px;top:14px;margin:0;padding:9px 11px;display:flex;align-items:center;gap:7px;border:1px solid var(--tf-line);border-radius:9px;background:color-mix(in srgb,var(--tf-surface) 95%,transparent);box-shadow:var(--tf-shadow-sm);color:var(--tf-ink-2);font-size:11px;pointer-events:none}.tf-geofence-create{position:absolute;z-index:2;inset-inline-end:16px;top:16px;width:min(380px,calc(100% - 32px));padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px;background:color-mix(in srgb,var(--tf-surface) 96%,transparent);border:1px solid var(--tf-line);border-radius:14px;box-shadow:var(--tf-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tf-geofence-create header{grid-column:1/-1;display:flex;justify-content:space-between}.tf-geofence-create label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:12px;font-weight:650}.tf-geofence-create input,.tf-geofence-create select{height:38px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);padding:0 10px}.tf-geofence-create input[type=color]{padding:4px}.tf-geofence-create p{margin:0;align-self:center;color:var(--tf-ink-3);font-size:12px}.tf-geofence-create button{justify-content:center}.tf-geofence-detail,.tf-route-detail{padding:18px;overflow:auto}.tf-geofence-detail>header,.tf-route-detail>header{padding-bottom:16px;border-bottom:1px solid var(--tf-line-2)}.tf-geofence-detail header p,.tf-route-detail header p{margin:6px 0 0;color:var(--tf-ink-3)}.tf-geofence-detail section{padding:17px 0;border-bottom:1px solid var(--tf-line-2)}.tf-geofence-detail h3{margin:0 0 10px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--tf-ink-2)}.tf-geofence-modes{display:grid;grid-template-columns:repeat(3,1fr);padding:3px;background:var(--tf-surface-2);border-radius:10px}.tf-geofence-modes button{height:36px;border:0;border-radius:8px;background:transparent;color:var(--tf-ink-2);text-transform:capitalize;cursor:pointer}.tf-geofence-modes button[aria-pressed=true]{background:var(--tf-surface);color:var(--tf-accent-strong);box-shadow:var(--tf-shadow-sm);font-weight:700}.tf-geofence-devices{display:grid;gap:4px;max-height:260px;overflow:auto}.tf-geofence-devices label{min-height:40px;padding:8px;border-radius:8px;display:flex;align-items:center;gap:9px;color:var(--tf-ink-2)}.tf-geofence-devices label:hover{background:var(--tf-surface-2)}.tf-geofence-delete{width:100%;height:40px;margin-top:18px;border:1px solid color-mix(in srgb,var(--tf-alert) 30%,var(--tf-line));border-radius:9px;background:var(--tf-alert-tint);color:var(--tf-alert);font-weight:700;cursor:pointer}.tf-geofence-no-selection{padding:48px 12px;text-align:center;color:var(--tf-ink-3)}.tf-geofence-no-selection h2{color:var(--tf-ink);margin:12px 0 6px}.tf-geofence-no-selection p{margin:0;line-height:1.5}.tf-geofence-message{margin:0;padding:9px 12px;border-radius:9px}.tf-geofence-message.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-geofence-message.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-gis-places{flex:1;display:flex;flex-direction:column;overflow:auto}.tf-gis-places .tf-poi-workspace{flex:0 0 max(620px,calc(100vh - 210px))}.tf-gis-places .tf-poi-panel{width:100%;height:100%;max-width:none}.tf-route-readonly{display:flex;gap:8px;align-items:flex-start;margin:16px 0;padding:10px;border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:12px;line-height:1.45}.tf-route-detail ol{list-style:none;margin:0;padding:0;display:grid;gap:6px}.tf-route-detail li{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;padding:9px;border:1px solid var(--tf-line-2);border-radius:9px}.tf-route-detail li>b{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font-size:12px}.tf-route-detail li>span{display:grid;gap:2px}.tf-route-detail li small{color:var(--tf-ink-3);font-variant-numeric:tabular-nums}.tf-route-detail-actions,.tf-route-form-actions{display:flex;gap:8px;margin:14px 0}.tf-route-detail-actions button,.tf-route-form-actions button{min-height:38px;padding:0 12px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);font-weight:700;cursor:pointer}.tf-route-detail-actions button:first-child,.tf-route-form-actions button:first-child{background:var(--tf-accent-strong);border-color:var(--tf-accent-strong);color:var(--tf-on-accent)}.tf-route-detail-actions .is-delete{margin-inline-start:auto;background:var(--tf-alert-tint);border-color:color-mix(in srgb,var(--tf-alert) 30%,var(--tf-line));color:var(--tf-alert)}.tf-route-editor{display:grid;gap:11px}.tf-route-editor>header{padding-bottom:12px;border-bottom:1px solid var(--tf-line-2)}.tf-route-editor label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:12px;font-weight:650}.tf-route-editor input:not([type=checkbox]),.tf-route-editor select{height:38px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);padding:0 9px}.tf-route-enabled{display:flex!important;align-items:center;grid-template-columns:auto 1fr}.tf-route-stop-picker{display:grid;gap:4px}.tf-route-stop-picker h3{margin:4px 0;font-size:11px;color:var(--tf-ink-2);letter-spacing:.08em;text-transform:uppercase}.tf-route-stop-picker>button{min-height:38px;padding:7px 8px;border:1px solid var(--tf-line-2);border-radius:8px;display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:7px;background:var(--tf-surface);color:var(--tf-ink);text-align:start;cursor:pointer}.tf-route-stop-picker>button b{color:var(--tf-accent-strong);font-size:11px}.tf-route-stop-picker>button:disabled{opacity:.55;cursor:not-allowed}.tf-route-stop-picker>p{margin:4px 0;padding:9px;border-radius:8px;background:var(--tf-idle-tint);color:var(--tf-idle);font-size:11px}.tf-route-draw-actions{display:flex;align-items:center;gap:5px;padding:7px 0;border-top:1px solid var(--tf-line-2);border-bottom:1px solid var(--tf-line-2)}.tf-route-draw-actions span{margin-inline-end:auto;color:var(--tf-ink-2);font-size:11px;font-weight:700}.tf-route-draw-actions button{height:30px;padding:0 8px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface);color:var(--tf-ink-2);font-size:10px;font-weight:700;cursor:pointer}.tf-route-draw-actions button:disabled{opacity:.4;cursor:not-allowed}.tf-route-order{max-height:240px;overflow:auto}.tf-route-order li{grid-template-columns:28px minmax(0,1fr) auto}.tf-route-order li>div{display:flex;gap:2px}.tf-route-order li>div button{width:28px;height:28px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-surface-2);color:var(--tf-ink-2);cursor:pointer}.tf-route-order li>div button:disabled{opacity:.35}.tf-route-message{margin:0;padding:9px;border-radius:8px;background:var(--tf-alert-tint);color:var(--tf-alert);font-size:12px}@media (max-width: 1100px){.tf-geofence-grid,.tf-route-grid{grid-template-columns:230px 1fr}.tf-geofence-detail,.tf-route-detail{position:absolute;inset-inline-end:24px;top:150px;bottom:24px;width:300px;z-index:4;box-shadow:var(--tf-shadow)}}@media (max-width: 900px){.tf-geofences{overflow:auto}.tf-gis-head{align-items:flex-start;flex-direction:column}.tf-route-workspace-head{align-items:stretch;flex-direction:column}.tf-route-actions{align-items:stretch}.tf-route-actions label{flex:1}.tf-route-actions select{width:100%}.tf-geofence-grid,.tf-route-grid{display:flex;flex-direction:column;min-height:920px}.tf-geofence-ledger,.tf-route-ledger{min-height:180px}.tf-geofence-list,.tf-route-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-geofence-canvas,.tf-route-canvas{min-height:430px}.tf-geofence-detail,.tf-route-detail{position:static;width:auto;min-height:260px}.tf-geofence-devices{grid-template-columns:repeat(2,minmax(0,1fr));max-height:180px}.tf-gis-places{min-height:720px}}@media (max-width: 760px){.tf-geofences{padding:16px}.tf-gis-head{gap:12px}.tf-gis-head p,.tf-geofence-head p{display:none}.tf-gis-tabs{width:100%;overflow:auto}.tf-gis-tabs button{flex:1;justify-content:center}.tf-geofence-head{align-items:center}.tf-geofence-grid,.tf-route-grid{min-height:980px}.tf-geofence-ledger,.tf-route-ledger{min-height:210px}.tf-geofence-list,.tf-route-list{grid-template-columns:1fr}.tf-geofence-canvas,.tf-route-canvas{min-height:460px}.tf-geofence-detail,.tf-route-detail{min-height:300px}.tf-geofence-devices,.tf-geofence-create{grid-template-columns:1fr}.tf-geofence-create header{grid-column:auto}}.tf-commands{height:100%;min-height:0;padding:24px;overflow:auto;background:var(--tf-bg);display:flex;flex-direction:column;gap:16px}.tf-command-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.tf-command-head span,.tf-command-context header span,.tf-command-guidance>span,.tf-command-log header span{display:block;color:var(--tf-accent-strong);font-size:11px;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.tf-command-head h1{margin:4px 0 2px;font-size:28px;line-height:1.05;letter-spacing:-.03em}.tf-command-head p{margin:0;color:var(--tf-ink-2)}.tf-command-head>button{height:40px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);padding:0 14px;display:flex;align-items:center;gap:7px;cursor:pointer}.tf-command-desk{display:grid;grid-template-columns:270px minmax(330px,1fr) 270px;gap:12px}.tf-command-context,.tf-command-form,.tf-command-guidance,.tf-command-log{background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r);box-shadow:var(--tf-shadow-sm)}.tf-command-context,.tf-command-form,.tf-command-guidance{padding:18px}.tf-command-context>header{display:flex;gap:11px;align-items:center;margin-bottom:18px}.tf-command-context h2,.tf-command-guidance h2,.tf-command-log h2{margin:3px 0 0;font-size:18px;letter-spacing:-.02em}.tf-command-context>label,.tf-command-form label{display:grid;gap:6px;color:var(--tf-ink-2);font-size:12px;font-weight:650}.tf-command-context select,.tf-command-form select,.tf-command-form input{height:42px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink);padding:0 11px}.tf-command-device{margin-top:12px;padding:14px;border-radius:11px;background:var(--tf-accent-tint);display:grid;gap:4px}.tf-command-device span{font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--tf-accent-strong)}.tf-command-device strong{font-size:18px}.tf-command-device small{color:var(--tf-ink-2)}.tf-command-form form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.tf-command-form form>label:first-child,.tf-command-warning,.tf-command-permission{grid-column:1/-1}.tf-command-form form>button{grid-column:2;min-height:42px;border:0;border-radius:9px;background:var(--tf-accent-strong);color:var(--tf-on-accent);font-weight:750;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.tf-command-form button:disabled{opacity:.45;cursor:not-allowed}.tf-command-warning,.tf-command-permission{margin:0;padding:10px 12px;border-radius:9px;display:flex;gap:8px;align-items:center}.tf-command-warning{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-command-permission{background:var(--tf-offline-tint);color:var(--tf-ink-2)}.tf-command-guidance{background:var(--tf-hero-bg);color:var(--tf-hero-ink)}.tf-command-guidance>span{color:var(--tf-accent)}.tf-command-guidance h2{font-size:20px;line-height:1.25}.tf-command-guidance ul{padding-inline-start:18px;margin:18px 0 0;color:var(--tf-hero-ink-2);line-height:1.55}.tf-command-guidance li+li{margin-top:10px}.tf-command-message{margin:0;padding:10px 12px;border-radius:9px}.tf-command-message.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-command-message.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-command-log{min-height:260px;overflow:hidden;flex:1 1 auto;display:flex;flex-direction:column}.tf-command-log>header{padding:16px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--tf-line-2)}.tf-command-log header small{color:var(--tf-ink-3)}.tf-command-table-wrap{overflow:auto;flex:1 1 auto;min-height:0}.tf-command-log table{width:100%;border-collapse:collapse;white-space:nowrap}.tf-command-log th,.tf-command-log td{padding:11px 14px;text-align:start;border-bottom:1px solid var(--tf-line-2);font-size:12px}.tf-command-log th{color:var(--tf-ink-3);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.tf-command-log td strong,.tf-command-log td small{display:block}.tf-command-log td small{margin-top:3px;color:var(--tf-ink-3)}.tf-command-log td>span{padding:4px 8px;border-radius:999px;font-weight:700;text-transform:capitalize}.tf-command-log .is-good{background:var(--tf-run-tint);color:var(--tf-run)}.tf-command-log .is-bad{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-command-log .is-wait{background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-command-log .is-neutral{background:var(--tf-offline-tint);color:var(--tf-ink-2)}@media (max-width:1100px){.tf-command-desk{grid-template-columns:240px 1fr}.tf-command-guidance{grid-column:1/-1}.tf-command-guidance ul{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tf-command-guidance li+li{margin-top:0}}@media (max-width:760px){.tf-commands{padding:16px}.tf-command-head p{display:none}.tf-command-desk,.tf-command-form form{grid-template-columns:1fr}.tf-command-form form>label:first-child,.tf-command-warning,.tf-command-permission,.tf-command-form form>button{grid-column:auto}.tf-command-guidance ul{grid-template-columns:1fr}.tf-command-log>header{align-items:flex-start;gap:8px;flex-direction:column}}.tf-command-search{margin-bottom:10px}.tf-command-search input[type=search]{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--tf-line);border-radius:6px;background:var(--tf-surface, #fff);color:inherit;font:inherit}.tf-command-search input[type=search]::placeholder{opacity:.65}.tf-command-truncated{display:block;margin-top:6px;font-size:12px;opacity:.75}.tf-command-log header .tf-log-tools{display:flex;align-items:center;gap:10px}.tf-command-log header input[type=search]{height:32px;min-width:220px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface-2);color:var(--tf-ink);padding:0 10px;font:inherit;font-size:12px}.tf-command-log header input[type=search]::placeholder{color:var(--tf-ink-3)}.tf-command-log header .tf-log-channels{display:flex;gap:2px;padding:2px;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2)}.tf-command-log header .tf-log-channels button{border:0;background:transparent;color:var(--tf-ink-2);padding:5px 12px;border-radius:7px;font-size:11px;font-weight:700;letter-spacing:.04em;cursor:pointer}.tf-command-log header .tf-log-channels button:hover{color:var(--tf-ink)}.tf-command-log header .tf-log-channels button.is-on{background:var(--tf-accent-strong);color:var(--tf-on-accent)}.tf-command-log header .tf-log-channels button:focus-visible{outline:2px solid var(--tf-accent-strong);outline-offset:1px}.tf-command-log th,.tf-command-log td{padding:8px 12px}.tf-command-log td.tf-cmd-name{max-width:260px}.tf-command-log td.tf-cmd-name small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.tf-command-log table{table-layout:auto}@media (max-width: 760px){.tf-command-log header .tf-log-tools{flex-wrap:wrap}}.tf-snap{margin:0;display:flex;flex-direction:column;min-width:0}.tf-snap-frame{position:relative;aspect-ratio:16 / 9;background:#0b0f14;display:flex;align-items:center;justify-content:center;overflow:hidden}.tf-snap-frame img{width:100%;height:100%;object-fit:cover;display:block}.tf-snap-empty{margin:0;padding:0 10px;text-align:center;font-size:12px;color:#ffffff9e}.tf-snap-cap{display:flex;align-items:center;gap:8px;padding:4px 8px;font:700 10px var(--tf-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--tf-ink-3);background:var(--tf-surface)}.tf-snap-age{margin-left:auto;font:500 10px var(--tf-mono);font-variant-numeric:tabular-nums;text-transform:none;letter-spacing:0;color:var(--tf-ink-3)}.tf-snap-age.is-old{color:var(--tf-warn-ink);font-weight:700}.tf-wall-screen{display:flex;flex-direction:column;gap:12px;padding:14px;min-height:0;overflow:auto}.tf-wall-console{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:10px 12px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r);box-shadow:var(--tf-shadow-sm)}.tf-wall-group{display:flex;align-items:center;gap:8px}.tf-wall-lbl{font:700 10px var(--tf-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--tf-ink-3)}.tf-wall-page{color:var(--tf-ink-2)}.tf-wall-seg{display:flex;gap:2px;padding:2px;border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-wall-seg button{min-width:30px;height:26px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--tf-ink-3);font:700 11px var(--tf-sans);cursor:pointer}.tf-wall-seg button:hover{color:var(--tf-ink-2)}.tf-wall-seg button[aria-pressed=true]{background:var(--tf-surface);color:var(--tf-accent-strong);box-shadow:var(--tf-shadow-sm)}.tf-wall-meter{margin-left:auto;display:flex;align-items:center;gap:16px}.tf-wall-figure{text-align:right}.tf-wall-figure .n{display:block;font:600 15px var(--tf-mono);font-variant-numeric:tabular-nums;line-height:1.2;color:var(--tf-ink)}.tf-wall-figure .k{font:700 10px var(--tf-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--tf-ink-3)}.tf-wall-figure.is-hot .n{color:var(--tf-warn-ink)}.tf-wall-explain{margin:0;padding:10px 12px;border-radius:var(--tf-r-md);font-size:12.5px;color:var(--tf-ink-2);max-width:100ch}.tf-wall-explain b{display:block;margin-bottom:2px;font-size:13px}.tf-wall-explain.is-live{background:var(--tf-alert-tint);border:1px solid var(--tf-alert)}.tf-wall-explain.is-live b{color:var(--tf-bad-ink)}.tf-wall-explain.is-patrol{background:var(--tf-idle-tint);border:1px solid var(--tf-idle)}.tf-wall-explain.is-patrol b{color:var(--tf-warn-ink)}.tf-wall-explain.is-watch{background:var(--tf-accent-tint);border:1px solid var(--tf-accent)}.tf-wall-explain.is-watch b{color:var(--tf-accent-ink)}.tf-wall-grid{display:grid;gap:12px}.tf-wall-grid.is-2,.tf-wall-grid.is-4{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-wall-grid.is-6,.tf-wall-grid.is-9{grid-template-columns:repeat(3,minmax(0,1fr))}.tf-wall-bus{display:flex;flex-direction:column;overflow:hidden;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r-md);box-shadow:var(--tf-shadow-sm)}.tf-wall-bus.is-live{border-color:var(--tf-line-strong)}.tf-wall-bus.is-alarm{border-color:var(--tf-alert);box-shadow:0 0 0 3px var(--tf-alert-tint)}.tf-wall-bus-head{display:flex;align-items:center;gap:8px;padding:8px 10px}.tf-wall-reg{font:700 14px var(--tf-sans)}.tf-wall-tele{margin-left:auto;display:flex;align-items:center;gap:8px;white-space:nowrap}.tf-wall-kmh{font:500 12px var(--tf-mono);font-variant-numeric:tabular-nums;color:var(--tf-ink-2)}.tf-wall-kmh b{color:var(--tf-ink);font-weight:600}.tf-wall-ch{padding:1px 7px;border:1px solid var(--tf-line);border-radius:999px;font:700 10px var(--tf-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--tf-ink-3)}.tf-wall-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--tf-status-nodata)}.tf-wall-dot.is-moving{background:var(--tf-status-moving)}.tf-wall-dot.is-idle{background:var(--tf-status-idle)}.tf-wall-dot.is-stopped{background:var(--tf-status-stopped)}.tf-wall-dot.is-inactive{background:var(--tf-status-inactive)}.tf-wall-alarm{padding:4px 10px;background:var(--tf-alert-tint);border-top:1px solid var(--tf-alert);font:700 11px var(--tf-sans);color:var(--tf-bad-ink)}.tf-wall-cams{display:grid;gap:2px;background:var(--tf-line-2);border-top:1px solid var(--tf-line);min-height:0}.tf-wall-cams.n1{grid-template-columns:minmax(0,1fr)}.tf-wall-cams.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-wall-cams.n3{grid-template-columns:repeat(3,minmax(0,1fr))}.tf-wall-cams.n4{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-wall-cams.n5,.tf-wall-cams.n6{grid-template-columns:repeat(3,minmax(0,1fr))}.tf-wall-cams .tf-live-ch{min-width:0}.tf-wall-cams .tf-live-ch-frame{aspect-ratio:16 / 9}.tf-wall-dwell{height:3px;background:var(--tf-line-2)}.tf-wall-dwell i{display:block;height:100%;background:var(--tf-idle);transition:width .9s linear}.tf-wall-empty{display:flex;align-items:center;gap:10px;padding:20px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r);color:var(--tf-ink-2)}.tf-wall-empty p{margin:0}@media (max-width: 940px){.tf-wall-grid.is-2,.tf-wall-grid.is-4,.tf-wall-grid.is-6,.tf-wall-grid.is-9{grid-template-columns:minmax(0,1fr)}.tf-wall-meter{margin-left:0}}@media (prefers-reduced-motion: reduce){.tf-wall-dwell i{transition:none}}.tf-wall-feed-down{margin:0;padding:8px 12px;border-radius:var(--tf-r-md);background:var(--tf-idle-tint);border:1px solid var(--tf-idle);font-size:12.5px;color:var(--tf-warn-ink)}.tf-fp{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-fp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;flex-wrap:wrap}.tf-fp-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-fp-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-fp-head p{margin:0;max-width:70ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-fp-head-actions{display:flex;gap:12px;align-items:center;flex:0 0 auto;flex-wrap:wrap}.tf-fp-h2{margin:24px 0 10px;font-size:14px;font-weight:600;color:var(--tf-ink)}.tf-fp-grades{display:flex;gap:2px;padding:2px;border-radius:8px;background:var(--tf-surface-2)}.tf-fp-grades button{min-width:34px;height:26px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--tf-ink-3);font:700 11px var(--tf-sans);cursor:pointer}.tf-fp-grades button[aria-pressed=true]{background:var(--tf-surface);color:var(--tf-accent-strong);box-shadow:var(--tf-shadow-sm)}.tf-fp-new{padding:7px 14px;border:1px solid var(--tf-line-strong);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap}.tf-fp-new:hover:not(:disabled){background:var(--tf-surface-2)}.tf-fp-new:disabled{opacity:.45;cursor:not-allowed}.tf-fp-unavailable,.tf-fp-readonly{display:flex;align-items:flex-start;gap:7px;margin:0 0 16px;padding:10px 12px;border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm);color:var(--tf-warn-ink);font-size:12.5px;line-height:1.5;max-width:78ch}.tf-fp-readonly{border-color:var(--tf-line);color:var(--tf-ink-2)}.tf-fp-unavailable code{font-family:var(--tf-mono);font-size:12px}.tf-fp-inforce{margin-bottom:22px}.tf-fp-inforce h2{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-fp-inforce-row{display:flex;gap:10px;flex-wrap:wrap}.tf-fp-card{flex:1 1 190px;display:flex;flex-direction:column;gap:2px;min-width:0;padding:12px 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-fp-card.is-missing{background:var(--tf-surface-2);box-shadow:none;border-style:dashed}.tf-fp-card-grade{color:var(--tf-ink-3);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.tf-fp-card-price{font-size:24px;font-weight:650;color:var(--tf-ink);line-height:1.15}.tf-fp-card-price.is-missing{color:var(--tf-ink-3);font-weight:400}.tf-fp-card-meta{color:var(--tf-ink-3);font-size:12px}.tf-fp-coverage{margin-bottom:8px}.tf-fp-coverage h2{margin:0 0 6px;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-fp-coverage-lede{margin:0 0 10px;max-width:78ch;color:var(--tf-ink-2);font-size:12.5px;line-height:1.55}.tf-fp-coverage-scroll{overflow-x:auto;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-fp-coverage-table{width:100%;border-collapse:collapse;font-size:12.5px}.tf-fp-coverage-table th,.tf-fp-coverage-table td{padding:8px 10px;text-align:right;white-space:nowrap}.tf-fp-coverage-table thead th{color:var(--tf-ink-3);font-size:11px;font-weight:600;line-height:1.3;border-bottom:1px solid var(--tf-line)}.tf-fp-coverage-table tbody th[scope=row]{text-align:left;color:var(--tf-ink);font-weight:600}.tf-fp-coverage-table thead th:first-child{text-align:left}.tf-fp-coverage-table tbody tr+tr th,.tf-fp-coverage-table tbody tr+tr td{border-top:1px solid var(--tf-line-2)}.tf-fp-coverage-table td.is-missing{color:var(--tf-ink-3);background:var(--tf-surface-2)}.tf-fp-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);padding:16px 18px;margin-bottom:18px}.tf-fp-form>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tf-fp-form h2{margin:0;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-fp-form>header button,.tf-fp-form>footer button{padding:7px 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-fp-form>footer{display:flex;gap:12px;align-items:center;margin-top:14px}.tf-fp-form>footer button:disabled{opacity:.45;cursor:not-allowed}.tf-fp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.tf-fp-grid label{display:flex;flex-direction:column;gap:4px}.tf-fp-grid label>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-fp-grid input,.tf-fp-grid select{padding:7px 9px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:13px}.tf-fp-national{display:flex;align-items:flex-start;gap:8px;margin-top:14px;padding:10px 12px;border:1px solid var(--tf-warn-line);border-radius:var(--tf-r-sm);color:var(--tf-ink-2);font-size:12.5px;line-height:1.5;max-width:78ch}.tf-fp-national strong{color:var(--tf-ink)}.tf-fp-note{margin:12px 0 0;max-width:78ch;color:var(--tf-ink-3);font-size:12px;line-height:1.5}.tf-fp-table-scroll{overflow-x:auto;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-fp-table{width:100%;border-collapse:collapse;font-size:13px}.tf-fp-table th,.tf-fp-table td{padding:9px 12px;text-align:left;white-space:nowrap}.tf-fp-table thead th{color:var(--tf-ink-3);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--tf-line)}.tf-fp-table tbody tr+tr td{border-top:1px solid var(--tf-line-2)}.tf-fp-table tbody tr.is-inforce{background:var(--tf-accent-tint)}.tf-fp-num{text-align:right;font-variant-numeric:tabular-nums}.tf-fp-table th.tf-fp-num{text-align:right}.tf-fp-muted{color:var(--tf-ink-3)}.tf-fp-nogrades{margin:10px 0 0;font-size:12.5px}.tf-fp-badge{margin-left:8px;padding:1px 7px;border-radius:999px;background:var(--tf-surface);border:1px solid var(--tf-accent);color:var(--tf-accent-strong);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tf-fp-actions{text-align:right}.tf-fp-actions button{margin-left:6px;padding:5px 11px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-fp-actions button:disabled{opacity:.4;cursor:not-allowed}.tf-fp-actions .tf-fp-del{color:var(--tf-bad-ink)}.tf-fp-error{margin:8px 0 0;color:var(--tf-bad-ink);font-size:12.5px}.tf-fp-error-top{margin:0 0 12px}.tf-fp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tf-slip{padding:20px 24px 40px;overflow-y:auto;height:100%}.tf-slip-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px}.tf-slip-head>div>span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.tf-slip-head h1{margin:4px 0 6px;font-size:22px;font-weight:600;color:var(--tf-ink)}.tf-slip-head p{margin:0;max-width:62ch;color:var(--tf-ink-2);font-size:13px;line-height:1.55}.tf-slip-pickers{display:flex;gap:14px;align-items:flex-end;flex:0 0 auto;flex-wrap:wrap}.tf-slip-pickers label{display:flex;flex-direction:column;gap:4px}.tf-slip-pickers span{color:var(--tf-ink-3);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}.tf-slip-pickers select,.tf-slip-pickers input{padding:7px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:12.5px}.tf-slip-month{margin:18px 0 10px;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-slip-none{color:var(--tf-ink-2);font-size:13px;line-height:1.6;max-width:68ch;padding:20px 0}.tf-slip-fidelity{border:1px solid var(--tf-line);border-left-width:3px;border-radius:var(--tf-r-md);background:var(--tf-surface-2);padding:12px 16px;max-width:78ch}.tf-slip-fidelity p{margin:0 0 6px;color:var(--tf-ink);font-size:13px;line-height:1.55}.tf-slip-fidelity p:last-child{margin-bottom:0}.tf-slip-fidelity-sub{color:var(--tf-ink-2)!important;font-size:12.5px!important}.tf-slip-fidelity.is-measured{border-left-color:var(--tf-ok-line);background:var(--tf-ok-bg)}.tf-slip-fidelity.is-slips-only{border-left-color:var(--tf-warn-line);background:var(--tf-warn-bg)}.tf-slip-form{border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm);padding:16px 18px;margin-bottom:18px}.tf-slip-form h2{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--tf-ink)}.tf-slip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.tf-slip-grid label{display:flex;flex-direction:column;gap:4px;min-width:0}.tf-slip-grid span{color:var(--tf-ink-3);font-size:10.5px;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.tf-slip-grid input{padding:7px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:13px;min-width:0}.tf-slip-rate{margin:12px 0 0;color:var(--tf-ink-2);font-size:12.5px}.tf-slip-error{margin:10px 0 0;color:var(--tf-bad-ink);font-size:12.5px}.tf-slip-form-actions{margin-top:14px}.tf-slip-form button[type=submit]{padding:7px 16px;border:1px solid var(--tf-accent-strong);border-radius:var(--tf-r-sm);background:var(--tf-accent);color:var(--tf-on-accent);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.tf-slip-form button[type=submit]:disabled{opacity:.45;cursor:not-allowed}.tf-slip-dupe{margin-top:14px;border:1px solid var(--tf-warn-line);border-left:3px solid var(--tf-warn);border-radius:var(--tf-r-md);background:var(--tf-warn-bg);padding:12px 16px}.tf-slip-dupe h3{margin:0 0 6px;font-size:13.5px;font-weight:600;color:var(--tf-warn-ink)}.tf-slip-dupe p{margin:0 0 8px;color:var(--tf-ink);font-size:12.5px;line-height:1.55}.tf-slip-dupe ul{margin:0 0 8px;padding-left:18px;color:var(--tf-ink);font-size:12.5px;line-height:1.7}.tf-slip-dupe-why{color:var(--tf-ink-2)!important}.tf-slip-dupe-actions{display:flex;gap:8px;flex-wrap:wrap}.tf-slip-dupe-actions button{padding:6px 13px;border:1px solid var(--tf-line-strong);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:inherit;font-size:12.5px;cursor:pointer}.tf-slip-dupe-actions button:disabled{opacity:.45;cursor:not-allowed}.tf-slip-danger{border-color:var(--tf-bad-line)!important;color:var(--tf-bad-ink)!important}.tf-slip-table{width:100%;border-collapse:collapse;font-size:13px}.tf-slip-caption{caption-side:top;text-align:left;padding:0 0 8px;color:var(--tf-ink-2);font-size:12.5px}.tf-slip-table th,.tf-slip-table td{padding:8px 10px;border-bottom:1px solid var(--tf-line);text-align:left}.tf-slip-table thead th{color:var(--tf-ink-3);font-size:10.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;border-bottom-color:var(--tf-line-strong)}.tf-slip-table .is-num{text-align:right;font-variant-numeric:tabular-nums}.tf-slip-table tbody tr:hover{background:var(--tf-surface-2)}.tf-slip-table tfoot th,.tf-slip-table tfoot td{font-weight:600;color:var(--tf-ink);border-bottom:none}.tf-slip-table button{padding:4px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-3);color:var(--tf-ink);font:inherit;font-size:12px;cursor:pointer}.tf-slip-table button:disabled{opacity:.45;cursor:not-allowed}.tf-slip-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media (max-width: 860px){.tf-slip-head{flex-direction:column}.tf-slip-table{display:block;overflow-x:auto}}.tf-vikor{display:flex;flex-direction:column;gap:16px;padding:18px;overflow-y:auto}.tf-vikor-head{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between}.tf-vikor-eyebrow{display:inline-flex;align-items:center;gap:5px;color:var(--tf-accent-strong);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tf-vikor-head h1{margin:4px 0 0;color:var(--tf-ink);font-size:21px;font-weight:700}.tf-vikor-sub{margin:6px 0 0;max-width:78ch;color:var(--tf-ink-3);font-size:12.5px;line-height:1.55}.tf-vikor-export{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--tf-accent);border-radius:var(--tf-r-sm);background:var(--tf-accent);color:var(--tf-on-accent);font:inherit;font-size:12.5px;font-weight:650;cursor:pointer}.tf-vikor-export:hover:not(:disabled){background:var(--tf-accent-strong);border-color:var(--tf-accent-strong)}.tf-vikor-export:disabled{opacity:.5;cursor:not-allowed}.tf-vikor-controls{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:flex-end;padding:12px 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-vikor-controls label{display:flex;flex-direction:column;gap:4px;color:var(--tf-ink-2);font-size:12px}.tf-vikor-month span{color:var(--tf-ink-3);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.tf-vikor-controls input,.tf-vikor-controls select{padding:7px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:inherit;font-size:12.5px;font-variant-numeric:tabular-nums}.tf-vikor-hint{margin:0;align-self:center;color:var(--tf-warn-ink);font-size:12px}.tf-vikor-notice{margin:0;padding:9px 12px;border:1px solid var(--tf-ok-line);border-radius:var(--tf-r-sm);background:var(--tf-ok-bg);color:var(--tf-ok-ink);font-size:12.5px}.tf-vikor-notice.is-bad{border-color:var(--tf-bad-line);background:var(--tf-bad-bg);color:var(--tf-bad-ink)}.tf-vikor-sheet{display:flex;flex-direction:column;gap:12px}.tf-vikor-meta{display:flex;flex-wrap:wrap;gap:10px 28px;margin:0}.tf-vikor-meta div{display:flex;flex-direction:column;gap:2px}.tf-vikor-meta dt{color:var(--tf-ink-3);font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.tf-vikor-meta dd{margin:0;color:var(--tf-ink);font-size:13px;font-weight:600}.tf-vikor-caveats{padding:12px 14px;border:1px solid var(--tf-warn-line);border-radius:var(--tf-r);background:var(--tf-warn-bg)}.tf-vikor-caveats h2{display:flex;align-items:center;gap:6px;margin:0;color:var(--tf-warn-ink);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.tf-vikor-caveats ul{margin:8px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:5px}.tf-vikor-caveats li{color:var(--tf-ink-2);font-size:12.5px;line-height:1.5}.tf-vikor-table-wrap{overflow-x:auto;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-vikor-table{width:100%;border-collapse:collapse;font-size:12.5px}.tf-vikor-caption{padding:12px 14px;border-bottom:1px solid var(--tf-line-2);color:var(--tf-ink-2);font-size:12px;font-weight:650;text-align:left}.tf-vikor-table th,.tf-vikor-table td{padding:9px 14px;border-top:1px solid var(--tf-line-2);white-space:nowrap}.tf-vikor-table thead th{border-top:0;background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:right}.tf-vikor-table thead th:first-child{text-align:left}.tf-vikor-table tbody th{position:sticky;left:0;z-index:1;background:var(--tf-surface);color:var(--tf-ink);font-weight:600;text-align:left}.tf-vikor-table tbody th small{display:block;margin-top:2px;color:var(--tf-ink-3);font-size:10.5px;font-weight:500}.tf-vikor-table tbody tr:nth-child(2n) th,.tf-vikor-table tbody tr:nth-child(2n) td:not(.tf-vikor-total){background:var(--tf-surface-2)}.tf-vikor-num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--tf-mono)}.tf-vikor-table tbody .tf-vikor-num{color:var(--tf-ink)}.tf-vikor-table tbody .is-unknown{color:var(--tf-nodata);font-weight:500}.tf-vikor-total{border-left:1px solid var(--tf-line);font-weight:700}.tf-vikor-table tbody .tf-vikor-total{background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-vikor-table tbody .tf-vikor-total.is-unknown{color:var(--tf-nodata);font-weight:500}.tf-vimport{display:flex;flex-direction:column;gap:12px;padding:14px;overflow:auto}.tf-vimport-head h1{margin:0 0 2px;font-size:20px;font-weight:600}.tf-vimport-head p{margin:0;color:var(--tf-ink-2);font-size:13px;max-width:78ch}.tf-vimport-card{display:flex;flex-wrap:wrap;gap:10px;padding:14px;background:var(--tf-surface);border:1px solid var(--tf-line);border-radius:var(--tf-r);box-shadow:var(--tf-shadow-sm)}.tf-vimport-file{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--tf-accent);border-radius:var(--tf-r-sm);color:var(--tf-accent-strong);font:600 12px var(--tf-sans);cursor:pointer}.tf-vimport-file input{display:none}.tf-vimport-sample{height:32px;padding:0 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:transparent;color:var(--tf-ink-2);font:600 12px var(--tf-sans);cursor:pointer}.tf-vimport-csv{flex:1 1 100%;min-height:130px;padding:10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:400 12px var(--tf-mono);resize:vertical}.tf-vimport-hint{flex:1 1 100%;margin:0;color:var(--tf-ink-3);font-size:12px}.tf-vimport-hint code{font:500 11.5px var(--tf-mono);color:var(--tf-accent-ink);background:var(--tf-accent-tint);padding:1px 5px;border-radius:4px}.tf-vimport-actions{flex:1 1 100%;display:flex;gap:8px}.tf-vimport-actions button{height:34px;padding:0 14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:600 12px var(--tf-sans);cursor:pointer}.tf-vimport-actions button:disabled{opacity:.5;cursor:not-allowed}.tf-vimport-apply{border-color:var(--tf-accent)!important;background:var(--tf-accent)!important;color:#fff!important}.tf-vimport-summary{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:8px 20px;align-items:baseline;font-size:12.5px;color:var(--tf-ink-2)}.tf-vimport-summary b{font:600 14px var(--tf-mono);font-variant-numeric:tabular-nums;color:var(--tf-ink)}.tf-vimport-summary .is-change b{color:var(--tf-accent-strong)}.tf-vimport-summary .is-warn b{color:var(--tf-warn-ink)}.tf-vimport-unit{margin-left:auto}.tf-vimport-warnings{flex:1 1 100%;margin:0;padding:10px 10px 10px 28px;border-radius:var(--tf-r-sm);background:var(--tf-idle-tint);border:1px solid var(--tf-idle);color:var(--tf-warn-ink);font-size:12.5px}.tf-vimport-table-wrap{flex:1 1 100%;overflow-x:auto}.tf-vimport-table{width:100%;border-collapse:collapse;font-size:12.5px}.tf-vimport-table th{text-align:left;padding:6px 8px;border-bottom:1px solid var(--tf-line);font:700 10px var(--tf-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--tf-ink-3)}.tf-vimport-table td{padding:6px 8px;border-bottom:1px solid var(--tf-line-2);color:var(--tf-ink-2)}.tf-vimport-table td:first-child{font-variant-numeric:tabular-nums;color:var(--tf-ink-3)}.tf-vimport-table tr.is-willchange td{color:var(--tf-ink)}.tf-vimport-table tr.is-notfound td,.tf-vimport-table tr.is-ambiguous td{color:var(--tf-warn-ink)}.tf-vimport-error{margin:0;color:var(--tf-bad-ink);font-size:13px}.tf-vimport-ok{margin:0;color:var(--tf-ok-ink);font-size:13px}.tf-sime{display:flex;flex-direction:column;gap:10px;padding:14px 16px;margin-bottom:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-md);background:var(--tf-surface)}.tf-sime header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tf-sime h3{margin:0;font-size:14px;font-weight:650;color:var(--tf-ink)}.tf-sime-close{border:1px solid var(--tf-line);background:var(--tf-surface-1);color:var(--tf-ink-2);border-radius:var(--tf-r-sm);padding:4px 10px;font-size:11.5px;cursor:pointer}.tf-sime-lede{margin:0;font-size:12px;line-height:1.5;color:var(--tf-ink-2)}.tf-sime-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.tf-sime-field{display:flex;flex-direction:column;gap:3px;max-width:320px}.tf-sime-field small{font-size:11px;color:var(--tf-ink-3)}.tf-sime-grid label,.tf-sime-field{display:flex;flex-direction:column;gap:3px;min-width:0}.tf-sime span{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--tf-ink-3)}.tf-sime input,.tf-sime select{min-width:0;padding:6px 8px;font-size:12.5px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-1);color:var(--tf-ink)}.tf-sime input:disabled,.tf-sime select:disabled{opacity:.55;cursor:not-allowed}.tf-sime-hint{margin:0;font-size:11.5px;color:var(--tf-warn-ink)}.tf-sime-outcome{margin:0;padding:8px 10px;font-size:12px;border-radius:var(--tf-r-sm);border:1px solid var(--tf-line)}.tf-sime-outcome.is-ok{color:var(--tf-ok-ink);background:var(--tf-ok-bg);border-color:var(--tf-ok-line)}.tf-sime-outcome.is-bad{color:var(--tf-bad-ink);background:var(--tf-bad-bg);border-color:var(--tf-bad-line)}.tf-sime-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tf-sime-save{padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-sime-save:disabled{opacity:.5;cursor:not-allowed}.tf-sime-gate{font-size:11.5px;color:var(--tf-ink-3)}.tf-sims{display:flex;flex-direction:column;gap:14px;padding:18px;overflow-y:auto}.tf-sims-head h1{margin:2px 0 0;color:var(--tf-ink);font-size:21px;font-weight:700}.tf-sims-head p{margin:4px 0 0;max-width:62ch;color:var(--tf-ink-3);font-size:12.5px;line-height:1.5}.tf-sim-inventory{display:flex;flex-wrap:wrap;gap:8px}.tf-sim-chip{display:flex;align-items:baseline;gap:6px;padding:8px 12px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink-2);font:inherit;cursor:pointer}.tf-sim-chip strong{color:var(--tf-ink);font-size:17px;font-weight:700;font-variant-numeric:tabular-nums}.tf-sim-chip span{font-size:11.5px}.tf-sim-chip.is-active{border-color:var(--tf-accent);background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-sim-chip.tf-tone-stop strong{color:var(--tf-stop)}.tf-sim-chip.tf-tone-idle strong{color:var(--tf-idle)}.tf-sim-chip.tf-tone-run strong{color:var(--tf-run)}.tf-sim-chip.tf-tone-nodata strong{color:var(--tf-ink-3)}.tf-sim-cost{margin:0;color:var(--tf-ink-2);font-size:12.5px}.tf-sim-notice{display:flex;align-items:flex-start;gap:8px;margin:0;padding:9px 11px;border:1px dashed var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:12px;line-height:1.45}.tf-sim-table-wrap{overflow-x:auto;border:1px solid var(--tf-line-soft);border-radius:var(--tf-r-sm)}.tf-sim-table{width:100%;border-collapse:collapse;font-size:12.5px}.tf-sim-table th{padding:9px 11px;border-bottom:1px solid var(--tf-line);background:var(--tf-surface-2);color:var(--tf-ink-3);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;text-align:start;white-space:nowrap}.tf-sim-table td{padding:9px 11px;border-bottom:1px solid var(--tf-line-soft);color:var(--tf-ink)}.tf-sim-table tbody tr:last-child td{border-bottom:0}.tf-sim-table em{color:var(--tf-ink-3);font-style:normal;font-size:11.5px}.tf-sim-state{padding:2px 7px;border-radius:999px;font-size:10px;font-weight:750;white-space:nowrap;background:var(--tf-surface-2);color:var(--tf-ink-3)}.tf-sim-state[data-state=expired]{background:var(--tf-alert-tint);color:var(--tf-stop)}.tf-sim-state[data-state=expiring]{background:var(--tf-accent-tint);color:var(--tf-idle)}.tf-sim-state[data-state=ok]{background:var(--tf-run-tint);color:var(--tf-run)}.tf-sim-nofilter{margin:0;padding:16px;color:var(--tf-ink-3);font-size:12.5px;text-align:center}.tf-ltr{direction:ltr;unicode-bidi:plaintext}.tf-sims-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.tf-sims-add{flex-shrink:0;padding:8px 13px;font-size:12.5px;font-weight:600;border-radius:var(--tf-r-md);border:1px solid var(--tf-accent);background:var(--tf-accent);color:var(--tf-on-accent);cursor:pointer}.tf-notification-stats{min-height:100%;padding:22px;background:var(--tf-bg);color:var(--tf-ink)}.tf-notification-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px}.tf-notification-head>div>span,.tf-notification-card header span{color:var(--tf-accent-strong);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tf-notification-head h1{margin:4px 0 2px;font-size:28px;letter-spacing:-.04em}.tf-notification-head p{margin:0;color:var(--tf-ink-2);font-size:12px}.tf-notification-head form{display:grid;grid-template-columns:repeat(2,140px) auto;align-items:end;gap:8px}.tf-notification-head label{display:grid;gap:4px;color:var(--tf-ink-3);font-size:9px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.tf-notification-head input{height:38px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink);font:600 11px var(--tf-sans)}.tf-notification-head button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 14px;border:0;border-radius:var(--tf-r-sm);background:var(--tf-accent);color:#fff;font:700 11px var(--tf-sans);cursor:pointer}.tf-notification-head button:disabled{opacity:.45;cursor:not-allowed}.tf-notification-head form>small{grid-column:1/-1;color:var(--tf-ink-3);font-size:9px;text-align:end}.tf-notification-head form>small.is-invalid{color:var(--tf-alert)}.tf-notification-totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px}.tf-notification-totals article{display:flex;align-items:center;gap:10px;min-width:0;padding:13px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-notification-totals article.is-legacy{background:var(--tf-surface-2)}.tf-notification-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:10px;background:var(--tf-accent-tint);color:var(--tf-accent-strong)}.tf-notification-totals article.is-legacy .tf-notification-icon{background:var(--tf-line-2);color:var(--tf-ink-3)}.tf-notification-totals article>div{display:grid;min-width:0;gap:2px}.tf-notification-totals small{overflow:hidden;color:var(--tf-ink-3);font-size:9px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.tf-notification-totals strong{font-size:18px;font-variant-numeric:tabular-nums}.tf-notification-totals strong i{color:var(--tf-ink-3);font-size:9px;font-style:normal}.tf-notification-totals article div>span{color:var(--tf-ink-3);font-size:9px}.tf-notification-totals .has-failures,.tf-notification-table .has-failures{color:var(--tf-alert);font-weight:750}.tf-notification-card{overflow:hidden;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-notification-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--tf-line-2);color:var(--tf-accent)}.tf-notification-card header h2{margin:3px 0 0;font-size:15px}.tf-notification-table-wrap{overflow:auto}.tf-notification-table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums}.tf-notification-table th,.tf-notification-table td{height:46px;padding:0 13px;border-top:1px solid var(--tf-line-2);text-align:end}.tf-notification-table thead th{height:40px;border-top:0;color:var(--tf-ink-3);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.tf-notification-table thead th:first-child,.tf-notification-table tbody th{text-align:start}.tf-notification-table thead small{display:block;margin-top:2px;font-size:7px;letter-spacing:0}.tf-notification-table tbody th{color:var(--tf-ink-2);font-weight:650}.tf-notification-table td strong,.tf-notification-table td span{display:inline-block;min-width:34px}.tf-notification-table td span{color:var(--tf-ink-3)}.tf-notification-lower{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:12px;margin-top:12px}.tf-relay-list{margin:0;padding:0 16px;list-style:none}.tf-relay-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;border-top:1px solid var(--tf-line-2)}.tf-relay-list li:first-child{border-top:0}.tf-relay-list li>span{display:grid;gap:3px}.tf-relay-list small{color:var(--tf-ink-3);font-size:9px}.tf-relay-list b{color:var(--tf-accent-strong);font-size:11px;font-variant-numeric:tabular-nums}.tf-notification-inline-empty{margin:0;padding:28px 16px;color:var(--tf-ink-3);font-size:11px}.tf-notification-legacy{display:flex;align-items:flex-start;gap:10px;padding:16px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface-2);color:var(--tf-ink-3)}.tf-notification-legacy strong{color:var(--tf-ink-2);font-size:11px}.tf-notification-legacy p{margin:5px 0 0;font-size:10px;line-height:1.5}.tf-notification-stats>.tf-state{min-height:220px;justify-content:center;text-align:center}@media (max-width:1000px){.tf-notification-totals{grid-template-columns:repeat(3,1fr)}}@media (max-width:720px){.tf-notification-stats{padding:14px}.tf-notification-head{align-items:stretch;flex-direction:column}.tf-notification-head form{grid-template-columns:1fr 1fr}.tf-notification-head button{grid-column:1/-1}.tf-notification-totals{grid-template-columns:1fr 1fr}.tf-notification-lower{grid-template-columns:1fr}}@media (max-width:440px){.tf-notification-totals,.tf-notification-head form{grid-template-columns:1fr}.tf-notification-head form>*{grid-column:1!important}}.tf-evidence{position:absolute;left:12px;right:12px;bottom:12px;z-index:18;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow);overflow:hidden}.tf-evidence>header{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 12px}.tf-evidence-heading,.tf-evidence-actions{display:flex;align-items:center;gap:8px;color:var(--tf-ink-2)}.tf-evidence>header strong{font-size:12px}.tf-evidence>header span{color:var(--tf-ink-3);font-size:10px;font-variant-numeric:tabular-nums}.tf-evidence>header button{min-height:32px;padding:0 7px;border:0;background:transparent;color:var(--tf-accent-strong);font:700 11px var(--tf-sans)}.tf-evidence-actions button:last-child{color:var(--tf-alert)}#tf-evidence-body{height:clamp(210px,30vh,320px);display:flex;flex-direction:column;border-top:1px solid var(--tf-line)}.tf-evidence-transport{display:flex;align-items:center;gap:7px;padding:8px 10px;border-bottom:1px solid var(--tf-line-2)}.tf-evidence-transport>button{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--tf-line);border-radius:9px;background:var(--tf-surface-2);color:var(--tf-ink)}.tf-evidence-transport>button:first-child{background:var(--tf-accent);border-color:var(--tf-accent);color:var(--tf-on-accent)}.tf-evidence-transport>input{flex:1;accent-color:var(--tf-accent)}.tf-evidence-transport>div{display:flex;gap:2px;padding:3px;border:1px solid var(--tf-line);border-radius:8px}.tf-evidence-transport>div button{height:30px;min-width:34px;border:0;border-radius:6px;background:transparent;color:var(--tf-ink-3);font:700 10px var(--tf-sans)}.tf-evidence-transport>div button[aria-pressed=true]{background:var(--tf-ink);color:var(--tf-surface)}.tf-evidence-tabs{display:flex;gap:2px;padding:6px 10px 0;overflow-x:auto}.tf-evidence-tabs button{min-height:32px;padding:0 11px;border:0;border-radius:7px 7px 0 0;background:transparent;color:var(--tf-ink-3);font:700 10px var(--tf-sans);white-space:nowrap}.tf-evidence-tabs button[aria-pressed=true]{background:var(--tf-surface-2);color:var(--tf-accent-strong)}.tf-evidence-panel{flex:1;min-height:0;overflow:auto;padding:8px 10px 10px;background:var(--tf-surface-2)}.tf-evidence-chart{display:grid;gap:5px;height:100%}.tf-evidence-chart>div{display:flex;gap:12px}.tf-evidence-chart span{display:flex;align-items:center;gap:5px;color:var(--tf-ink-2);font-size:10px}.tf-evidence-chart i{width:9px;height:3px}.tf-evidence-chart svg{width:100%;height:120px;border:1px solid var(--tf-line-2);border-radius:8px;background:var(--tf-surface)}.tf-evidence-panel ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.tf-evidence-panel li{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--tf-line-2);border-radius:8px;background:var(--tf-surface)}.tf-evidence-panel li strong{font-size:10.5px;font-weight:650}.tf-evidence-panel li span,.tf-evidence-panel p{color:var(--tf-ink-3);font-size:10px}.tf-live-playback-marker{box-shadow:0 0 0 4px var(--tf-accent-tint),var(--tf-shadow)}.tf-evidence button:focus-visible,.tf-evidence input:focus-visible{outline:3px solid color-mix(in srgb,var(--tf-accent) 28%,transparent);outline-offset:2px}.tf-work-playback-evidence .maplibregl-ctrl-bottom-right{bottom:340px}@media (max-width:640px){.tf-evidence{left:6px;right:6px;bottom:6px}.tf-evidence.is-open{z-index:32}#tf-evidence-body{height:min(52vh,390px)}.tf-work-playback-evidence .maplibregl-ctrl-bottom-right{bottom:min(56vh,410px)}.tf-evidence-transport{flex-wrap:wrap}.tf-evidence-transport>input{order:-1;flex-basis:100%}.tf-evidence-transport>div{margin-inline-start:auto}}.tf-evidence-tabs button[aria-selected=true]{background:var(--tf-surface-2);color:var(--tf-accent-strong)}.tf-evidence-temperature-status{display:flex;gap:6px;margin-bottom:7px;overflow-x:auto}.tf-evidence-temperature-status article{min-width:168px;padding:8px 10px;display:grid;grid-template-columns:1fr auto;gap:3px 8px;border:1px solid var(--tf-line-2);border-radius:8px;background:var(--tf-surface)}.tf-evidence-temperature-status article>span,.tf-evidence-temperature-status article>small{color:var(--tf-ink-3);font-size:9px}.tf-evidence-temperature-status article>strong{font-size:14px;font-variant-numeric:tabular-nums}.tf-evidence-temperature-status article>em{align-self:center;padding:2px 6px;border-radius:9px;font-size:8px;font-style:normal;font-weight:800}.tf-evidence-temperature-status article>em.is-ok{background:var(--tf-run-tint);color:var(--tf-run)}.tf-evidence-temperature-status article>em.is-high{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-evidence-temperature-status article>em.is-low{background:var(--tf-cold-tint);color:var(--tf-cold)}.tf-evidence-temperature-status article>em.is-neutral{background:var(--tf-nodata-tint);color:var(--tf-ink-2)}.tf-evidence-panel li{display:flex;grid-template-columns:none;align-items:center;gap:6px;padding:4px}.tf-evidence-panel li.is-selected{border-color:var(--tf-accent);box-shadow:inset 3px 0 var(--tf-accent)}.tf-evidence-row-main{min-width:0;flex:1;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:6px;padding:4px;border:0;background:transparent;color:var(--tf-ink);text-align:start}.tf-evidence-row-play{display:flex;align-items:center;gap:4px;min-height:32px;padding:0 9px;border:1px solid var(--tf-line);border-radius:7px;background:var(--tf-accent-tint);color:var(--tf-accent-strong);font:700 10px var(--tf-sans)}.tf-evidence-panel li strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-playback-map-evidence{width:30px;height:30px;display:grid;place-items:center;border:3px solid var(--tf-surface);border-radius:50%;box-shadow:0 2px 8px #0e1b2a40;font:800 11px var(--tf-sans);cursor:pointer}.tf-playback-map-evidence span{display:grid;place-items:center;width:100%;height:100%;border-radius:50%}.tf-playback-map-evidence.is-start{background:var(--tf-run);color:#fff}.tf-playback-map-evidence.is-end{background:var(--tf-stop);color:#fff}.tf-playback-map-evidence.is-stop{background:var(--tf-idle);color:#fff}.tf-playback-map-evidence.is-temperature{background:var(--tf-alert);color:#fff}.tf-playback-map-evidence.is-fuel{background:var(--tf-fuel);color:#fff}.tf-playback-map-evidence:focus-visible{outline:3px solid var(--tf-accent-tint);outline-offset:2px}@media (max-width:640px){.tf-evidence-row-main{grid-template-columns:20px minmax(0,1fr)}.tf-evidence-row-main span{grid-column:2}.tf-evidence-row-play{min-width:44px;justify-content:center}}.tf-playback-map-evidence.is-stop{position:relative}.tf-playback-stop-card{position:absolute;left:50%;bottom:38px;width:264px;padding:12px;transform:translate(-50%);border:1px solid var(--tf-line);border-radius:var(--tf-radius-sm);background:var(--tf-surface);box-shadow:var(--tf-shadow);color:var(--tf-ink);font:400 11px/1.35 var(--tf-sans);text-align:start}.tf-playback-stop-card[hidden]{display:none}.tf-playback-stop-card strong{display:block;margin-bottom:5px;font-size:12px}.tf-playback-stop-card p{margin:0 0 9px;color:var(--tf-ink-2);overflow-wrap:anywhere}.tf-playback-stop-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0}.tf-playback-stop-card dl div{padding:6px;border-radius:6px;background:var(--tf-surface-2)}.tf-playback-stop-card dt{color:var(--tf-ink-3);font-size:8px;text-transform:uppercase;letter-spacing:.05em}.tf-playback-stop-card dd{margin:2px 0 0;color:var(--tf-ink);font-size:9px;font-weight:700;font-variant-numeric:tabular-nums}.tf-playback-map-evidence.is-stop[aria-expanded=true]{z-index:4;box-shadow:0 0 0 4px var(--tf-idle-tint),var(--tf-shadow)}.tf-playback-map-evidence.is-alarm{position:relative;background:var(--tf-alert);color:#fff}.tf-playback-map-evidence.is-raw{position:relative;background:var(--tf-accent);color:#fff}.tf-playback-map-evidence.is-alarm[aria-expanded=true],.tf-playback-map-evidence.is-raw[aria-expanded=true]{z-index:4;box-shadow:0 0 0 4px var(--tf-accent-tint),var(--tf-shadow)}.tf-evidence-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.tf-evidence-filter label{display:flex;align-items:center;gap:7px;color:var(--tf-ink-2);font-size:10px;font-weight:700}.tf-evidence-filter select{min-height:32px;padding-block:0;padding-inline:9px 28px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink);font:600 10px var(--tf-sans)}.tf-evidence-filter small{color:var(--tf-ink-3);font-size:9px}.tf-evidence-table-wrap{max-height:190px;overflow:auto;border:1px solid var(--tf-line-2);border-radius:8px;background:var(--tf-surface)}.tf-evidence-table{width:100%;border-collapse:collapse;font-size:10px}.tf-evidence-table th{position:sticky;top:0;z-index:1;padding:7px 9px;background:var(--tf-surface-3);color:var(--tf-ink-3);font-size:8px;letter-spacing:.06em;text-align:start;text-transform:uppercase}.tf-evidence-table td{max-width:280px;padding:7px 9px;border-top:1px solid var(--tf-line-2);color:var(--tf-ink-2);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-evidence-table td strong{color:var(--tf-ink)}.tf-evidence-severity,.tf-evidence-acc,.tf-evidence-gps{display:inline-flex;padding:2px 6px;border-radius:999px;font-size:8px;font-weight:800;text-transform:uppercase}.tf-evidence-severity.is-critical,.tf-evidence-severity.is-high{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-evidence-severity.is-warning,.tf-evidence-severity.is-medium{background:var(--tf-idle-tint);color:var(--tf-idle)}.tf-evidence-severity.is-info,.tf-evidence-severity.is-low{background:var(--tf-nodata-tint);color:var(--tf-ink-2)}.tf-evidence-acc.is-on,.tf-evidence-gps.is-true{background:var(--tf-run-tint);color:var(--tf-run)}.tf-evidence-acc.is-off{background:var(--tf-stop-tint);color:var(--tf-stop)}.tf-evidence-acc.is-unknown{background:var(--tf-nodata-tint);color:var(--tf-ink-3)}@media (max-width:640px){.tf-evidence-filter{align-items:flex-start;flex-direction:column}.tf-evidence-filter label{width:100%}.tf-evidence-filter select{flex:1}.tf-evidence-table-wrap{max-height:220px}}.tf-evidence-load-more{display:block;min-height:36px;margin:8px auto 0;padding:0 14px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-accent-strong);font:700 10px var(--tf-sans);cursor:pointer}.tf-evidence-load-more:hover{background:var(--tf-accent-tint)}.tf-evidence-load-more:focus-visible{outline:2px solid var(--tf-accent);outline-offset:2px}.tf-evidence-load-more:disabled{cursor:wait;opacity:.6}.tf-evidence-page-status,.tf-evidence-page-error{margin:8px 0 0;color:var(--tf-ink-3);font-size:9px;text-align:center}.tf-evidence-page-error{color:var(--tf-alert)}.tf-evidence-table tbody tr[role=button]{cursor:pointer}.tf-evidence-table tbody tr[role=button]:hover{background:var(--tf-accent-tint)}.tf-evidence-table tbody tr[role=button]:focus-visible{outline:2px solid var(--tf-accent);outline-offset:-2px}.tf-evidence-table tbody tr.is-selected{background:var(--tf-accent-tint);box-shadow:inset 3px 0 var(--tf-accent)}.tf-evidence-fuel-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}.tf-evidence-fuel-summary>div{display:grid;gap:2px}.tf-evidence-fuel-summary span{color:var(--tf-ink-3);font-size:12px}.tf-evidence-fuel-summary em{border-radius:999px;background:var(--tf-idle-tint);color:var(--tf-idle);font-size:11px;font-style:normal;font-weight:700;padding:5px 8px;text-transform:uppercase;letter-spacing:.04em}.tf-evidence-fuel-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:10px 0 0;padding:0;list-style:none}.tf-evidence-fuel-events button{width:100%;display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;text-align:start;border:1px solid var(--tf-line);background:var(--tf-surface);border-radius:var(--tf-radius-sm);padding:9px 10px;color:var(--tf-ink)}.tf-evidence-fuel-events button svg{grid-row:1/3;color:var(--tf-fuel)}.tf-evidence-fuel-events button span{color:var(--tf-ink-3);font-size:12px}.tf-evidence-fuel-events button:hover{border-color:var(--tf-fuel)}.tf-evidence-fuel-events button:focus-visible{outline:2px solid var(--tf-accent);outline-offset:2px}.tf-geofence-manager{height:100%;display:flex;flex-direction:column;background:var(--tf-surface);color:var(--tf-ink);overflow:hidden}.tf-geofence-manager-head{min-height:64px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--tf-line)}.tf-geofence-manager-head span,.tf-geofence-manager-detail>span{display:block;color:var(--tf-ink-3);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tf-geofence-manager-head h2,.tf-geofence-manager-detail h3{margin:2px 0 0;font-size:18px}.tf-geofence-manager-head button{width:40px;height:40px;border:1px solid var(--tf-line);border-radius:50%;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:22px;cursor:pointer}.tf-geofence-manager-summary{margin:14px 14px 8px;padding:12px;display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-items:center;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-geofence-manager-summary strong{font-size:18px}.tf-geofence-manager-summary small{grid-column:2;color:var(--tf-ink-2)}.tf-geofence-manager-message{margin:10px 14px 0;padding:10px 12px;border-radius:var(--tf-r-sm);font-size:12px}.tf-geofence-manager-message.is-error{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-geofence-manager-message.is-success{background:var(--tf-run-tint);color:var(--tf-run)}.tf-geofence-manager-create-actions{padding:4px 14px 8px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.tf-geofence-manager-create-actions button{min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-accent-strong);font-weight:750;cursor:pointer}.tf-geofence-manager-draft{padding:14px;display:grid;gap:12px;overflow:auto}.tf-geofence-manager-draft-callout{display:flex;gap:10px;padding:12px;border-radius:var(--tf-r-sm);background:var(--tf-accent-tint);color:var(--tf-accent-ink)}.tf-geofence-manager-draft-callout span,.tf-geofence-manager-draft-callout strong,.tf-geofence-manager-draft-callout small{display:block}.tf-geofence-manager-draft-callout small{margin-top:3px;color:var(--tf-ink-2);line-height:1.4}.tf-geofence-manager-draft label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:11px;font-weight:750}.tf-geofence-manager-draft input,.tf-geofence-manager-draft select{min-height:42px;padding:8px 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink)}.tf-geofence-manager-draft input[type=color]{padding:5px;width:100%}.tf-geofence-manager-undo{min-height:40px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink-2)}.tf-geofence-manager-draft-buttons{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}.tf-geofence-manager-draft-buttons button{min-height:44px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface);color:var(--tf-ink-2);font-weight:800;cursor:pointer}.tf-geofence-manager-draft-buttons button[type=submit]{border-color:var(--tf-accent);background:var(--tf-accent);color:#fff}.tf-geofence-manager-draft-buttons button:disabled{opacity:.55;cursor:wait}.tf-geofence-manager-list{padding:6px 10px;display:grid;gap:4px;overflow:auto}.tf-geofence-manager-list button{width:100%;display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:center;padding:11px;border:1px solid transparent;border-radius:var(--tf-r-sm);background:transparent;color:var(--tf-ink);text-align:start;cursor:pointer}.tf-geofence-manager-list button:hover,.tf-geofence-manager-list button.is-selected{border-color:var(--tf-accent);background:var(--tf-accent-tint)}.tf-geofence-manager-list i{width:10px;height:28px;border-radius:6px}.tf-geofence-manager-list span{min-width:0}.tf-geofence-manager-list strong,.tf-geofence-manager-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-geofence-manager-list small{margin-top:3px;color:var(--tf-ink-3);font-size:11px}.tf-geofence-manager-detail{margin:8px 14px;padding:14px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2)}.tf-geofence-manager-detail dl{margin:12px 0 0;display:grid;gap:8px}.tf-geofence-manager-detail dl div{display:flex;justify-content:space-between;gap:12px}.tf-geofence-manager-detail dt{color:var(--tf-ink-3)}.tf-geofence-manager-detail dd{margin:0;text-transform:capitalize}.tf-geofence-manager-modes{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.tf-geofence-manager-modes button{min-height:36px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink-2);text-transform:capitalize;cursor:pointer}.tf-geofence-manager-modes button[aria-pressed=true]{border-color:var(--tf-accent);background:var(--tf-accent-tint);color:var(--tf-accent-ink);font-weight:800}.tf-geofence-manager-modes button:disabled{opacity:.6;cursor:not-allowed}.tf-geofence-manager-assign{margin-top:14px;padding-top:12px;border-top:1px solid var(--tf-line)}.tf-geofence-manager-assign header{display:flex;align-items:center;justify-content:space-between}.tf-geofence-manager-assign h4{margin:0;font-size:12px}.tf-geofence-manager-assign header strong{min-width:24px;text-align:center;color:var(--tf-accent-strong);font-variant-numeric:tabular-nums}.tf-geofence-manager-assign>input{width:100%;min-height:38px;margin-top:9px;padding:7px 9px;border:1px solid var(--tf-line);border-radius:8px;background:var(--tf-surface);color:var(--tf-ink)}.tf-geofence-manager-devices{max-height:190px;margin-top:8px;display:grid;gap:3px;overflow:auto}.tf-geofence-manager-devices label{min-height:38px;padding:6px 8px;display:flex;align-items:center;gap:8px;border-radius:8px;color:var(--tf-ink-2);cursor:pointer}.tf-geofence-manager-devices label:hover{background:var(--tf-surface-3)}.tf-geofence-manager-devices input{accent-color:var(--tf-accent)}.tf-geofence-manager-devices span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-geofence-manager footer{margin-top:auto;padding:14px;border-top:1px solid var(--tf-line)}.tf-geofence-manager-editor{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--tf-r-sm);background:var(--tf-accent);color:#fff;font-weight:800;cursor:pointer}.tf-geofence-manager footer p{margin:8px 0 0;color:var(--tf-ink-3);font-size:11px;line-height:1.45;text-align:center}.tf-geofence-manager button:focus-visible{outline:3px solid color-mix(in srgb,var(--tf-accent) 28%,transparent);outline-offset:2px}.tf-waste-visits{height:100%;overflow:auto;padding:28px clamp(18px,4vw,52px) 48px;background:var(--tf-bg);color:var(--tf-ink)}.tf-waste-visits-head,.tf-waste-visits-controls,.tf-waste-visits-card{max-width:1180px;margin-left:auto;margin-right:auto}.tf-waste-visits-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:20px}.tf-waste-visits-head span,.tf-waste-visits-card header span{color:var(--tf-accent-strong);font-size:10px;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.tf-waste-visits h1{margin:5px 0;font-size:28px}.tf-waste-visits-head p{margin:0;color:var(--tf-ink-2);font-size:13px}.tf-waste-visits-head>svg{color:var(--tf-accent-strong)}.tf-waste-visits-controls{display:grid;grid-template-columns:1fr 1fr 1fr 1.5fr;gap:12px;padding:16px;margin-bottom:16px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-waste-visits-controls label{display:grid;gap:5px;color:var(--tf-ink-2);font-size:10px;font-weight:750;text-transform:uppercase}.tf-waste-visits-controls input{height:40px;padding:0 10px;border:1px solid var(--tf-line);border-radius:var(--tf-r-sm);background:var(--tf-surface-2);color:var(--tf-ink);font:600 11px var(--tf-sans)}.tf-waste-visits-card{padding:18px;border:1px solid var(--tf-line);border-radius:var(--tf-r);background:var(--tf-surface);box-shadow:var(--tf-shadow-sm)}.tf-waste-visits-card>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.tf-waste-visits-card h2{margin:3px 0 0;font-size:18px}.tf-waste-actions{display:flex;gap:6px}.tf-waste-actions button{padding:9px 12px;border:1px solid var(--tf-accent-strong);border-radius:8px;background:var(--tf-accent-strong);color:var(--tf-on-accent);font:750 10px var(--tf-sans)}.tf-waste-actions button:disabled{opacity:.5}.tf-waste-meta{margin-bottom:10px;color:var(--tf-ink-2);font-size:11px}.tf-waste-meta b{color:var(--tf-ink);font-size:18px}.tf-waste-table-scroll{overflow:auto;border:1px solid var(--tf-line-2);border-radius:10px}.tf-waste-table-scroll table{width:100%;min-width:1100px;border-collapse:collapse;font-size:10px}.tf-waste-table-scroll th{padding:10px;text-align:left;background:var(--tf-surface-2);color:var(--tf-ink-2);font-size:9px;text-transform:uppercase;white-space:nowrap}.tf-waste-table-scroll td{padding:10px;border-top:1px solid var(--tf-line-2);white-space:nowrap;color:var(--tf-ink-2)}.tf-waste-table-scroll td:first-child{color:var(--tf-ink)}.tf-waste-table-scroll small{display:block;margin-top:3px;color:var(--tf-ink-3);font-size:9px}.tf-waste-status{padding:4px 7px;border-radius:999px;background:var(--tf-surface-2);font-weight:750;text-transform:capitalize}.tf-waste-status.is-visited{background:var(--tf-run-tint);color:var(--tf-run)}.tf-waste-status.is-missed{background:var(--tf-alert-tint);color:var(--tf-alert)}.tf-waste-honesty{display:grid;gap:6px;justify-items:center;padding:48px 20px;text-align:center;color:var(--tf-ink-2)}.tf-waste-honesty svg{color:var(--tf-idle)}.tf-waste-honesty strong{color:var(--tf-ink);font-size:14px}.tf-waste-warning{padding:9px;background:var(--tf-idle-tint);color:var(--tf-idle);font-size:10px}.tf-waste-customer-unavailable{margin:0;align-self:center;color:var(--tf-ink-2);font-size:10px;font-weight:600;text-transform:none}@media (max-width:800px){.tf-waste-visits-controls{grid-template-columns:1fr 1fr}.tf-waste-search{grid-column:1/-1}}@media (max-width:500px){.tf-waste-visits-controls{grid-template-columns:1fr}.tf-waste-search{grid-column:auto}.tf-waste-visits-card>header{align-items:flex-start;flex-direction:column;gap:10px}}:root{color-scheme:light;--tf-bg:#EEF3F6;--tf-surface:#FFFFFF;--tf-surface-2:#F7FAFC;--tf-surface-3:#FBFDFE;--tf-ink:#0E1B2A;--tf-ink-2:#45586C;--tf-ink-3:#7E8FA0;--tf-line:#E1E9EF;--tf-line-2:#EDF2F6;--tf-accent:#0FA3B1;--tf-accent-strong:#0B7C88;--tf-accent-tint:#E0F4F6;--tf-accent-ink:#06525A;--tf-run:#16A34A;--tf-run-tint:#E6F6EC;--tf-idle:#D97706;--tf-idle-tint:#FBF0DE;--tf-stop:#5B6B7E;--tf-stop-tint:#EBEFF3;--tf-offline:#94A3B8;--tf-offline-tint:#EEF1F5;--tf-nodata:#94A3B8;--tf-nodata-tint:#EEF1F5;--tf-alert:#DC2626;--tf-alert-tint:#FBE7E7;--tf-cold:#2563EB;--tf-cold-tint:#E5EDFD;--tf-fuel:#6D5AE6;--tf-fuel-tint:#EAE7FC;--tf-warm:#EA580C;--tf-warm-tint:#FCEADF;--tf-status-moving:#16A34A;--tf-status-moving-tint:#E6F6EC;--tf-status-idle:#2563EB;--tf-status-idle-tint:#E5EDFD;--tf-status-stopped:#92400E;--tf-status-stopped-tint:#F5E9DF;--tf-status-inactive:#5B6B7E;--tf-status-inactive-tint:#EBEFF3;--tf-status-nodata:#94A3B8;--tf-status-nodata-tint:#EEF1F5;--tf-status-moving-ink:#0F7A37;--tf-status-idle-ink:#1A47B8;--tf-status-stopped-ink:#6E3108;--tf-status-inactive-ink:#3E4C5C;--tf-status-nodata-ink:#64748B;--tf-nav-dashboard:#159DAA;--tf-nav-live:#14A349;--tf-nav-alerts:#E31C1C;--tf-nav-dispatch:#1C5AE3;--tf-nav-geofences:#371CE3;--tf-nav-commands:#1C7DE3;--tf-nav-fleet-wall:#E3601C;--tf-nav-fuel:#CF7A1A;--tf-nav-insight:#179CBC;--tf-nav-fleet:#E3671C;--tf-nav-connectivity:#271CE3;--tf-nav-vms:#651CE3;--tf-nav-insurance:#14A195;--tf-nav-waste:#14A34A;--tf-nav-compliance:#DE701B;--tf-nav-admin:#1C6EE3;--tf-nav-platform-ops:#E31C4D;--tf-nav-setup:#609F14;--tf-shadow:0 1px 2px rgba(16,32,48,.04),0 8px 24px -12px rgba(16,32,48,.18);--tf-shadow-sm:0 1px 2px rgba(16,32,48,.06);--tf-r:16px;--tf-r-sm:10px;--tf-on-accent:#FFFFFF;--tf-hero-bg:#0C1420;--tf-hero-bg-2:#080D14;--tf-hero-ink:#F2F7FA;--tf-hero-ink-2:#AAB6C4;--tf-ok:var(--tf-run);--tf-ok-ink:#15803D;--tf-ok-line:#86D3A4;--tf-ok-bg:var(--tf-run-tint);--tf-ok-tint:var(--tf-run-tint);--tf-warn:var(--tf-idle);--tf-warn-ink:#B45309;--tf-warn-line:#E8BE7A;--tf-warn-bg:var(--tf-idle-tint);--tf-warn-tint:var(--tf-idle-tint);--tf-bad:var(--tf-alert);--tf-bad-ink:#B91C1C;--tf-bad-line:#EFA3A3;--tf-bad-bg:var(--tf-alert-tint);--tf-bad-tint:var(--tf-alert-tint);--tf-risk:var(--tf-alert);--tf-risk-ink:#B91C1C;--tf-risk-line:#EFA3A3;--tf-risk-tint:var(--tf-alert-tint);--tf-line-strong:#C6D4DE;--tf-r-md:12px;--tf-radius:var(--tf-r);--tf-radius-sm:var(--tf-r-sm);--tf-surface-1:var(--tf-surface);--tf-surface-muted:var(--tf-surface-2);--tf-text:var(--tf-ink);--tf-focus:var(--tf-accent);--tf-mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;--tf-night:var(--tf-bg);--tf-panel:var(--tf-surface);--tf-raised:var(--tf-surface-2);--tf-inset:var(--tf-surface-3);--tf-line-soft:var(--tf-line-2);--tf-accent-deep:var(--tf-accent-strong);--tf-accent-weak:var(--tf-accent-tint);--tf-inact:var(--tf-offline);--tf-sans:Inter,ui-sans-serif,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}html,body,#root{margin:0;height:100%;background:var(--tf-night);color:var(--tf-ink);font-family:var(--tf-sans);font-size:14px;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}button,input,select,textarea{font:inherit}:focus{outline:none}:focus-visible{outline:2px solid var(--tf-accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@media (max-width: 1599px){.tf-work,.tf-work-inspector{display:block;position:relative}.tf-map{position:absolute;top:0;right:0;bottom:0;left:0}.tf-fleet-dock,.tf-inspector{position:absolute;top:0;bottom:0;z-index:10;box-shadow:var(--tf-shadow)}.tf-work-playback-evidence .tf-evidence{inset-inline-end:min(372px,calc(88vw + 12px))}.tf-drawer-toggle-fleet.is-open{inset-inline-start:calc(var(--tf-fleet-width) + 8px)}.tf-drawer-toggle-detail.is-open{inset-inline-end:min(368px,calc(88vw + 8px))}.tf-fleet-dock{inset-inline-start:0;bottom:auto;height:var(--tf-fleet-height);width:var(--tf-fleet-width);border-inline-end:1px solid var(--tf-line)}.tf-inspector{inset-inline-end:0;width:min(360px,88vw);border-inline-start:1px solid var(--tf-line)}.tf-work-video{--tf-wall-gutter: 0px;--tf-wall-width: calc((100vw - 60px)/2) }.tf-work-video.tf-work-inspector:not(.tf-work-detail-collapsed){--tf-wall-gutter: min(360px, 88vw);--tf-wall-width: calc((100vw - 60px - min(360px, 88vw))/2) }.tf-work-video .tf-live-wall{position:absolute;top:0;bottom:0;inset-inline-start:0;width:var(--tf-wall-width)}.tf-work-video .tf-map{inset-inline-start:var(--tf-wall-width);inset-inline-end:var(--tf-wall-gutter)}.tf-work-video .tf-fleet-dock{inset-inline-start:0;max-width:calc(100% - var(--tf-wall-gutter))}.tf-work-video:not(:has(.tf-live-wall)),.tf-work-video.tf-work-inspector:not(:has(.tf-live-wall)){--tf-wall-gutter: 0px;--tf-wall-width: 0px}}@media (max-width: 1140px){.tf-work-video{--tf-wall-stack: 45%}.tf-work-video .tf-live-wall{inset-inline:0;top:auto;bottom:0;width:auto;height:var(--tf-wall-stack);border-inline-start:0;border-top:1px solid var(--tf-line)}.tf-work-video .tf-map{inset:0 0 var(--tf-wall-stack) 0}.tf-work-video .tf-fleet-dock{inset-inline-start:0;max-width:100%}}@media (max-width: 900px){.tf-work{--tf-fleet-width: 88vw}.tf-drawer-toggle-fleet.is-open{inset-inline-start:calc(var(--tf-fleet-width) + 8px)}.tf-work-inspector:not(.tf-work-detail-collapsed) .tf-fleet-dock,.tf-work-inspector:not(.tf-work-detail-collapsed) .tf-drawer-toggle-fleet{display:none}}@media (max-width: 640px){.tf-app{grid-template-columns:48px 1fr}.tf-fleet-dock,.tf-inspector{top:auto;bottom:0;left:0;right:0;height:55vh;width:100%;overflow:hidden;border-radius:var(--tf-r) var(--tf-r) 0 0;border-top:1px solid var(--tf-line);border-right:none;border-left:none}.tf-fleet-dock{z-index:10}.tf-inspector{z-index:11;height:62vh}.tf-drawer-toggle{top:10px}.tf-drawer-toggle-fleet.is-open{top:calc(45vh + 8px);inset-inline-start:auto;inset-inline-end:10px}.tf-drawer-toggle-detail.is-open{top:calc(38vh + 8px);inset-inline-end:10px}.tf-work-playback-evidence .tf-inspector,.tf-work-playback-evidence .tf-drawer-toggle-detail{display:none}.tf-work-playback-evidence .tf-evidence{inset-inline-end:6px}}
