:root{--bg:14 16 19;--surface:22 25 30;--raised:29 33 39;--hover:38 43 51;--line:42 47 55;--line-strong:100 107 120;--fg:242 244 247;--fg-2:190 196 206;--fg-3:154 162 175;--fg-disabled:93 100 112;--accent:106 161 255;--accent-fill:43 104 224;--on-accent:255 255 255;--ok:61 214 140;--warn:242 184 75;--danger:255 122 122;--ok-fill:14 122 58;--danger-fill:196 35 35;--focus:106 161 255;--override:156 134 255;--override-fill:91 63 224;--map-clear:76 175 80;--map-tight:245 158 11;--map-blocked:244 67 54;--map-override:122 92 255;--map-neutral:154 162 175;--map-bg:10 15 24;--gbtn-bg:19 19 20;--gbtn-line:142 145 143;--gbtn-fg:227 227 227}html.theme-light{--bg:245 245 247;--surface:255 255 255;--raised:255 255 255;--hover:236 236 239;--line:217 218 224;--line-strong:138 141 150;--fg:29 29 31;--fg-2:70 71 76;--fg-3:104 106 113;--fg-disabled:161 162 168;--accent:31 95 214;--accent-fill:31 95 214;--on-accent:255 255 255;--ok:14 122 58;--warn:151 82 0;--danger:196 35 35;--ok-fill:14 122 58;--danger-fill:196 35 35;--focus:31 95 214;--override:91 63 224;--override-fill:91 63 224;--map-clear:76 175 80;--map-tight:245 158 11;--map-blocked:244 67 54;--map-override:122 92 255;--map-neutral:154 162 175;--map-bg:10 15 24;--gbtn-bg:255 255 255;--gbtn-line:116 119 117;--gbtn-fg:31 31 31}:root{--fs-caption:0.75rem;--fs-footnote:0.8125rem;--fs-body:0.875rem;--fs-callout:1rem;--fs-title3:1.25rem;--fs-title2:1.5rem;--fs-title1:2rem}.compass-field,.field,.field-surface{--fs-caption:0.875rem;--fs-footnote:0.875rem}body{font-variant-numeric:tabular-nums}:root{--r-control:8px;--r-card:12px;--r-sheet:20px;--h-compact:32px;--h-control:36px;--h-touch:44px;--shadow-1:0 1px 2px rgb(0 0 0/0.5);--shadow-2:0 8px 24px rgb(0 0 0/0.5),0 0 0 1px rgb(255 255 255/0.06);--shadow-3:0 24px 64px rgb(0 0 0/0.6),0 0 0 1px rgb(255 255 255/0.08)}html.theme-light{--shadow-1:0 1px 2px rgb(0 0 0/0.06),0 1px 1px rgb(0 0 0/0.04);--shadow-2:0 4px 12px rgb(0 0 0/0.08),0 1px 3px rgb(0 0 0/0.06);--shadow-3:0 16px 48px rgb(0 0 0/0.14),0 2px 8px rgb(0 0 0/0.06)}@media (pointer:coarse){:root{--h-control:44px}}:root{--dur-press:80ms;--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--dur-reveal:480ms;--ease-out:cubic-bezier(0.2,0.8,0.2,1);--ease-in:cubic-bezier(0.4,0,1,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-sheet:cubic-bezier(0.32,0.72,0,1);--ease-spring:cubic-bezier(0.34,1.36,0.64,1)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}}@keyframes verdict-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}[data-verdict-arrive]{animation:verdict-rise var(--dur-base) var(--ease-out) var(--dur-fast) both}.fl-mark{overflow:visible}.fl-ground{stroke:rgb(var(--fg-3));stroke-width:2;stroke-linecap:round;stroke-dasharray:1}.fl-beam,.fl-pulse{stroke:rgb(var(--accent));stroke-width:2;stroke-linecap:round;stroke-dasharray:1}.fl-pulse{opacity:0}.fl-site{fill:rgb(var(--accent));transform-box:fill-box;transform-origin:center}.fl-current .fl-ground{stroke:currentColor;stroke-opacity:.6}.fl-current .fl-beam,.fl-current .fl-pulse{stroke:currentColor}.fl-current .fl-site{fill:currentColor}[data-anim=intro] .fl-ground{animation:fl-draw var(--dur-slow) var(--ease-out) both}[data-anim=intro] .fl-a{animation:fl-pop var(--dur-base) var(--ease-spring) .24s both}[data-anim=intro] .fl-b{animation:fl-pop var(--dur-base) var(--ease-spring) var(--dur-slow) both}[data-anim=intro] .fl-beam{animation:fl-draw .36s var(--ease-out) var(--dur-reveal) both}[data-anim=scan] .fl-beam{opacity:.35}[data-anim=scan] .fl-pulse{opacity:1;stroke-dasharray:.18 .82;animation:fl-scan 1.2s linear infinite}[data-anim=scan] .fl-b{animation:fl-ping 1.2s var(--ease-out) infinite}@media (hover:hover){:hover>[data-anim=idle] .fl-beam,[data-anim=idle]:hover .fl-beam{animation:fl-draw .36s var(--ease-out)}}@keyframes fl-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes fl-pop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.15);opacity:1}to{transform:scale(1)}}@keyframes fl-scan{0%{stroke-dashoffset:.18}to{stroke-dashoffset:-1}}@keyframes fl-ping{0%,78%{transform:scale(1)}88%{transform:scale(1.3)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.fl-mark *{animation:none!important}[data-anim=scan] .fl-pulse{display:none}[data-anim=scan] .fl-beam{opacity:1}}