.dmx-root{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;--dmx-cycle: 1.5s;--dmx-opacity-base: .16;--dmx-opacity-mid: .32;--dmx-opacity-peak: 1;--dmx-halo-level: 0}.dmx-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr))}.dmx-dot{border-radius:999px;clip-path:none;display:block;background:var(--dmx-dot-fill, currentColor);opacity:calc(.5 * (var(--dmx-opacity-base) + var(--dmx-opacity-mid)));--dmx-bloom-level: 0;transform-origin:center;transform:none;will-change:opacity}.dmx-root.dmx-dot-shape-circle .dmx-dot{border-radius:999px;clip-path:none;-webkit-mask:none;mask:none}.dmx-root.dmx-dot-shape-square .dmx-dot{border-radius:0;clip-path:none;-webkit-mask:none;mask:none}.dmx-root.dmx-dot-shape-diamond .dmx-dot{border-radius:0;clip-path:none;-webkit-mask:none;mask:none;transform:rotate(45deg) scale(.7071067812)}.dmx-root.dmx-dot-shape-hearts .dmx-dot{position:relative;border-radius:0;clip-path:none;transform:none;background:none;-webkit-mask:none;mask:none}.dmx-root.dmx-dot-shape-hearts .dmx-dot:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--dmx-dot-fill, currentColor);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='black' d='m8.593.827c-1.008.012-1.953.464-2.593,1.227-.641-.762-1.586-1.214-2.598-1.227C1.519.839-.007,2.378,0,4.257,0,8.362,4.201,10.875,5.488,11.547h0c.16.084.336.125.511.125s.352-.042.511-.125c1.287-.672,5.489-3.184,5.489-7.289.007-1.88-1.519-3.42-3.407-3.431Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='black' d='m8.593.827c-1.008.012-1.953.464-2.593,1.227-.641-.762-1.586-1.214-2.598-1.227C1.519.839-.007,2.378,0,4.257,0,8.362,4.201,10.875,5.488,11.547h0c.16.084.336.125.511.125s.352-.042.511-.125c1.287-.672,5.489-3.184,5.489-7.289.007-1.88-1.519-3.42-3.407-3.431Z'/%3E%3C/svg%3E");-webkit-mask-position:center;mask-position:center;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.dmx-bloom .dmx-dot{filter:drop-shadow(0 0 calc(var(--dmx-dot-size, 3px) * .75 * max(var(--dmx-bloom-level, 0),var(--dmx-halo-level, 0))) currentColor) drop-shadow(0 0 calc(var(--dmx-dot-size, 3px) * 1.35 * max(var(--dmx-bloom-level, 0),var(--dmx-halo-level, 0))) currentColor);will-change:opacity,filter}.dmx-root.dmx-bloom-halo.dmx-bloom .dmx-dot{filter:drop-shadow(0 0 calc(var(--dmx-dot-size, 3px) * .92 * max(var(--dmx-bloom-level, 0),var(--dmx-halo-level, 0))) currentColor) drop-shadow(0 0 calc(var(--dmx-dot-size, 3px) * 1.62 * max(var(--dmx-bloom-level, 0),var(--dmx-halo-level, 0))) currentColor) drop-shadow(0 0 calc(var(--dmx-dot-size, 3px) * 2.55 * max(var(--dmx-bloom-level, 0),var(--dmx-halo-level, 0))) currentColor);will-change:opacity,filter}.dmx-muted .dmx-dot{opacity:calc(.44 * var(--dmx-opacity-mid));--dmx-bloom-level: 0}.dmx-dot.dmx-inactive{opacity:0!important;--dmx-bloom-level: 0;animation:none!important;visibility:hidden;pointer-events:none;will-change:auto;filter:none}.dmx-ripple{animation:dmx-ripple calc(var(--dmx-cycle) * var(--dmx-speed, 1)) cubic-bezier(.42,0,.58,1) infinite;animation-delay:calc(var(--dmx-ripple-ring, 0) * .2333 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-ripple-echo{animation:dmx-ripple-echo calc(var(--dmx-cycle) * var(--dmx-speed, 1)) ease-in-out infinite;animation-delay:calc((var(--dmx-ripple-ring, 0) * .14 + var(--dmx-ripple-parity, 0) * .03) * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-center-origin-ripple{animation:dmx-center-origin-ripple calc(var(--dmx-cycle) * var(--dmx-speed, 1)) ease-in-out infinite;animation-delay:calc(var(--dmx-center-ripple-ring, 0) * .16 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-collapse{animation:dmx-collapse calc(var(--dmx-cycle) * .2 * var(--dmx-speed, 1)) ease-in forwards;animation-delay:calc((4 - var(--dmx-manhattan, 0)) * .032 * var(--dmx-cycle) * var(--dmx-speed, 1))}.dmx-hover-ripple{animation:dmx-hover-ripple calc(var(--dmx-cycle) * var(--dmx-speed, 1)) ease-in-out infinite;animation-delay:calc(var(--dmx-distance, 0) * .127 * var(--dmx-cycle) * var(--dmx-speed, 1))}.dmx-path{animation:dmx-ripple calc(var(--dmx-cycle) * var(--dmx-speed, 1)) cubic-bezier(.42,0,.58,1) infinite;animation-delay:calc(var(--dmx-path, 0) * .2333 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-root.dmx-matrix-3{--dmx-cycle: 1.5s}.dmx-path-3{animation:dmx-ripple-3 calc(.68 * var(--dmx-cycle) * var(--dmx-speed, 1)) cubic-bezier(.42,0,.58,1) infinite;animation-delay:calc(var(--dmx-path, 0) * .19 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-diagonal-alt-sweep{animation:dmx-diagonal-alt-sweep calc(var(--dmx-cycle) * var(--dmx-speed, 1)) linear infinite;animation-delay:calc((var(--dmx-path, 0) * .2 + var(--dmx-diagonal-parity, 0) * .5) * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-spiral-snake{animation:dmx-spiral-snake calc(var(--dmx-cycle) * var(--dmx-speed, 1)) linear infinite;animation-delay:calc(var(--dmx-spiral-order, 0) * .04 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-spiral-snake-3{animation:dmx-spiral-snake calc(.78 * var(--dmx-cycle) * var(--dmx-speed, 1)) linear infinite;animation-delay:calc(var(--dmx-spiral-order, 0) * .038 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-center-ripple-3{animation:dmx-center-origin-ripple calc(.82 * var(--dmx-cycle) * var(--dmx-speed, 1)) ease-in-out infinite;animation-delay:calc(var(--dmx-center-ripple-ring, 0) * .11 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-snake-path-3{animation:dmx-ripple-3 calc(1.04 * var(--dmx-cycle) * var(--dmx-speed, 1)) cubic-bezier(.42,0,.58,1) infinite;animation-delay:calc(var(--dmx-snake-order, 0) * .085 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-frame-chase-3{animation:dmx-ripple-3 calc(.98 * var(--dmx-cycle) * var(--dmx-speed, 1)) cubic-bezier(.42,0,.58,1) infinite;animation-delay:calc(var(--dmx-frame-order, 0) * .09 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-core-pulse-3{animation:dmx-ripple-3 calc(.46 * var(--dmx-cycle) * var(--dmx-speed, 1)) cubic-bezier(.42,0,.58,1) infinite;will-change:opacity}.dmx-distance-ripple-3{animation:dmx-ripple-3 calc(1.3 * var(--dmx-cycle) * var(--dmx-speed, 1)) ease-out infinite;animation-delay:calc(var(--dmx-distance, 0) * .13 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-ripple-echo-3{animation:dmx-ripple-echo calc(1.06 * var(--dmx-cycle) * var(--dmx-speed, 1)) ease-in-out infinite;animation-delay:calc((var(--dmx-ripple-ring, 0) * .1 + var(--dmx-ripple-parity, 0) * .02) * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-diagonal-snake{animation:dmx-diagonal-snake calc(var(--dmx-cycle) * var(--dmx-speed, 1)) linear infinite;animation-delay:calc(var(--dmx-diagonal-snake-order, 0) * .04 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-outer-snake{animation:dmx-ring-snake calc(var(--dmx-cycle) * var(--dmx-speed, 1)) linear infinite;animation-delay:calc(var(--dmx-outer-order, 0) * .0625 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}.dmx-middle-snake{animation:dmx-ring-snake calc(var(--dmx-cycle) * var(--dmx-speed, 1)) linear infinite;animation-delay:calc(var(--dmx-middle-order, 0) * .125 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}@keyframes dmx-ripple{0%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}50%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}}@keyframes dmx-ripple-3{0%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}3%{opacity:calc(.62 * var(--dmx-opacity-mid) + .38 * var(--dmx-opacity-base));--dmx-bloom-level: 0}6%{opacity:calc(.35 * var(--dmx-opacity-peak) + .65 * var(--dmx-opacity-mid));--dmx-bloom-level: .35}10%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}14%{opacity:calc(.35 * var(--dmx-opacity-peak) + .65 * var(--dmx-opacity-mid));--dmx-bloom-level: .35}17%{opacity:calc(.62 * var(--dmx-opacity-mid) + .38 * var(--dmx-opacity-base));--dmx-bloom-level: 0}20%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}@keyframes dmx-ripple-echo{0%,to{opacity:calc(.625 * var(--dmx-opacity-base));--dmx-bloom-level: 0}28%{opacity:calc(.98 * var(--dmx-opacity-peak));--dmx-bloom-level: .9}56%{opacity:var(--dmx-opacity-mid);--dmx-bloom-level: 0}78%{opacity:calc(.68 * var(--dmx-opacity-peak) + .32 * var(--dmx-opacity-mid));--dmx-bloom-level: 0}}@keyframes dmx-center-origin-ripple{0%,to{opacity:calc(.625 * var(--dmx-opacity-base));--dmx-bloom-level: 0}34%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}60%{opacity:calc(.5 * (var(--dmx-opacity-base) + var(--dmx-opacity-mid)));--dmx-bloom-level: 0}}@keyframes dmx-collapse{0%{opacity:calc(.95 * var(--dmx-opacity-peak) + .05 * var(--dmx-opacity-mid));--dmx-bloom-level: .75}to{opacity:calc(.375 * var(--dmx-opacity-base));--dmx-bloom-level: 0}}@keyframes dmx-hover-ripple{0%{opacity:calc(.5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}45%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}@keyframes dmx-diagonal-alt-sweep{0%,to{opacity:calc(.5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}14%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}30%{opacity:calc(.75 * var(--dmx-opacity-base));--dmx-bloom-level: 0}}@keyframes dmx-spiral-snake{0%,to{opacity:calc(.5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}8%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}16%{opacity:calc(.5 * var(--dmx-opacity-peak) + .4 * var(--dmx-opacity-mid) + .1 * var(--dmx-opacity-base));--dmx-bloom-level: 0}24%{opacity:calc(.25 * var(--dmx-opacity-peak) + .45 * var(--dmx-opacity-mid) + .3 * var(--dmx-opacity-base));--dmx-bloom-level: 0}32%{opacity:calc(.5 * var(--dmx-opacity-mid) + .5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}40%{opacity:calc(.75 * var(--dmx-opacity-base));--dmx-bloom-level: 0}}@keyframes dmx-diagonal-snake{0%,to{opacity:calc(.5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}8%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}16%{opacity:calc(.5 * var(--dmx-opacity-peak) + .4 * var(--dmx-opacity-mid) + .1 * var(--dmx-opacity-base));--dmx-bloom-level: 0}24%{opacity:calc(.25 * var(--dmx-opacity-peak) + .45 * var(--dmx-opacity-mid) + .3 * var(--dmx-opacity-base));--dmx-bloom-level: 0}32%{opacity:calc(.5 * var(--dmx-opacity-mid) + .5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}40%{opacity:calc(.75 * var(--dmx-opacity-base));--dmx-bloom-level: 0}}@keyframes dmx-ring-snake{0%,to{opacity:calc(.5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}10%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}20%{opacity:calc(.45 * var(--dmx-opacity-peak) + .45 * var(--dmx-opacity-mid) + .1 * var(--dmx-opacity-base));--dmx-bloom-level: 0}30%{opacity:calc(.2 * var(--dmx-opacity-peak) + .4 * var(--dmx-opacity-mid) + .4 * var(--dmx-opacity-base));--dmx-bloom-level: 0}40%{opacity:calc(.875 * var(--dmx-opacity-base));--dmx-bloom-level: 0}}.dmx-square9-bit{animation-duration:calc(5.2s * var(--dmx-speed, 1));animation-timing-function:steps(52,end);animation-iteration-count:infinite;will-change:opacity}.dmx-square9-d1{animation-name:dmx-square9-d1}.dmx-square9-d2{animation-name:dmx-square9-d2}.dmx-square9-d3{animation-name:dmx-square9-d3}.dmx-square9-d4{animation-name:dmx-square9-d4}.dmx-square9-d5{animation-name:dmx-square9-d5}.dmx-square9-d6{animation-name:dmx-square9-d6}@keyframes dmx-square9-d1{0%,3.846154%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}3.846154%,30.769231%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}30.769231%,46.153846%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}46.153846%,50%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}50%,53.846154%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}53.846154%,57.692308%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}57.692308%,65.384615%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}65.384615%,71.153846%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}71.153846%,80.769231%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}80.769231%,84.615385%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}84.615385%,88.461538%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}88.461538%,92.307692%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}92.307692%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}@keyframes dmx-square9-d2{0%,5.769231%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}5.769231%,25%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}25%,30.769231%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}30.769231%,36.538462%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}36.538462%,50%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}50%,53.846154%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}53.846154%,57.692308%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}57.692308%,61.538462%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}61.538462%,65.384615%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}65.384615%,76.923077%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}76.923077%,80.769231%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}80.769231%,84.615385%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}84.615385%,88.461538%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}88.461538%,92.307692%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}92.307692%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}@keyframes dmx-square9-d3{0%,7.692308%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}7.692308%,25%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}25%,36.538462%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}36.538462%,42.307692%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}42.307692%,46.153846%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}46.153846%,50%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}50%,53.846154%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}53.846154%,57.692308%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}57.692308%,71.153846%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}71.153846%,76.923077%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}76.923077%,80.769231%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}80.769231%,84.615385%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}84.615385%,88.461538%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}88.461538%,92.307692%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}92.307692%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}@keyframes dmx-square9-d4{0%,13.461538%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}13.461538%,30.769231%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}30.769231%,50%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}50%,53.846154%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}53.846154%,57.692308%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}57.692308%,61.538462%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}61.538462%,65.384615%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}65.384615%,71.153846%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}71.153846%,84.615385%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}84.615385%,88.461538%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}88.461538%,92.307692%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}92.307692%,96.153846%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}96.153846%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}@keyframes dmx-square9-d5{0%,15.384615%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}15.384615%,25%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}25%,30.769231%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}30.769231%,36.538462%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}36.538462%,46.153846%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}46.153846%,50%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}50%,53.846154%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}53.846154%,57.692308%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}57.692308%,65.384615%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}65.384615%,76.923077%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}76.923077%,84.615385%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}84.615385%,88.461538%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}88.461538%,92.307692%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}92.307692%,96.153846%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}96.153846%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}@keyframes dmx-square9-d6{0%,17.307692%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}17.307692%,25%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}25%,36.538462%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}36.538462%,42.307692%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}42.307692%,50%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}50%,53.846154%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}53.846154%,57.692308%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}57.692308%,61.538462%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}61.538462%,71.153846%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}71.153846%,76.923077%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}76.923077%,84.615385%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}84.615385%,88.461538%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}88.461538%,92.307692%{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}92.307692%,96.153846%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}96.153846%,to{opacity:var(--dmx-opacity-base);--dmx-bloom-level: 0}}.dmx-square6-col-snake{animation:dmx-square6-col-snake calc(var(--dmx-cycle) * var(--dmx-speed, 1)) steps(5,end) infinite;animation-delay:calc(var(--dmx-col-pos, 0) * .2 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}@keyframes dmx-square6-col-snake{0%,20%{opacity:calc(.6 * var(--dmx-opacity-peak) + .25 * var(--dmx-opacity-mid) + .15 * var(--dmx-opacity-base));--dmx-bloom-level: 0}20%,40%{opacity:calc(.3 * var(--dmx-opacity-peak) + .5 * var(--dmx-opacity-mid) + .2 * var(--dmx-opacity-base));--dmx-bloom-level: 0}40%,60%{opacity:calc(.6 * var(--dmx-opacity-mid) + .4 * var(--dmx-opacity-base));--dmx-bloom-level: 0}60%,80%{opacity:calc(.2 * var(--dmx-opacity-mid) + .8 * var(--dmx-opacity-base));--dmx-bloom-level: 0}80%,to{opacity:calc(.625 * var(--dmx-opacity-base));--dmx-bloom-level: 0}}.dmx-circular2-ring{animation:dmx-circular2-ring calc(var(--dmx-cycle) * var(--dmx-speed, 1)) steps(12,end) infinite;animation-delay:calc(var(--dmx-ring-order, 0) * .0833333333 * var(--dmx-cycle) * var(--dmx-speed, 1));will-change:opacity}@keyframes dmx-circular2-ring{0%,8.333333%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}8.333333%,16.666667%{opacity:calc(.6 * var(--dmx-opacity-peak) + .4 * var(--dmx-opacity-mid));--dmx-bloom-level: 0}16.666667%,25%{opacity:calc(.5 * var(--dmx-opacity-mid) + .5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}25%,33.333333%{opacity:calc(.3 * var(--dmx-opacity-mid) + .7 * var(--dmx-opacity-base));--dmx-bloom-level: 0}33.333333%,41.666667%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}41.666667%,50%{opacity:calc(.6 * var(--dmx-opacity-peak) + .4 * var(--dmx-opacity-mid));--dmx-bloom-level: 0}50%,58.333333%{opacity:calc(.5 * var(--dmx-opacity-mid) + .5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}58.333333%,66.666667%{opacity:calc(.3 * var(--dmx-opacity-mid) + .7 * var(--dmx-opacity-base));--dmx-bloom-level: 0}66.666667%,75%{opacity:var(--dmx-opacity-peak);--dmx-bloom-level: 1}75%,83.333333%{opacity:calc(.6 * var(--dmx-opacity-peak) + .4 * var(--dmx-opacity-mid));--dmx-bloom-level: 0}83.333333%,91.666667%{opacity:calc(.5 * var(--dmx-opacity-mid) + .5 * var(--dmx-opacity-base));--dmx-bloom-level: 0}91.666667%,to{opacity:calc(.3 * var(--dmx-opacity-mid) + .7 * var(--dmx-opacity-base));--dmx-bloom-level: 0}}@media(prefers-reduced-motion:reduce){.dmx-dot,.dmx-ripple,.dmx-ripple-echo,.dmx-center-origin-ripple,.dmx-collapse,.dmx-hover-ripple,.dmx-path,.dmx-path-3,.dmx-diagonal-alt-sweep,.dmx-spiral-snake,.dmx-spiral-snake-3,.dmx-center-ripple-3,.dmx-snake-path-3,.dmx-frame-chase-3,.dmx-core-pulse-3,.dmx-distance-ripple-3,.dmx-ripple-echo-3,.dmx-diagonal-snake,.dmx-outer-snake,.dmx-middle-snake,.dmx-square9-bit,.dmx-square6-col-snake,.dmx-circular2-ring{animation:none!important;transition:none!important}}:root{--ground: #141314;--line: #25281e;--line2: #202318;--border: #33362a;--cream: #f5f3ec;--mut: #8e8c7e;--dim: #5c5c50;--silver: #c9c7ba;--green: #16a34a;--green2: #22c55e;--orange: #e0894a;--red: #e0614a;--blue: #5b8def;--font-display: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--ground);color:var(--cream);font-family:var(--font-display);-webkit-font-smoothing:antialiased;overflow-x:hidden}button{font-family:inherit;color:inherit;background:none;border:0;cursor:pointer}input,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;box-shadow:none}svg{flex:none}.app{height:100%;display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-rows:54px 1fr;overflow:hidden}.rail{grid-row:1 / 3;position:fixed;left:0;top:0;bottom:0;width:56px;z-index:60;background:var(--ground);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:4px;padding:11px 0;overflow:hidden;transition:width .16s ease}.rail:hover{width:212px;box-shadow:10px 0 30px #0006}.rail-logo{display:flex;align-items:center;gap:12px;padding:10px 0 30px 14px}.logo{width:28px;height:auto;display:block;flex:none}.rail-word{font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--cream);white-space:nowrap;opacity:0;transition:opacity .14s}.rail:hover .rail-word{opacity:1}.rail-ic{display:flex;align-items:center;gap:13px;height:38px;padding-left:20px;color:var(--dim);transition:color .13s;text-decoration:none;white-space:nowrap}.rail-ico{display:flex;align-items:center;justify-content:center;width:16px;flex:none}.rail-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:0;transition:opacity .14s}.rail:hover .rail-label{opacity:1}.rail-ic:hover,.rail-ic.on{color:var(--cream)}.rail-ic.on .rail-ico svg{color:var(--green2)}.rail-spacer{flex:1}.rail-nav{display:flex;flex-direction:column}.rail-group{display:flex;flex-direction:column;gap:4px}.rail-group+.rail-group{margin-top:8px}.rail-group-h{height:0;opacity:0;overflow:hidden;padding-left:20px;white-space:nowrap;font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);transition:opacity .14s,height .16s}.rail:hover .rail-group-h{height:20px;line-height:22px;opacity:1;margin-bottom:1px}.rail-user{display:flex;align-items:center;gap:11px;white-space:nowrap;padding:12px 0 4px 14px;margin-top:8px;border-top:1px solid var(--line)}.rail-avatar{width:28px;height:28px;flex:none;border-radius:7px;background:var(--line2);border:1px solid var(--border);color:var(--cream);font-family:var(--font-mono);font-size:11px;display:flex;align-items:center;justify-content:center}.rail-user-meta{display:flex;flex-direction:column;gap:1px;min-width:0;opacity:0;transition:opacity .14s}.rail:hover .rail-user-meta{opacity:1}.rail-user-meta b{font-size:12px;font-weight:600;color:var(--cream);overflow:hidden;text-overflow:ellipsis}.rail-user-meta span{font-family:var(--font-mono);font-size:10px;color:var(--dim);overflow:hidden;text-overflow:ellipsis}.top{grid-column:2;display:flex;align-items:center;gap:12px;padding:0 22px;border-bottom:1px solid var(--line)}.crumb{display:flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}.crumb b{color:var(--cream);font-weight:600}.crumb .sep{color:var(--dim)}.crumb-link{padding:0;font-size:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--mut)}.crumb-link:hover:not(:disabled){color:var(--cream)}.crumb-link:disabled{cursor:default}.org-switch{flex:none}.org-switch .sel-btn{padding:7px 11px;font-size:11px}.search{margin-left:auto;display:flex;align-items:center;gap:8px;width:420px;max-width:42vw;border:1px solid var(--border);padding:9px 12px;color:var(--dim);font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden}.search svg{flex:none}.iconbtn{width:34px;height:34px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--mut);position:relative}.iconbtn:hover{color:var(--cream)}.notif{position:absolute;top:7px;right:8px;width:5px;height:5px;border-radius:50%;background:var(--green2)}.notif-wrap{position:relative;display:flex}.notif-panel{position:absolute;top:calc(100% + 8px);right:0;width:320px;max-width:86vw;z-index:90;background:var(--ground);border:1px solid var(--border);box-shadow:0 20px 50px #00000080}.notif-h{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);padding:12px 14px;border-bottom:1px solid var(--line)}.notif-empty{padding:26px 18px;font-size:12px;color:var(--dim);text-align:center;line-height:1.5}.notif-list{max-height:380px;overflow-y:auto}.notif-item{display:flex;gap:10px;padding:11px 14px;border-bottom:1px solid var(--line2)}.notif-item:last-child{border-bottom:0}.notif-dot2{width:6px;height:6px;border-radius:50%;background:var(--green2);margin-top:5px;flex:none}.notif-body{min-width:0;flex:1}.notif-title{font-size:12.5px;color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-sub{font-family:var(--font-mono);font-size:10.5px;color:var(--dim);margin-top:2px}.new{display:flex;align-items:center;gap:7px;background:var(--cream);color:#111;font-weight:600;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:8px 13px}.new svg{stroke-width:2}.new:hover{background:#fff}.body{grid-column:2;overflow:auto}.tabs{display:flex;align-items:center;gap:4px;padding:12px 22px;border-bottom:1px solid var(--line)}.tabpill{display:inline-flex;border:1px solid var(--border)}.tabp{display:flex;align-items:center;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);padding:7px 14px;text-decoration:none}.tabp:not(:last-child){border-right:1px solid var(--border)}.tabp:hover:not(.on){color:var(--cream)}.tabp.on{background:#ffffff0d;color:var(--cream)}.range{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mut);border:1px solid var(--border);padding:7px 12px}.main{padding:18px 22px 60px}.state{color:var(--mut);font-family:var(--font-mono);font-size:13px;padding:40px 4px}.state.err{color:var(--orange)}.skel{background:linear-gradient(90deg,var(--line2) 25%,#2c2f22 50%,var(--line2) 75%);background-size:200% 100%;animation:skel 1.3s linear infinite}.skel-fill{width:100%;height:100%}.skel-pill{height:26px;width:220px;max-width:60%}@keyframes skel{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-box{display:flex;align-items:center;justify-content:center;width:100%;min-height:320px}.dotm{display:grid;grid-template-columns:repeat(5,7px);grid-auto-rows:7px;gap:6px}.dotm span{width:7px;height:7px;background:var(--green);opacity:.16;animation:dotm 1.1s ease-in-out infinite}@keyframes dotm{0%,to{opacity:.14;transform:scale(.8)}45%{opacity:1;transform:scale(1)}}.gate-screen .loading-box{min-height:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.stat{border:1px solid var(--border);padding:15px 16px}.stat-head{display:flex;align-items:center;gap:8px;color:var(--mut)}.stat-title{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--cream);border:1px solid var(--border);padding:4px 9px}.dots{display:none}.stat-value{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.num{font-size:33px;font-weight:600;letter-spacing:-.02em;line-height:1}.num em{font-style:normal;font-size:15px;font-weight:500;color:var(--mut);margin-left:4px}.stat-foot{font-family:var(--font-mono);font-size:11px;color:var(--dim);display:flex;align-items:center;gap:6px}.stat-foot b{font-weight:400}.stat-foot .good{color:var(--green2)}.stat-foot .warn{color:var(--orange)}.stack{display:flex;flex-direction:column;gap:14px}.grid{display:grid;grid-template-columns:1.55fr 1fr;gap:14px;align-items:start}.col{display:flex;flex-direction:column;gap:14px}.card{border:1px solid var(--border);overflow:hidden}.card-head{display:flex;align-items:center;gap:9px;padding:13px 16px;border-bottom:1px solid var(--border)}.card-ic{color:var(--green);display:flex}.card-head b{font-family:var(--font-mono);font-size:10.5px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--cream);border:1px solid var(--border);padding:4px 9px}.card-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.mini{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:5px 10px}.mini:hover{color:var(--cream)}.mini.live-feed{display:inline-flex;align-items:center;gap:8px}.flow{padding:16px 16px 20px;background-image:radial-gradient(circle,rgba(255,255,255,.055) 1px,transparent 1.4px);background-size:16px 16px}.stamp{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.05em;color:var(--dim);background:var(--ground);border:1px solid var(--border);padding:5px 9px;display:inline-block;margin-bottom:16px}.gateway{width:220px;margin:0 auto;background:var(--ground);border:1px solid var(--border);padding:10px 13px}.gw-top{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.gw-meta{display:flex;align-items:center;justify-content:space-between;margin-top:8px;font-family:var(--font-mono);font-size:11px;color:var(--mut)}.gw-meta b{color:var(--cream);font-weight:400}.conn{width:100%;height:32px;display:block}.conn path{stroke:var(--line);stroke-width:1.4;fill:none}.conn-m{display:none}.engines{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.engine{background:var(--ground);border:1px solid var(--border);padding:11px 12px}.engine-top{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-bottom:9px}.engine-top .dot{width:6px;height:6px;border-radius:50%;flex:none}.engine-top .tag{margin-left:auto;font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px}.engine.ok .dot{background:var(--green2)}.engine.ok .tag{color:var(--green2);background:#22c55e1a}.engine.warn .tag{color:var(--orange);background:#e0894a1a}.engine.warn .dot{background:var(--orange)}.engine.warn .tag{color:var(--orange);background:#e0894a1f}.engine-row{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--mut);margin-top:7px}.engine-row b{color:var(--cream);font-weight:400}.track{height:4px;background:var(--ground);border:1px solid var(--line);margin-top:5px;overflow:hidden}.track i{display:block;height:100%;background:var(--green)}.engine.warn .track i{background:var(--orange)}.gw-top .dot{width:6px;height:6px;border-radius:50%;background:var(--green2)}table{width:100%;border-collapse:collapse}thead th{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);text-align:left;padding:11px 16px;border-bottom:1px solid var(--border);font-weight:400}tbody td{padding:11px 16px;border-bottom:1px solid var(--line2);font-size:12.5px;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:#ffffff04}td.mono{font-family:var(--font-mono);color:var(--silver);font-size:12px}td.snip{color:var(--mut);font-family:var(--font-mono);font-size:11.5px}.pill{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border:1px solid;white-space:nowrap}.pill.block{color:var(--red);border-color:#e0614a59;background:#e0614a14}.pill.flag{color:var(--orange);border-color:#e0894a59;background:#e0894a14}.pill.recheck{color:var(--blue);border-color:#5b8def59;background:#5b8def14}.pill.retry{color:var(--mut);border-color:var(--border);background:transparent}.pipe{padding:6px 16px 16px}.step{padding:15px 0;border-bottom:1px solid var(--line2)}.step:last-child{border-bottom:0}.step-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin-bottom:11px}.step-label .n{color:var(--green)}.kv{display:flex;align-items:center;justify-content:space-between;padding:5px 0;font-size:12.5px}.kv .k{color:var(--mut)}.kv .v{font-family:var(--font-mono);font-size:11.5px;color:var(--cream);border:1px solid var(--border);padding:3px 9px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mc{border:1px solid var(--border);padding:9px 10px}.mc-top{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;margin-bottom:8px}.mc-top svg{color:var(--green)}.mc-row{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--mut);margin-top:4px}.mc-row b{color:var(--cream);font-weight:400}.rule{border:1px solid var(--border);padding:11px 12px;margin-top:9px}.rule-head{display:flex;align-items:center;gap:9px;margin-bottom:10px;cursor:pointer}.rule.collapsed .rule-head{margin-bottom:0}.rule-label{font-family:var(--font-mono);font-size:11px;color:var(--mut)}.rule-label b{color:var(--cream)}.sev{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px}.sev.hi{color:var(--red);background:#e0614a1a}.sev.med{color:var(--orange);background:#e0894a1a}.rule-toggle{margin-left:auto;color:var(--dim)}.rule-fields{margin-top:9px}.expr{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;border:1px solid var(--line);padding:9px 11px;color:var(--mut)}.expr .tok{border:1px solid var(--border);padding:2px 7px;color:var(--cream)}.expr .op{color:var(--green)}.rec-head{display:flex;align-items:center;justify-content:space-between;min-height:32px;margin-bottom:18px}.rec-title{font-size:22px;font-weight:600;letter-spacing:-.02em;margin:0}.org-name{margin-bottom:8px}.org-pill{display:inline-block;font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--cream);border:1px solid var(--border);padding:6px 11px}.rec-desc{display:inline-block;margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:5px 10px}.rec-count{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:7px 11px}.empty-box{border:1px dashed var(--border);background:#ffffff05;padding:64px 24px;text-align:center;display:flex;flex-direction:column;align-items:center}.empty-box .eb-title{font-family:var(--font-mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}.empty-box .eb-sub{font-family:var(--font-mono);font-size:12px;color:var(--dim);margin-top:10px}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.rec{border:1px solid var(--border);overflow:hidden;transition:border-color .13s;cursor:pointer}.rec:hover{border-color:#4a4f3b}.rec-table tbody tr{cursor:pointer}.rec-thumb{position:relative;aspect-ratio:4 / 3;background:var(--ground);padding:14px}.thumb-svg,.thumb-img{width:100%;height:100%;display:block;object-fit:contain}.rec-status{position:absolute;top:8px;left:8px;font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;padding:3px 7px;border:1px solid}.rec-status.verified{color:var(--green2);border-color:#22c55e66;background:var(--ground)}.rec-status.flagged{color:var(--orange);border-color:#e0894a66;background:var(--ground)}.rec-status.pending{color:var(--blue);border-color:#5b8def66;background:var(--ground)}.rec-engine{font-family:var(--font-mono);font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:var(--cream);padding:4px 8px;border:1px solid var(--border);white-space:nowrap;flex-shrink:0}.rec-meta{padding:11px 12px;border-top:1px solid var(--line)}.rec-id{font-family:var(--font-mono);font-size:11px;color:var(--silver)}.rec-product{font-size:13px;font-weight:600;margin-top:3px;letter-spacing:-.01em}.rec-foot{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:7px}.rec-sub{font-family:var(--font-mono);font-size:10.5px;color:var(--mut)}.rec-tools{display:flex;align-items:center;gap:12px}.rec-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px}.rec-clear{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:7px 11px}.rec-clear:hover{color:var(--cream);border-color:#4a4f3b}.rec-batch .sel-btn{padding:7px 11px;gap:8px;color:var(--mut);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.rec-batch .sel-caret{font-size:9px}.seg{display:flex;border:1px solid var(--border)}.seg button{display:flex;align-items:center;justify-content:center;padding:7px 10px;color:var(--dim)}.seg button:not(:last-child){border-right:1px solid var(--border)}.seg button:hover{color:var(--mut)}.seg button.on{color:var(--cream);background:#ffffff08}.seg button.on svg{color:var(--green)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.rec-table td.rt-thumb{width:52px;padding:8px 0 8px 16px}.rec-table .rt-thumb .thumb-svg,.rec-table .rt-thumb .thumb-img{width:40px;height:28px;border:1px solid var(--line)}.rec-table td{color:var(--cream)}.table-scroll th,.table-scroll td{white-space:nowrap}.rec-table td:nth-child(3){max-width:220px;overflow:hidden;text-overflow:ellipsis}.pill.verified{color:var(--green2);border-color:#22c55e59;background:#22c55e14}.pill.flagged{color:var(--orange);border-color:#e0894a59;background:#e0894a14}.pill.pending{color:var(--blue);border-color:#5b8def59;background:#5b8def14}.kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.kpi{border:1px solid var(--border);padding:14px 16px}.kpi-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}.kpi-value{font-size:28px;font-weight:600;letter-spacing:-.02em;margin:10px 0 6px;line-height:1}.kpi-sub{font-family:var(--font-mono);font-size:10.5px;color:var(--dim)}.m-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}.chart-pad{padding:18px 16px}.chart-empty{display:flex;align-items:center;justify-content:center;min-height:120px;padding:24px 16px}.chart-empty span{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:6px 12px}.bars{display:flex;align-items:flex-end;gap:6px;height:150px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;min-width:0}.bar-track{flex:1;width:100%;display:flex;align-items:flex-end}.bar-fill{width:100%;min-height:2px;border-radius:0;transition:height .4s ease}.bar-label{font-family:var(--font-mono);font-size:9px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.hbars{display:flex;flex-direction:column;gap:16px}.hbar-row{display:flex;flex-direction:column}.hbar-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.hbar-label{font-size:13px;color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-val{font-family:var(--font-mono);font-size:12.5px;color:var(--mut);flex:none}.hbar-track{height:6px;background:var(--line2);overflow:hidden}.hbar-track i{display:block;height:100%;transition:width .4s ease}.donut-wrap{display:flex;align-items:center;gap:26px}.donut{width:140px;height:140px;flex:none}.donut-pct{fill:var(--cream);font-size:26px;font-weight:600;font-family:var(--font-display)}.donut-sub{fill:var(--mut);font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-mono)}.donut-legend{display:flex;flex-direction:column;gap:12px}.donut-legend div{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--mut)}.donut-legend b{color:var(--cream);font-weight:500;margin-left:6px}.lg-dot{width:9px;height:9px;flex:none}.ebars{display:flex;flex-direction:column;gap:18px}.ebar-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.ebar-name{font-size:13px;color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ebar-val{font-family:var(--font-mono);font-size:12.5px;color:var(--cream);flex:none}.ebar-val em{font-style:normal;font-size:10.5px;color:var(--mut);margin-left:7px}.ebar-track{height:6px;background:var(--line2);overflow:hidden}.ebar-track i{display:block;height:100%;background:var(--blue);transition:width .4s ease}.unitrows{display:flex;flex-direction:column;gap:16px}.unitrow{display:grid;grid-template-columns:120px 1fr 40px;align-items:center;gap:12px}.unitrow-label{font-size:12.5px;color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unitrow-boxes{display:flex;flex-wrap:wrap;gap:4px}.unit-box{width:13px;height:13px;flex:none}.unitrow-val{font-family:var(--font-mono);font-size:11px;color:var(--mut);text-align:right;align-self:start}.heat{display:flex;flex-direction:column;gap:16px}.heat-head{display:flex;align-items:baseline;gap:10px}.heat-pct{font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--cream)}.heat-cap{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}.heat-grid{display:grid;grid-template-columns:repeat(auto-fill,15px);gap:4px}.heat-cell{width:15px;height:15px;background:var(--line2)}.heat-cell.on{background:var(--green2)}.heat-legend{display:flex;gap:22px}.heat-legend div{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--mut)}.heat-legend b{color:var(--cream);font-weight:500;margin-left:6px}.lg-box{width:11px;height:11px;flex:none;background:var(--line2)}.lg-box.on{background:var(--green2)}.nw-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:16px}.nw{border:1px dashed var(--border);padding:12px 14px}.nw-label{font-size:13px;font-weight:600;color:var(--mut)}.nw-note{font-family:var(--font-mono);font-size:11px;color:var(--dim);margin-top:5px;line-height:1.5}@media(max-width:1080px){.kpis{grid-template-columns:repeat(3,1fr)}.m-grid,.nw-grid{grid-template-columns:1fr}}.np{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:calc(100vh - 108px);margin:-18px -22px -60px}.np-left{padding:34px 22px 40px;border-right:1px solid var(--line);display:flex;flex-direction:column}.np-title{font-size:20px;font-weight:600;letter-spacing:-.01em;margin:16px 0 26px}.np-steps{display:flex;align-items:stretch;max-width:none;margin-bottom:0;border:1px solid var(--border);border-bottom:0}.np-dot{flex:1;display:flex;align-items:center;justify-content:center;gap:9px;padding:12px 8px;border-left:1px solid var(--border);color:var(--dim);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase}.np-dot:first-child{border-left:0}.np-dot .np-num{font-family:var(--font-mono);font-size:10px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);color:var(--dim);flex:none}.np-dot.on{color:var(--cream);background:#ffffff09}.np-dot.on .np-num{border-color:var(--green2);color:var(--green2)}.np-dot.done{color:var(--mut)}.np-dot.done .np-num{border-color:var(--green2);color:var(--green2)}.np-body{display:flex;flex-direction:column;gap:18px;max-width:none;border:1px solid var(--border);padding:22px}.np-section{display:flex;flex-direction:column;gap:9px}.np-section-h{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}.np-fields2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.np-fields2 .np-wide{grid-column:1 / -1}.np-field{display:flex;flex-direction:column;gap:6px;min-width:0}.np-field>span{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}.np-crow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) 30px;gap:6px}.np-clabel{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.np-cx{width:30px;border:1px solid var(--border);color:var(--dim);font-size:11px;display:flex;align-items:center;justify-content:center}.np-cx:hover{color:var(--red);border-color:#4a4f3b}.np-addfield{align-self:flex-start;border:1px solid var(--border);color:var(--mut);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:8px 12px}.np-addfield:hover{color:var(--cream);border-color:#4a4f3b}.np-nav{display:flex;gap:10px;margin-top:4px;padding-top:16px;border-top:1px solid var(--line)}.np-nav .modal-submit{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:11px 13px;margin-top:0}.np-nav .dp-mini-btn{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:11px 13px}.np-hint{font-family:var(--font-mono);font-size:12px;color:var(--dim)}.np-hint.np-err{color:var(--red)}.np-hint.np-ok{color:var(--green2)}.np-success{align-self:flex-start;display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--green2);border:1px solid rgba(34,197,94,.4);background:#22c55e17;padding:7px 12px}.np-download{display:flex;align-items:center;gap:12px;text-decoration:none;border:1px solid var(--border);background:var(--line2);padding:12px 13px;color:var(--cream);transition:border-color .14s,background .14s}.np-download:hover{border-color:#4a4f3b;background:#202318}.np-dl-ic{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border:1px solid var(--border);color:var(--green2)}.np-dl-name{flex:1;min-width:0;font-family:var(--font-mono);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.np-dl-tag{flex:none;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);border:1px solid var(--border);padding:5px 9px}.np-right{padding:40px 44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:var(--ground)}.np-stage{width:100%;max-width:520px;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center}.np-img{max-width:100%;max-height:100%;width:auto;height:auto;display:block;box-shadow:0 30px 80px #00000080}.np-placeholder{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);border:1px dashed var(--border);padding:60px 80px}.np-caption{font-family:var(--font-mono);font-size:11px;color:var(--mut)}@media(max-width:900px){.np{grid-template-columns:1fr}.np-right{display:none}}.detail{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start}.detail-back{align-self:flex-start;text-align:left;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--mut);margin-bottom:22px}.detail-back:hover{color:var(--cream)}.pill-back{align-self:flex-start;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:6px 11px;margin-bottom:18px}.pill-back:hover{color:var(--cream);border-color:#4a4f3b}.detail-title{font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.12;margin:0;word-break:break-word}.detail-desc{color:var(--mut);font-size:13px;line-height:1.55;margin:8px 0 0}.detail-line{font-family:var(--font-mono);font-size:12px;color:var(--dim);margin:12px 0 0}.detail-line b{color:var(--cream)}.detail-line .mono{color:var(--silver)}.detail-stage{position:relative;aspect-ratio:16 / 9;border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;perspective:1100px;background-color:var(--ground);background-image:radial-gradient(circle,rgba(255,255,255,.075) 1.1px,transparent 1.5px);background-size:15px 15px}.detail-img{width:88%;height:86%;display:flex;align-items:center;justify-content:center;transform-style:preserve-3d;will-change:transform,opacity,filter}.detail-img img,.detail-img .thumb-img{max-width:100%;max-height:100%;width:auto;height:auto;display:block;object-fit:contain;box-shadow:0 34px 90px #0000008c}.detail-img .thumb-svg{max-width:100%;max-height:100%;box-shadow:0 34px 90px #0000008c}.stage-tag{position:absolute;bottom:12px;left:50%;transform:translate(-50%);font-family:var(--font-mono);font-size:9px;letter-spacing:.3em;color:var(--dim)}.detail-controls{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.ctrl-right{display:flex;align-items:center;gap:8px}.ctrl-chip{font-family:var(--font-mono);font-size:11px;color:var(--mut);border:1px solid var(--border);padding:6px 10px}.ctrl-btn{width:32px;height:32px;border:1px solid var(--border);color:var(--mut);display:flex;align-items:center;justify-content:center;font-size:14px}.ctrl-btn:hover{color:var(--cream);border-color:#4a4f3b}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#080806f0;display:flex;align-items:center;justify-content:center;padding:calc(20px + env(safe-area-inset-top,0px)) 20px calc(20px + env(safe-area-inset-bottom,0px))}.lightbox-inner{display:flex;max-width:94vw;max-height:90vh}.lightbox-inner img,.lightbox-inner svg{width:auto;height:auto;max-width:94vw;max-height:90vh;object-fit:contain;border:1px solid var(--border);background:var(--ground)}.lightbox-x{position:fixed;top:calc(14px + env(safe-area-inset-top,0px));right:16px;z-index:201;width:40px;height:40px;border:1px solid var(--border);background:var(--ground);color:var(--cream);font-size:15px}.lightbox-x:hover{border-color:#4a4f3b}.detail-pager{display:flex;align-items:center;gap:16px;margin-top:22px;font-family:var(--font-mono);font-size:12px;color:var(--mut)}.detail-pager .pg{width:30px;height:30px;border:1px solid var(--border);color:var(--cream);display:flex;align-items:center;justify-content:center;font-size:15px}.detail-pager .pg:hover:not(:disabled){border-color:#4a4f3b}.detail-pager .pg:disabled{opacity:.35;cursor:default}.detail-side{border:1px solid var(--border);padding:18px 18px 20px;display:flex;flex-direction:column}.side-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-bottom:12px}.side-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line2);font-size:12.5px}.side-row:last-of-type{border-bottom:0}.side-row>span{color:var(--mut)}.side-row b{font-weight:400;color:var(--cream)}.side-link{font-size:12.5px;color:var(--green2);border-bottom:1px solid transparent;transition:border-color .12s}.side-link:hover{border-bottom-color:var(--green2)}.side-note{font-size:11.5px;color:var(--dim);line-height:1.55;margin:14px 0 0}.del-btn{align-self:flex-start;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--red);background:transparent;border:1px solid var(--red);border-radius:0;padding:8px 13px;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.del-btn:hover{color:var(--red);border-color:var(--red);background:#e0614a1a}.del-btn.danger{color:#fff;background:var(--red);border-color:var(--red)}.del-btn.danger:hover{background:#d1543d;border-color:#d1543d}.del-btn:disabled{opacity:.6;cursor:default}.del-confirm{display:flex;flex-direction:column;gap:11px}.del-warn{font-size:12px;color:var(--cream);line-height:1.55;margin:0}.del-actions{display:flex;align-items:center;gap:10px}.del-cancel{font-size:12px;color:var(--mut);background:transparent;border:0;cursor:pointer;padding:8px 4px}.del-cancel:hover{color:var(--cream)}.del-err{font-size:11.5px;color:var(--red);margin:10px 0 0}.scan-log{display:flex;flex-direction:column;gap:9px}.scan-ev{display:flex;align-items:center;gap:9px;font-size:12px}.scan-dot{width:6px;height:6px;border-radius:50%;background:var(--green2);flex:none}.scan-time{color:var(--silver);font-size:11px;min-width:54px}.scan-place{color:var(--mut);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1080px){.detail{grid-template-columns:1fr}}.you-tag{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--green2);border:1px solid rgba(34,197,94,.35);padding:1px 6px;margin-left:8px}.role-select{background:transparent;border:1px solid var(--border);color:var(--cream);font-family:var(--font-mono);font-size:12px;padding:4px 8px}.kv-k{font-size:13px;color:var(--mut)}.dp-mini-btn{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--cream);border:1px solid var(--border);padding:7px 13px}.dp-mini-btn:hover:not(:disabled){border-color:#4a4f3b}.dp-mini-btn:disabled{opacity:.5}.dp-mini-btn.is-copied{color:var(--green2);border-color:#22c55e80}.dp-mini-btn.danger:hover:not(:disabled){color:var(--red);border-color:#e0614a73}.invite-row{display:flex;gap:10px;align-items:center}.invite-row .fld{flex:1;min-width:0}.invite-row .dp-mini-btn{flex:none;white-space:nowrap}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media(max-width:820px){.plan-grid{grid-template-columns:1fr}}.plan{border:1px solid var(--border);padding:20px;display:flex;flex-direction:column;gap:14px}.plan.on{border-color:#22c55e66;background:#22c55e0a}.plan-top{display:flex;align-items:center;justify-content:space-between}.plan-name{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--cream)}.plan-badge{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--green2);border:1px solid rgba(34,197,94,.4);background:#22c55e17;padding:3px 7px}.plan-price{font-family:var(--font-display);font-size:30px;font-weight:600;color:var(--cream)}.plan-price span{font-family:var(--font-mono);font-size:11px;color:var(--dim);letter-spacing:.04em;margin-left:4px}.plan-feat{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex:1}.plan-feat li{font-size:12.5px;color:var(--mut);padding-left:16px;position:relative}.plan-feat li:before{content:"+";position:absolute;left:0;color:var(--green2)}.usage-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.usage-k{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}.usage-v{font-size:13px;color:var(--cream)}.um-bar{height:8px;background:var(--line2);border:1px solid var(--border);overflow:hidden}.um-bar i{display:block;height:100%;background:var(--green)}.rates-table td{text-transform:uppercase;letter-spacing:.04em;font-family:var(--font-mono);font-size:12px}.apikey-reveal{display:flex;flex-direction:column;gap:10px;border:1px solid rgba(34,197,94,.35);background:#22c55e0d;padding:14px}.apikey-reveal-h{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--green2)}.code-block{font-family:var(--font-mono);font-size:12px;color:var(--cream);background:var(--line2);border:1px solid var(--border);padding:14px;overflow-x:auto;white-space:pre;line-height:1.6;margin:0}.api-doc>.side-note{margin-bottom:4px}.api-ep{border-top:1px solid var(--line2);padding:18px 0}.api-ep:last-child{padding-bottom:0}.api-ep-h{display:flex;align-items:center;gap:10px;margin-bottom:9px}.api-method{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--green2);border:1px solid rgba(34,197,94,.4);background:#22c55e17;padding:3px 7px}.api-path{font-family:var(--font-mono);font-size:13px;color:var(--cream)}.api-ep>p{font-size:12.5px;color:var(--mut);margin:0 0 12px;line-height:1.55}.api-ep p.api-note{font-size:11.5px;color:var(--dim);margin-top:10px;margin-bottom:0}.api-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin:14px 0 6px}.api-params{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.api-params li{font-family:var(--font-mono);font-size:12px;color:var(--mut)}.api-params b{color:var(--cream);font-weight:600}.api-params .req{color:var(--green2);font-size:9px;letter-spacing:.08em;text-transform:uppercase;margin-left:8px;border:1px solid rgba(34,197,94,.35);padding:1px 5px}.api-doc .code-block{margin-top:0}.code-wrap{position:relative}.code-copy{position:absolute;top:8px;right:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);background:var(--ground);border:1px solid var(--border);padding:4px 8px}.code-copy:hover{color:var(--cream);border-color:#4a4f3b}.code-copy.is-copied{color:var(--green2);border-color:#22c55e80}.invite-row .sel-btn,.invite-row .dp-mini-btn{padding:9px 13px;font-size:12px}.invite-row .dp-mini-btn{letter-spacing:.06em;text-transform:uppercase}.invite-link{display:flex;gap:8px;align-items:stretch}.invite-link .fld{flex:1;font-family:var(--font-mono);font-size:12px}.gate-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background-color:var(--ground);background-image:radial-gradient(circle,rgba(255,255,255,.055) 1px,transparent 1.4px);background-size:16px 16px}.gate-loading{font-family:var(--font-mono);font-size:13px;color:var(--mut)}.gate-card{width:100%;max-width:600px;padding:40px;border:1px solid var(--border);background:var(--ground)}.gate-logo{width:34px;height:auto;display:block;margin-bottom:20px}.gate-title{display:inline-block;margin:0;align-self:flex-start;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--cream);border:1px solid var(--border);padding:6px 11px}.gate-sub{color:var(--mut);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;line-height:1.7;margin:14px 0 24px}.gate-form{display:flex;flex-direction:column;gap:10px}.gate-alt{font-family:var(--font-mono);font-size:12px;color:var(--mut);padding:6px 0}.gate-alt:hover{color:var(--cream)}.gate-ok{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--green2);line-height:1.7;border:1px solid rgba(34,197,94,.3);background:#22c55e12;padding:13px 15px}.gate-hint{font-family:var(--font-mono);font-size:11px;color:var(--dim);line-height:1.55;margin:16px 0 0}.onb-choices{display:flex;flex-direction:column;gap:10px;margin:4px 0 10px}.onb-choice{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;border:1px solid var(--border);padding:16px 18px;transition:border-color .13s}.onb-choice:hover{border-color:#4a4f3b}.onb-choice-t{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--cream)}.onb-choice-d{font-family:var(--font-mono);font-size:11px;color:var(--mut);line-height:1.5}.login-split{min-height:100vh;display:flex;background:var(--ground)}.login-pane{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 32px}.login-form-wrap{width:100%;max-width:340px}.login-brand{display:flex;align-items:center;gap:11px}.login-mark{width:30px;height:auto;display:block}.login-word{font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--cream)}.login-eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin:22px 0 20px}.login-form{display:flex;flex-direction:column;gap:18px}.login-field{display:flex;flex-direction:column;gap:7px}.login-field span{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}.login-field input{width:100%;background:transparent;color:var(--cream);font-family:var(--font-mono);font-size:13px;letter-spacing:.01em;border:0;border-bottom:1px solid var(--border);padding:8px 0;outline:none;transition:border-color .13s}.login-field input:focus{border-bottom-color:var(--cream)}.login-field input::placeholder{color:var(--dim)}.login-submit{margin-top:4px;width:100%;background:var(--cream);color:#111;font-weight:600;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:12px;transition:opacity .13s}.login-submit:hover:not(:disabled){opacity:.88}.login-submit:disabled{opacity:.45;cursor:default}.login-or{display:flex;align-items:center;gap:12px;color:var(--dim)}.login-or:before,.login-or:after{content:"";flex:1;height:1px;background:var(--border)}.login-or span{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.login-alt{width:100%;border:1px solid var(--border);color:var(--mut);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:11px;transition:border-color .13s,color .13s}.login-alt:hover:not(:disabled){border-color:var(--cream);color:var(--cream)}.login-alt:disabled{opacity:.5;cursor:default}.login-verify{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:22px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);text-decoration:none;transition:color .12s}.login-verify:hover{color:var(--cream)}.login-toggle{align-self:center;margin-top:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:8px 13px}.login-toggle:hover{color:var(--cream);border-color:#4a4f3b}.login-art{flex:1;position:relative;overflow:hidden;background:#1a1d1a}.login-us{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.login-artgrid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.05;background-image:linear-gradient(rgba(255,255,255,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.4) 1px,transparent 1px);background-size:48px 48px}@media(max-width:820px){.login-split{grid-template-columns:1fr}.login-art{display:none}}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0a0a09b8;display:flex;align-items:flex-start;justify-content:center;padding:64px 20px;overflow:auto}.modal{width:100%;max-width:460px;background:var(--ground);border:1px solid var(--border)}.modal-head{display:flex;align-items:center;gap:9px;padding:14px 16px;border-bottom:1px solid var(--line)}.modal-head .card-ic{color:var(--green);display:flex}.modal-head b{font-size:14px;font-weight:600}.modal-x{margin-left:auto;color:var(--mut);font-size:14px}.modal-x:hover{color:var(--cream)}.modal-body{padding:16px;display:flex;flex-direction:column;gap:10px}.filebtn{display:flex;align-items:center;border:1px solid var(--border);padding:11px 13px;cursor:pointer;color:var(--mut);font-family:var(--font-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase}.filebtn:hover{color:var(--cream);border-color:#4a4f3b}.filebtn input{display:none}.filebtn span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fld{width:100%;background:transparent;border:1px solid var(--border);padding:11px 13px;color:var(--cream);font-family:var(--font-display);font-size:13px}.fld::placeholder{color:var(--dim)}.fld:focus{outline:none;border-color:var(--green)}select.fld{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--cream)}select.fld option{background:var(--ground)}.sel{position:relative;display:inline-block}.sel.block{display:block}.sel-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;background:transparent;border:1px solid var(--border);padding:11px 13px;color:var(--cream);font-family:var(--font-display);font-size:13px;text-align:left;width:100%}.sel:not(.block) .sel-btn{width:auto}.sel-btn:hover{border-color:#4a4f3b}.sel.open .sel-btn{border-color:var(--green)}.sel-val{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sel-caret{color:var(--mut);font-size:10px;flex:none}.sel-menu{z-index:200;background:var(--ground);border:1px solid var(--border);max-height:280px;overflow-y:auto;box-shadow:0 14px 34px #00000080}.sel-opt{display:block;width:100%;text-align:left;padding:10px 13px;white-space:nowrap;background:transparent;color:var(--mut);font-family:var(--font-display);font-size:13px}.sel.sel-upper .sel-btn,.sel-menu.sel-upper .sel-opt{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.sel-opt:hover{background:#ffffff0a;color:var(--cream)}.sel-opt.sel{color:var(--cream)}.modal-submit{margin-top:4px;background:var(--green);color:#0b0c08;font-weight:600;font-size:12px;letter-spacing:.07em;text-transform:uppercase;padding:12px;border:1px solid var(--green)}.modal-submit:hover:not(:disabled){background:var(--green2)}.modal-submit:disabled{opacity:.45;cursor:not-allowed}.modal-err{font-family:var(--font-mono);font-size:12px;color:var(--red);border:1px solid rgba(224,97,74,.35);background:#e0614a14;padding:9px 11px}.gate-err{font-size:11px;letter-spacing:.04em;text-transform:uppercase;line-height:1.7;padding:13px 15px}.modal-result{padding:0 16px 16px;display:flex;flex-direction:column;gap:10px}.modal-result img{width:100%;display:block;border:1px solid var(--line)}.modal-result a{font-family:var(--font-mono);font-size:12px;color:var(--green2);text-decoration:none}.modal-result a:hover{text-decoration:underline}.modal-result-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-result-row .added{font-family:var(--font-mono);font-size:11px;color:var(--green2)}.preset-row{display:flex;gap:8px;flex-wrap:wrap}.preset{font-family:var(--font-mono);font-size:11px;color:var(--mut);border:1px solid var(--border);padding:6px 10px}.preset:hover{color:var(--cream);border-color:#4a4f3b}.batch-count{display:flex;gap:8px;align-items:stretch}@media(max-width:1080px){.stats{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}}.pubscan{min-height:100vh;background:var(--ground);padding:0 20px calc(40px + env(safe-area-inset-bottom,0px));overflow-x:hidden}.pubscan .scan,.pubscan .scan-controls,.pubscan .scan-actions{min-width:0}.scan-rows .side-row b{overflow-wrap:anywhere}.pubscan-top{position:sticky;top:0;z-index:20;background:var(--ground);max-width:560px;margin:0 auto 24px;display:flex;align-items:center;justify-content:space-between;padding:calc(18px + env(safe-area-inset-top,0px)) 0 18px;border-bottom:1px solid var(--line)}.pubscan-brand{display:flex;align-items:center;gap:11px}.pubscan-logo{width:26px;height:auto;display:block}.pubscan-brand>span:not(.pubscan-tag){font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--cream)}.pubscan-tag{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--green2);border:1px solid rgba(34,197,94,.5);background:#22c55e1f;padding:4px 9px}.pubscan-signin{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);text-decoration:none;border:1px solid var(--border);padding:6px 11px}.pubscan-signin:hover{color:var(--cream);border-color:#4a4f3b}.scan{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.scan-controls{display:flex;flex-direction:column;align-items:stretch;gap:9px}.scan-ctl-k{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}.scan-modes{align-self:flex-start}.scan-hint{font-family:var(--font-mono);font-size:11px;line-height:1.5;color:var(--dim);margin:-6px 0 0}.scan-stage{aspect-ratio:3 / 4;max-height:70vh;border:1px solid var(--border);background-color:var(--ground);background-image:radial-gradient(circle,rgba(255,255,255,.06) 1px,transparent 1.4px);background-size:16px 16px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.scan-video{width:100%;height:100%;object-fit:cover}.scan-ph{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);background:var(--ground);padding:8px 14px}.scan-reticle{position:absolute;top:16%;right:20%;bottom:16%;left:20%;border:1px solid rgba(34,197,94,.55);box-shadow:0 0 0 100vmax #00000040}.scan-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.scan-btn{flex:1;min-width:150px;text-align:center;border:1px solid var(--border);color:var(--cream);font-family:var(--font-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;padding:14px;cursor:pointer}.scan-btn input{display:none}.scan-btn:hover{border-color:#4a4f3b}.scan-btn.primary{background:var(--green);color:#0b0c08;border-color:var(--green);font-weight:600}.scan-btn.primary:hover{background:var(--green2)}.scan-btn.upload{flex:1;background:#22c55e1f;color:var(--green2);border-color:#22c55e80}.scan-btn.upload:hover{background:#22c55e2e;border-color:#22c55ea6}.scan-tap{cursor:pointer}.scan-tap input{display:none}.scan-tap:hover{border-color:#4a4f3b}.scan-tap:hover .scan-ph{color:var(--cream);border-color:#4a4f3b}.scan-live-status{flex-basis:100%;display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}.dotm-sm{grid-template-columns:repeat(3,3px);grid-auto-rows:3px;gap:3px;flex:none}.dotm-sm span{width:3px;height:3px}.scan-result{border:1px solid var(--border);padding:18px;display:flex;flex-direction:column;gap:12px}.scan-result.ok{border-color:#22c55e66}.scan-result.warn{border-color:#e0894a66}.scan-result.bad{border-color:#e0614a66}.scan-verdict{align-self:flex-start;display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:1px solid;padding:6px 12px}.scan-result.ok .scan-verdict{color:var(--green2);border-color:#22c55e80;background:#22c55e1f}.scan-result.warn .scan-verdict{color:var(--orange);border-color:#e0894a80;background:#e0894a1a}.scan-result.bad .scan-verdict{color:var(--red);border-color:#e0614a80;background:#e0614a1a}.scan-rows{display:flex;flex-direction:column}.scan-note{font-family:var(--font-mono);font-size:12px;color:var(--dim);line-height:1.5;margin:0}.scan-result .modal-submit{align-self:flex-start}.scan-again{align-self:flex-start;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);border:1px solid var(--border);padding:8px 12px}.scan-again:hover{color:var(--cream);border-color:#4a4f3b}.mnav,.hdr-logo,.hdr-mobile{display:none}@media(max-width:720px){.app{grid-template-columns:0 minmax(0,1fr)}.rail,.search,.hdr-bell,.org-switch,.tabs{display:none}.top{padding:0 12px;gap:8px}.hdr-logo{display:block;width:24px;height:auto;flex:none;cursor:pointer}.hdr-mobile{display:flex;flex:none}.crumb{flex:1;min-width:0;overflow:hidden;flex-wrap:nowrap}.crumb .sep,.crumb .crumb-link{display:none}.crumb b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new{flex:none;padding:9px}.new .new-txt{display:none}.main{padding:16px 16px 88px}input,textarea,.fld,.login-field input,.np-clabel{font-size:16px}.np{margin:-16px -16px -88px;grid-template-columns:1fr}.np-right{display:none}.mnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:80;background:var(--ground);border-top:1px solid var(--line);padding:8px 4px calc(8px + env(safe-area-inset-bottom,0px))}.mnav-ic{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--dim);text-decoration:none;font-family:var(--font-mono);font-size:8px;letter-spacing:.06em;text-transform:uppercase}.mnav-ic.on{color:var(--green2)}.rec-head{flex-wrap:wrap;gap:10px}.rec-head>div:first-child{flex:1 1 100%}.rec-tools{width:100%}.rec-desc{display:block}.flow{padding:12px 12px 16px}.conn{display:none}.gateway{width:188px;padding:9px 11px}.gw-top{font-size:11px}.gw-meta{font-size:10px;margin-top:6px}.conn-m{display:block;position:relative;height:16px}.conn-m:after{content:"";position:absolute;top:0;left:50%;width:1px;height:8px;background:var(--line);transform:translate(-50%)}.conn-m:before{content:"";position:absolute;top:8px;left:25%;right:25%;height:8px;border:1px solid var(--line);border-bottom:0}.engines{grid-template-columns:1fr 1fr!important;gap:10px}.engine{padding:9px 10px}.engine-top{font-size:10.5px;gap:6px;margin-bottom:6px}.engine-top .tag{font-size:8px;padding:2px 5px}.engine-row{font-size:10px;margin-top:5px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-scroll table{min-width:560px}.kpis{grid-template-columns:repeat(2,1fr)}}.org-switch-m{display:none}@media(max-width:720px){.org-switch-m{display:block}}
