.iot-module{--iot-border:rgba(255,255,255,.09);--iot-blue:#75b9ff;--iot-teal:#50e0c3;--iot-violet:#bd9aff;color:#fffc}.iot-rise{animation:iot-rise-in .55s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--iot-delay,0ms)}.iot-delay-1{--iot-delay:80ms}.iot-delay-2{--iot-delay:145ms}.iot-delay-3{--iot-delay:.21s}.iot-delay-4{--iot-delay:275ms}.iot-delay-5{--iot-delay:.34s}@keyframes iot-rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.iot-module{position:relative}.iot-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:17px}.iot-kicker,.iot-eyebrow{color:#ffffff59;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.iot-kicker span{display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--iot-teal);box-shadow:0 0 11px #50e0c3cc}.iot-heading h3{max-width:650px;margin-top:5px;color:#f3fffd;font-size:clamp(21px,3vw,29px);font-weight:500;letter-spacing:-.04em}.iot-heading-copy{max-width:660px;margin-top:7px;color:#fff6;font-size:11px;line-height:1.5}.iot-api-status{display:flex;flex:0 0 auto;align-items:center;gap:6px;padding:9px 11px;border:1px solid rgba(80,224,195,.2);border-radius:10px;color:#7debd6;background:#50e0c30f;font-size:10px}.iot-api-status small{color:#7debd699;font-size:9px}.iot-live-dot,.iot-receiving i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--iot-teal);box-shadow:0 0 10px #50e0c3e6;animation:iot-pulse 2s ease-in-out infinite}@keyframes iot-pulse{0%,to{opacity:.45;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.iot-value-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin-top:17px;padding:14px;border:1px solid rgba(117,185,255,.17);border-radius:14px;background:linear-gradient(120deg,#3768a026,#50e0c30b)}.iot-value-icon{display:grid;width:35px;height:35px;place-items:center;border:1px solid rgba(117,185,255,.2);border-radius:10px;color:#a9d5ff;background:#75b9ff1a}.iot-value-banner strong{color:#ffffffdb;font-size:12px;font-weight:500}.iot-value-banner p{max-width:650px;margin-top:4px;color:#ffffff6b;font-size:10px;line-height:1.5}.iot-value-points{display:flex;flex-direction:column;gap:6px;color:#ffffff73;font-size:9px}.iot-value-points span{display:flex;align-items:center;gap:5px;white-space:nowrap}.iot-value-points svg{color:var(--iot-teal)}.iot-metric,.iot-telemetry-panel,.iot-flow-panel,.iot-apps-panel,.iot-custom-panel{min-width:0;border:1px solid var(--iot-border);border-radius:14px;background:linear-gradient(145deg,#ffffff0b,#ffffff05);box-shadow:inset 0 1px #ffffff06,0 14px 40px #0000001f}.iot-flow-panel{position:relative;overflow:hidden}.iot-flow-content{position:relative;z-index:1;transition:opacity .55s ease,transform .68s cubic-bezier(.2,.8,.2,1)}.iot-flow-content.is-intro-hidden{opacity:0;transform:translateY(12px);pointer-events:none}.iot-flow-content.is-visible{opacity:1;transform:translateY(0);transition-delay:.08s}.iot-metric{padding:13px;transition:transform .25s ease,border-color .25s ease,background .25s ease}.iot-metric:hover{transform:translateY(-2px);border-color:#ffffff2e;background:#ffffff0f}.iot-metric>span{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:8px}.iot-metric>span.is-blue{color:#75b9ff;background:#75b9ff1f}.iot-metric>span.is-teal{color:#50e0c3;background:#50e0c31f}.iot-metric>span.is-green{color:#62e5a6;background:#62e5a61f}.iot-metric>span.is-amber{color:#f6c45c;background:#f6c45c1f}.iot-metric strong{display:block;margin-top:9px;color:#f4fffd;font-size:22px;font-weight:500;letter-spacing:-.03em}.iot-metric p{margin-top:2px;color:#ffffff80;font-size:9px}.iot-metric small{display:block;margin-top:5px;color:#ffffff47;font-size:9px}.iot-main-grid,.iot-apps-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px;margin-top:14px}.iot-telemetry-panel,.iot-flow-panel,.iot-apps-panel,.iot-custom-panel{padding:15px}.iot-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.iot-section-head h4{margin-top:3px;color:#ffffffe0;font-size:14px;font-weight:500}.iot-section-icon{color:#a9d5ff}.iot-receiving{display:flex;align-items:center;gap:5px;color:#7debd6b8;font-size:9px}.iot-device-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:15px}.iot-device-switch button{display:flex;min-width:0;align-items:center;gap:6px;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:9px;color:#ffffff6e;background:#ffffff05;text-align:left;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.iot-device-switch button:hover,.iot-device-switch button.is-active{border-color:#75b9ff47;color:#ffffffdb;background:#75b9ff12}.iot-device-switch button>span{display:grid;width:25px;height:25px;flex:0 0 auto;place-items:center;border-radius:7px}.iot-device-switch button>span.is-blue{color:#75b9ff;background:#75b9ff1f}.iot-device-switch button>span.is-teal{color:#50e0c3;background:#50e0c31f}.iot-device-switch button>span.is-amber{color:#f6c45c;background:#f6c45c1f}.iot-device-switch div{display:flex;min-width:0;flex-direction:column;gap:2px}.iot-device-switch strong{overflow:hidden;font-size:9px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.iot-device-switch small{overflow:hidden;color:#ffffff4d;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.iot-selected-device{display:flex;align-items:center;gap:9px;margin-top:14px;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:#ffffff06}.iot-device-signal{display:grid;width:31px;height:31px;place-items:center;border-radius:9px}.iot-device-signal.is-blue{color:#75b9ff;background:#75b9ff1f}.iot-device-signal.is-teal{color:#50e0c3;background:#50e0c31f}.iot-device-signal.is-amber{color:#f6c45c;background:#f6c45c1f}.iot-selected-device>div{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.iot-selected-device strong{overflow:hidden;color:#ffffffc7;font-size:10px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.iot-selected-device small{color:#ffffff52;font-size:8px}.iot-device-status{display:flex;align-items:center;gap:4px;font-size:8px;white-space:nowrap}.iot-device-status i{width:5px;height:5px;border-radius:50%;background:currentColor}.iot-device-status.is-blue{color:#75b9ff}.iot-device-status.is-teal{color:#50e0c3}.iot-device-status.is-amber{color:#f6c45c}.iot-metric-readings{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:11px}.iot-metric-readings>div{display:flex;min-width:0;flex-direction:column;gap:3px;padding:8px;border-radius:8px;background:#0000002e}.iot-metric-readings span{color:#ffffff52;font-size:8px}.iot-metric-readings strong{color:#fffc;font-size:14px;font-weight:500}.iot-metric-readings small{display:flex;align-items:center;gap:3px;color:#6ee7b7;font-size:8px}.iot-telemetry-chart{position:relative;margin-top:14px}.iot-telemetry-chart svg{display:block;width:100%;height:142px;overflow:visible}.iot-grid-line{stroke:#ffffff12;stroke-width:1}.iot-chart-area{fill:#75b9ff17}.iot-chart-line{fill:none;stroke:#75b9ff;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(117,185,255,.42))}.iot-chart-dot{fill:#0c141d;stroke:#75b9ff;stroke-width:1.8}.iot-telemetry-chart.is-teal .iot-chart-area{fill:#50e0c317}.iot-telemetry-chart.is-teal .iot-chart-line{stroke:#50e0c3;filter:drop-shadow(0 0 5px rgba(80,224,195,.42))}.iot-telemetry-chart.is-teal .iot-chart-dot{stroke:#50e0c3}.iot-telemetry-chart.is-amber .iot-chart-area{fill:#f6c45c17}.iot-telemetry-chart.is-amber .iot-chart-line{stroke:#f6c45c;filter:drop-shadow(0 0 5px rgba(246,196,92,.42))}.iot-telemetry-chart.is-amber .iot-chart-dot{stroke:#f6c45c}.iot-chart-labels{display:flex;justify-content:space-between;margin:0 4px;color:#ffffff45;font-size:8px}.iot-panel-note{display:flex;align-items:center;gap:5px;margin-top:13px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07);color:#ffffff59;font-size:9px}.iot-panel-note svg{color:#50e0c3}.iot-equipment-visual{position:relative;min-height:128px;margin-top:14px;overflow:hidden;border:1px solid rgba(117,185,255,.18);border-radius:11px;background:#07111a;box-shadow:inset 0 1px #ffffff0d}.iot-equipment-visual:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#03080de6,#03080d94 38%,#03080d0d 75%),linear-gradient(0deg,rgba(3,8,13,.72),transparent 55%);pointer-events:none}.iot-equipment-visual img{display:block;width:100%;height:128px;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;opacity:.78}.iot-equipment-visual-copy{position:absolute;z-index:1;bottom:10px;left:11px;display:flex;flex-direction:column;gap:3px}.iot-equipment-visual-copy span{display:flex;align-items:center;gap:4px;color:#7dc6ff;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.iot-equipment-visual-copy span svg{color:#50e0c3}.iot-equipment-visual-copy strong{color:#ffffffdb;font-size:11px;font-weight:500}.iot-equipment-visual-copy small{color:#ffffff7a;font-size:8px}.iot-flow{display:flex;flex-direction:column;gap:0;margin-top:16px}.iot-flow-node{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff06}.iot-flow-node>div{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.iot-flow-node strong{color:#ffffffb8;font-size:10px;font-weight:500}.iot-flow-node small{color:#ffffff4d;font-size:8px}.iot-flow-node>svg{color:#6ee7b7}.iot-flow-icon{display:grid;width:29px;height:29px;place-items:center;border-radius:8px}.iot-flow-icon.is-blue{color:#75b9ff;background:#75b9ff1f}.iot-flow-icon.is-violet{color:#bd9aff;background:#bd9aff1f}.iot-flow-icon.is-teal{color:#50e0c3;background:#50e0c31f}.iot-flow-connector{display:flex;align-items:center;gap:6px;height:28px;padding-left:14px;color:#ffffff47;font-size:8px}.iot-flow-connector i{display:block;width:1px;height:18px;background:linear-gradient(to bottom,#75b9ffcc,#50e0c359)}.iot-flow-connector i:last-of-type{display:none}.iot-protocols{margin-top:17px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}.iot-protocols>span{color:#ffffff4d;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.iot-protocols>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.iot-protocols b{padding:5px 6px;border:1px solid rgba(117,185,255,.18);border-radius:6px;color:#a9d5ff;background:#75b9ff0f;font-size:8px;font-weight:500}.iot-outline-button{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;margin-top:13px;padding:8px;border:1px solid rgba(80,224,195,.2);border-radius:8px;color:#7debd6;background:#50e0c30f;font-size:9px;cursor:pointer}.iot-outline-button:hover{border-color:#50e0c37a;background:#50e0c31f}.iot-video-intro{position:absolute;z-index:4;top:0;right:0;left:0;width:100%;height:min(100vh,100%);overflow:hidden;border-radius:inherit;background:#07111a;isolation:isolate}.iot-video-intro video{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center top;object-position:center top;background:#05090d}.iot-video-intro-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,#03080d14 10%,#03080d21 38%,#03080de6);pointer-events:none}.iot-video-intro-copy{position:absolute;z-index:2;right:15px;bottom:47px;left:15px}.iot-video-intro-copy p{display:flex;align-items:center;gap:6px;color:#7debd6;font-size:8px;letter-spacing:.14em;text-transform:uppercase}.iot-video-intro-copy p span{width:6px;height:6px;border-radius:50%;background:var(--iot-teal);box-shadow:0 0 10px #50e0c3e6}.iot-video-intro-copy h4{margin-top:5px;color:#f2fffd;font-size:21px;font-weight:500;letter-spacing:-.04em}.iot-video-intro-copy>span{display:block;margin-top:4px;color:#ffffff94;font-size:8px}.iot-video-intro-skip{position:absolute;z-index:3;right:12px;top:12px;display:flex;align-items:center;gap:4px;padding:6px 8px;border:1px solid rgba(255,255,255,.25);border-radius:7px;color:#ffffffc2;background:#03080d70;font-size:8px;cursor:pointer;transition:background .2s,border-color .2s}.iot-video-intro-skip:hover{border-color:#7debd6a6;background:#083533b3}.iot-video-intro-particles{position:absolute;z-index:3;top:50%;left:50%;width:0;height:0;pointer-events:none}.iot-video-intro-particles i{position:absolute;display:block;width:3px;height:14px;border-radius:99px;background:var(--iot-teal);box-shadow:0 0 9px #50e0c3e6;opacity:0;transform:translate(0) rotate(var(--r))}.iot-video-intro.is-leaving{animation:iot-intro-panel-exit .76s cubic-bezier(.2,.8,.2,1) both}.iot-video-intro.is-leaving video{animation:iot-intro-video-exit .7s ease-in both}.iot-video-intro.is-leaving .iot-video-intro-shade{animation:iot-intro-shade-exit .7s ease-in both}.iot-video-intro.is-leaving .iot-video-intro-copy{animation:iot-intro-copy-exit .42s ease-in both}.iot-video-intro.is-leaving .iot-video-intro-skip{opacity:0}.iot-video-intro.is-leaving .iot-video-intro-particles i{animation:iot-intro-particle-exit .7s cubic-bezier(.2,.8,.2,1) both}.iot-video-intro.is-leaving .iot-video-intro-particles i:nth-child(2n){animation-delay:35ms}.iot-video-intro.is-leaving .iot-video-intro-particles i:nth-child(3n){animation-delay:70ms}@keyframes iot-intro-panel-exit{0%{opacity:1;transform:scale(1)}70%{opacity:1;transform:scale(1.015)}to{opacity:0;transform:scale(1.035)}}@keyframes iot-intro-video-exit{0%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(1.13);filter:blur(6px)}}@keyframes iot-intro-shade-exit{0%{opacity:1}to{opacity:0}}@keyframes iot-intro-copy-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes iot-intro-particle-exit{0%{opacity:.95;transform:translate(0) rotate(var(--r)) scale(1)}to{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(.45)}}.iot-video-intro-sound{position:absolute;z-index:3;top:12px;left:12px;display:flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid rgba(125,235,214,.42);border-radius:7px;color:#9cf2df;background:#03080d94;font-size:8px;cursor:pointer;transition:background .2s,border-color .2s}.iot-video-intro-sound:hover{border-color:#7debd6cc;background:#083533d1}.iot-apps-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.iot-industry-list{display:flex;flex-direction:column;gap:6px;margin-top:16px}.iot-industry-list button{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid transparent;border-radius:9px;color:#ffffff73;background:0 0;text-align:left;cursor:pointer;transition:background .2s,border-color .2s}.iot-industry-list button:hover,.iot-industry-list button.is-active{border-color:#75b9ff2e;background:#75b9ff0d;color:#ffffffd1}.iot-industry-icon{display:grid;width:27px;height:27px;place-items:center;border-radius:8px}.iot-industry-icon.is-blue{color:#75b9ff;background:#75b9ff1f}.iot-industry-icon.is-amber{color:#f6c45c;background:#f6c45c1f}.iot-industry-icon.is-violet{color:#bd9aff;background:#bd9aff1f}.iot-industry-list button>div{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.iot-industry-list strong{font-size:10px;font-weight:500}.iot-industry-list small{color:#ffffff4d;font-size:8px}.iot-industry-list button>svg{color:#ffffff40}.iot-custom-copy{margin-top:18px;padding:13px;border:1px solid rgba(80,224,195,.13);border-radius:10px;background:#50e0c30b}.iot-custom-copy strong{color:#ffffffbf;font-size:11px;font-weight:500}.iot-custom-copy p{margin-top:5px;color:#fff6;font-size:9px;line-height:1.5}.iot-data-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.iot-data-tags span{display:flex;align-items:center;gap:4px;padding:6px 7px;border-radius:6px;color:#7debd6;background:#50e0c314;font-size:8px}.iot-data-tags svg{color:#50e0c3}.iot-custom-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px;padding-top:11px;border-top:1px solid rgba(255,255,255,.07);color:#ffffff52;font-size:8px}.iot-custom-footer span{display:flex;align-items:center;gap:4px}.iot-custom-footer svg{color:#75b9ff}.iot-custom-footer b{color:#a9d5ff;font-weight:500}.iot-scale-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin-top:14px;padding:15px;border:1px solid rgba(189,154,255,.19);border-radius:14px;background:linear-gradient(115deg,#6449912e,#ffffff06)}.iot-scale-icon{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(189,154,255,.28);border-radius:10px;color:#c9afff;background:#bd9aff1a}.iot-scale-banner h4{margin-top:3px;color:#f7f1ff;font-size:15px;font-weight:500}.iot-scale-banner p:last-child{max-width:650px;margin-top:5px;color:#ffffff70;font-size:10px;line-height:1.5}.iot-scale-badge{display:flex;align-items:center;gap:5px;padding:7px 8px;border:1px solid rgba(189,154,255,.18);border-radius:7px;color:#c9afff;background:#bd9aff12;font-size:8px;white-space:nowrap}.iot-scale-badge svg{color:#bd9aff}@media (max-width:780px){.iot-heading{flex-direction:column}.iot-api-status{align-self:stretch}.iot-value-banner{grid-template-columns:auto minmax(0,1fr)}.iot-value-points{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;padding-left:48px}.iot-main-grid,.iot-apps-grid{grid-template-columns:1fr}.iot-scale-banner{grid-template-columns:auto minmax(0,1fr)}.iot-scale-badge{grid-column:1/-1;margin-left:51px;width:-moz-max-content;width:max-content}}@media (max-width:560px){.iot-device-switch{grid-template-columns:1fr}.iot-metric-readings{grid-template-columns:1fr 1fr}.iot-metric-readings>div:last-child{grid-column:1/-1}.iot-custom-footer{align-items:flex-start;flex-direction:column}.iot-scale-badge{margin-left:0}.iot-flow-connector span{font-size:7px}}@media (prefers-reduced-motion:reduce){.iot-rise,.iot-live-dot,.iot-receiving i{animation:none}.iot-metric{transition:none}}.iot-video-intro-media{position:absolute;z-index:2;top:0;right:0;left:0;aspect-ratio:16/9;overflow:hidden;background:#07111a}.iot-video-intro-media:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,#03080d05 48%,#03080d94);pointer-events:none}.iot-video-intro-media video{height:100%;-o-object-fit:cover;object-fit:cover}