@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;450;500;550;600;650;700;750;800&display=swap');
:root{font-family:'Noto Sans SC',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#202b40;background:#f6f8fc;font-synthesis:none;font-size:14px;--blue:#2d60df;--muted:#8691a5;--border:#eaf0f6}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{transition:background .18s,box-shadow .18s,transform .18s}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #80a8ff;outline-offset:4px}a{color:inherit;text-decoration:none}.icon{flex-shrink:0;vertical-align:middle}button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:750;letter-spacing:1px}.brand-mark{width:39px;height:39px;border-radius:12px;background:var(--blue);display:grid;place-items:center;color:white;box-shadow:0 5px 12px #2d60df20}.brand-mark .icon{width:23px;height:23px}.brand-en{display:block;font-size:9px;letter-spacing:2.8px;color:#9ba6b8;margin-top:3px;font-weight:500}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:#94a2b9}.blue-text{color:var(--blue)}.primary{border:0;border-radius:8px;padding:12px 22px;color:#fff;background:var(--blue);font-weight:550}.primary:hover{background:#214fc4;box-shadow:0 4px 14px #2d60df22}.secondary{background:white;border:1px solid #e1e7f1;border-radius:7px;padding:10px 14px;font-size:12px;color:#53637c}.secondary:hover{background:#f6f9ff}.badge{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;border-radius:5px;padding:5px 9px;font-size:11px;font-weight:500;line-height:1.3}.badge .icon{width:13px;height:13px}.blue{color:#3b6ae2;background:#edf3ff}.green{color:#2aa58a;background:#eaf8f2}.purple{color:#8b66d4;background:#f2edfc}.orange{color:#d49a44;background:#fff5e7}.progress{height:5px;background:#edf1f7;overflow:hidden;border-radius:8px}.progress i{display:block;height:100%;border-radius:8px;background:#4d7cf1}.progress.purple i{background:#9b7cdd}.progress.orange i{background:#efb15e}.progress-label{display:flex;justify-content:space-between;margin-bottom:10px;font-size:11px;color:#8d98aa}.progress-label strong{color:#66748b;font-weight:550}.project-symbol{height:44px;width:44px;display:grid;place-items:center;border-radius:12px;font-size:23px;font-weight:650}.avatar-stack{display:flex;padding-left:0}.avatar-stack b{height:27px;width:27px;border:2px solid white;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:500;background:#e5ecff;color:#6c83b7}.avatar-stack b+b{margin-left:-7px;background:#f1e8dd;color:#a79172}.avatar-stack b:nth-child(3){background:#e6e0f3;color:#9582ae}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:#fff}.login-story{background:#f0f5ff;padding:42px 8%;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-story:before{content:'';position:absolute;width:550px;height:550px;right:-300px;top:170px;border-radius:50%;border:70px solid #e6eeff55;pointer-events:none}.story-body{margin:auto 0;padding:70px 0;max-width:500px;position:relative}.story-body h1{font-size:clamp(30px,3.4vw,49px);line-height:1.6;font-weight:700;letter-spacing:1px;margin:20px 0}.story-body h1>span{color:var(--blue)}.story-body>p{color:#7b8ba5;line-height:2;font-size:14px}.preview-card{margin-top:36px;background:#ffffffd9;border:1px solid white;border-radius:14px;padding:24px;box-shadow:0 18px 40px #224d9a09;transform:rotate(-2deg);max-width:430px}.preview-heading{display:flex;align-items:center;gap:12px;margin-bottom:28px}.preview-heading strong{font-size:13px}.preview-heading small{display:block;font-size:10px;color:#9aa5b7;margin-top:5px}.preview-heading>.badge{margin-left:auto}.preview-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:21px;color:#98a3b5;font-size:9px;gap:10px}.preview-bottom .icon{width:13px}.story-features{display:flex;gap:22px;margin-top:38px;color:#7c8da8;font-size:10px}.story-features>span{display:flex;gap:6px;align-items:center}.story-features .icon{width:16px}.login-story footer{font-size:10px;color:#a2aec1}.login-panel{display:grid;place-items:center;padding:60px 40px}.login-form-wrap{width:100%;max-width:350px}.login-form-wrap h2{font-size:30px;letter-spacing:1px;margin:16px 0 10px}.login-form-wrap>.muted{font-size:12px;margin-bottom:38px}form label{display:block;font-size:12px;font-weight:550;margin:22px 0 10px}input{width:100%;border:1px solid #e0e6ef;border-radius:7px;height:46px;padding:0 14px;outline:0;color:#33435d;background:#fff}input:focus{border-color:#5b83eb;box-shadow:0 0 0 3px #2d60df0d}input::placeholder{color:#aeb6c4;font-size:12px}.password-wrap{position:relative}.password-wrap input{padding-right:45px}.password-wrap button{position:absolute;right:8px;top:8px;background:none;border:0;padding:6px;color:#9aa7ba}.password-wrap .icon{width:17px;height:17px}.login-note{display:flex;align-items:center;gap:6px;color:#9aa5b5;font-size:10px;margin-top:16px}.login-note .icon{width:13px;height:13px}.error{font-size:11px;color:#d34848;min-height:16px;margin:10px 0}.login-submit{width:100%;height:46px;justify-content:space-between;padding:0 18px}.demo-accounts{margin-top:32px;border-top:1px solid var(--border);padding-top:24px}.demo-title{font-size:11px;font-weight:550;display:flex;justify-content:space-between}.demo-title span{font-size:10px;color:#9ba5b6;font-weight:400}.demo-buttons{display:flex;gap:8px;margin:14px 0 10px}.demo-buttons button{flex:1;background:#f8fafd;border:1px solid #eaf0f7;border-radius:6px;padding:9px 4px;color:#697993;font-size:10px;gap:4px}.demo-buttons button:hover{border-color:#8eaeff;background:#edf3ff;color:var(--blue)}.demo-buttons .icon{width:14px;height:14px}.demo-accounts small{font-size:10px;color:#a5adbb}.login-disclaimer{text-align:center;font-size:9px;color:#b2bac7;margin-top:40px}.workspace{display:flex;min-height:100vh}.sidebar{width:232px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--border);padding:33px 22px 0;display:flex;flex-direction:column;z-index:20}.sidebar .brand{font-size:19px;gap:10px;margin-left:5px}.sidebar .brand-mark{width:35px;height:35px;border-radius:10px}.sidebar .brand-en{font-size:8px}.workspace-label{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#9aa4b6;margin:44px 12px 17px}.workspace-label span{font-size:9px;color:#9ba8bd;border:1px solid #edf0f6;padding:3px 5px;border-radius:3px}.nav-item{border:0;background:none;width:100%;justify-content:flex-start;color:#7a879e;height:45px;border-radius:7px;font-size:12px;padding:0 14px;gap:13px;margin-bottom:7px}.nav-item .icon{width:18px;height:18px}.nav-item small{margin-left:auto;background:#f0f3f8;padding:2px 6px;border-radius:4px;font-size:9px}.nav-item:hover{background:#f6f8fd}.nav-item.active{background:#edf3ff;color:var(--blue);font-weight:600}.sidebar-bottom{margin-top:auto}.help-card{background:linear-gradient(135deg,#f4f7ff,#f9faff);border:1px solid #edf1fa;border-radius:9px;padding:16px;margin-bottom:24px}.help-icon{display:block;color:#7b9cec;margin-bottom:12px}.help-card strong{display:block;font-size:11px;font-weight:550}.help-card p{font-size:9px;color:#9ca8ba;line-height:1.8}.help-card button{background:none;border:0;color:#6584d4;font-size:10px;padding:5px 0}.help-card button .icon{width:13px;height:13px}.sidebar-user{border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;padding:20px 0}.user-avatar,.member-avatar{display:inline-grid;place-items:center;background:#e8effd;color:#6d8bcc;border-radius:50%;width:34px;height:34px;font-size:12px}.sidebar-user strong{font-size:11px;font-weight:550}.sidebar-user small{display:block;font-size:9px;color:#9ca7b8;margin-top:3px}.icon-button{background:none;border:0;color:#9aa5b7;border-radius:5px;padding:6px}.icon-button:hover{background:#f0f4fa;color:#395eaf}.sidebar-user>.icon-button{margin-left:auto}.sidebar-user .icon-button .icon{width:16px;height:16px}.main-shell{margin-left:232px;flex:1;min-width:0}.topbar{height:76px;background:#ffffffd9;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 38px;font-size:11px}.breadcrumb{color:#9aa5b6}.slash{color:#c4ccda;margin:0 12px}.topbar strong{font-weight:500;color:#5a6780}.topbar-right{display:flex;align-items:center;gap:20px}.environment{color:#929eb1;font-size:10px;display:flex;align-items:center;gap:6px}.environment i,.status-dot{display:inline-block;height:5px;width:5px;border-radius:50%;background:#5bb89c}.header-divider{height:17px;width:1px;background:var(--border)}.main-content{max-width:1440px;margin:auto;padding:34px 38px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:15px}.page-heading .eyebrow{font-size:9px;letter-spacing:1.8px}.page-heading h1{font-size:25px;letter-spacing:.5px;font-weight:650;margin:10px 0}.wave{font-size:27px;font-weight:400;color:#efbc54;display:inline-block;margin-left:5px}.page-heading p{font-size:11px;color:#98a2b3;margin:0}.today{display:flex;align-items:center;gap:7px;background:white;border:1px solid var(--border);border-radius:6px;font-size:10px;color:#8c98ab;padding:9px 12px;white-space:nowrap}.today .icon{width:14px;height:14px}.welcome-banner{background:linear-gradient(108deg,#315fd6,#527de8);color:#fff;display:flex;align-items:center;justify-content:space-between;border-radius:11px;padding:26px 30px;position:relative;overflow:hidden;min-height:150px}.banner-label{display:inline-block;background:#ffffff20;font-size:9px;padding:5px 9px;border:1px solid #ffffff22;border-radius:4px;letter-spacing:.6px}.welcome-banner h2{font-size:20px;font-weight:550;letter-spacing:.4px;margin:14px 0 9px}.welcome-banner p{font-size:10px;color:#cbdafa;margin:0}.banner-art{position:absolute;right:55px;width:92px;height:92px;display:grid;place-items:center;border-radius:23px;background:#ffffff10;transform:rotate(-12deg);border:1px solid #ffffff20;box-shadow:22px 18px 0 #ffffff06,-30px -18px 0 #ffffff05}.banner-art .icon{width:46px;height:46px;stroke-width:1.2;color:#e5edff;transform:rotate(12deg)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0 32px}.stat-card{background:#fff;border:1px solid var(--border);border-radius:9px;padding:19px 20px;position:relative}.feature-icon{display:inline-grid;place-items:center;border-radius:10px;height:37px;width:37px;flex-shrink:0}.feature-icon .icon{width:18px;height:18px}.stat-card>.feature-icon{position:absolute;right:18px;top:18px}.stat-label{font-size:11px;color:#8591a5;display:block;margin:2px 0 12px}.stat-card>strong{display:block;font-size:30px;line-height:1;font-weight:600;letter-spacing:-1px}.stat-card>strong small{font-size:10px;color:#a5afbf;font-weight:400;letter-spacing:0;margin-left:7px}.stat-card p{font-size:9px;color:#a4aebf;margin:14px 0 0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px;gap:15px}.section-heading h2{font-size:14px;font-weight:600;margin:0}.section-heading h2>span{font-size:9px;color:#b3bdcd;font-weight:450;letter-spacing:1px;margin-left:10px}.text-button{border:0;background:none;padding:3px 0;color:#8b99b0;font-size:10px;gap:6px}.text-button:hover{color:var(--blue)}.text-button .icon{width:13px;height:13px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-card{display:block;text-align:left;background:white;border:1px solid var(--border);border-radius:9px;padding:20px;min-width:0;color:inherit}.project-card:hover{transform:translateY(-3px);box-shadow:0 8px 26px #253b6610;border-color:#d8e3fb}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.project-card .project-symbol{width:38px;height:38px;font-size:20px;border-radius:10px}.project-card h3{font-size:13px;font-weight:550;margin:0 0 7px}.project-card>p{font-size:10px;color:#a0aabc;margin:0 0 24px}.project-card .progress-label{font-size:9px}.project-card .progress{height:4px}.project-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:15px;border-top:1px solid #f1f4f9;gap:4px}.project-bottom>span:last-child{display:flex;align-items:center;font-size:9px;color:#9da8b9;gap:5px}.project-bottom .icon{height:12px;width:12px}.panel{border:1px solid var(--border);border-radius:9px;background:white;margin-top:24px;overflow:hidden}.panel>.section-heading{padding:20px 22px;margin:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:10px}th{background:#fafbfd;color:#a2adbd;font-size:9px;font-weight:400;padding:12px 22px;border-top:1px solid #f2f5f9;border-bottom:1px solid #f1f4f9}td{padding:15px 22px;border-bottom:1px solid #f2f5f9;color:#9aa6b9}tbody tr:last-child td{border-bottom:0}td:first-child{color:#57677f;font-weight:450}.task-icon{display:inline-grid;vertical-align:middle;place-items:center;width:22px;height:22px;border-radius:5px;background:#f3f6fd;color:#9cb1dc;margin-right:9px}.task-icon .icon{width:13px;height:13px}.task-icon.done{color:#73b8a2;background:#eef8f3}.role-panel{display:flex;align-items:center;padding:23px;gap:16px}.role-panel .feature-icon{width:43px;height:43px}.role-panel h2{font-size:12px;font-weight:550;margin:0 0 7px}.role-panel p{font-size:10px;color:#9ba6b8;margin:0;line-height:1.7}.role-panel .secondary{margin-left:auto;white-space:nowrap;font-size:10px}.role-panel .secondary .icon{width:13px;height:13px}.member-avatar{width:26px;height:26px;margin-right:9px;font-size:10px}.status-dot{margin-right:7px}.panel-foot{border-top:1px solid var(--border);padding:15px 22px;color:#98a5b8;font-size:10px;display:flex;gap:7px;align-items:center;line-height:1.8}.panel-foot .icon{height:14px;width:14px}.main-footer{display:flex;justify-content:space-between;color:#b2bac8;font-size:9px;margin:28px 0 0;padding:5px 0;gap:15px}.main-footer i{font-style:normal;padding:0 6px}.modal-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#18274666;backdrop-filter:blur(4px);padding:24px}.modal{background:#fff;border-radius:14px;width:100%;max-width:520px;max-height:85vh;overflow:auto;padding:28px;box-shadow:0 25px 80px #10204233}.modal p{font-size:12px;line-height:1.9;color:#7a889f}.modal h3{font-size:13px;margin-top:28px}.modal .section-heading h2{font-size:18px}.modal .icon-button{font-size:24px}.modal>.primary{margin-top:15px}.modal code{background:#f1f4f9;padding:2px 5px;border-radius:4px;font-size:11px;overflow-wrap:anywhere}.modal-task{display:flex;justify-content:space-between;align-items:center;gap:12px}.loading{min-height:100vh;display:grid;place-items:center;color:#8b9ab4;font-size:13px}@media(min-width:1600px){.main-content{padding-top:42px}.welcome-banner{min-height:170px}.project-card{padding:25px}.stat-card{padding:25px}}@media(max-width:1100px){.sidebar{width:200px;padding-left:16px;padding-right:16px}.main-shell{margin-left:200px}.topbar{padding:0 24px}.main-content{padding:28px 24px 20px}.stats-grid,.project-grid{gap:12px}.stat-card{padding:16px}.stat-card>.feature-icon{width:29px;height:29px;right:12px}.project-card{padding:16px}.banner-art{right:30px;opacity:.6}.welcome-banner>div:first-child{z-index:1}.story-features{gap:12px}.story-features>span{font-size:9px}.login-story{padding-left:8%;padding-right:6%}}@media(max-width:800px){.sidebar{width:76px;padding:26px 12px 0}.sidebar .brand{margin:0;justify-content:center}.sidebar .brand>span:last-child,.workspace-label,.nav-item>span,.nav-item small,.help-card,.sidebar-user>div,.sidebar-user>.user-avatar{display:none}.sidebar nav{margin-top:40px}.nav-item{padding:0;justify-content:center}.nav-item .icon{width:20px;height:20px}.sidebar-user{justify-content:center}.sidebar-user>.icon-button{margin:0}.main-shell{margin-left:76px}.stats-grid{grid-template-columns:repeat(2,1fr)}.welcome-banner h2{font-size:17px}.role-panel{flex-wrap:wrap}.role-panel .secondary{margin-left:59px}.login{grid-template-columns:1fr 1fr}.login-story{padding:30px 25px}.story-body h1{font-size:30px}.story-body>p{font-size:11px}.story-features{flex-wrap:wrap}.preview-card{padding:18px}.preview-heading>.badge{display:none}.preview-bottom>span:last-child{font-size:8px}.login-panel{padding:40px 25px}.project-grid{grid-template-columns:1fr}.project-card{padding:20px}.card-top{margin-bottom:14px}.project-card>p{margin-bottom:18px}}@media(max-width:560px){.login{display:block}.login-story{padding:22px 25px;background:#f0f5ff}.login-story .brand{font-size:18px}.story-body{padding:32px 0 4px}.story-body>.eyebrow,.story-body>p,.preview-card,.story-features,.login-story footer{display:none}.story-body h1{font-size:26px;line-height:1.5;margin:0 0 15px}.story-body h1 br{display:none}.login-panel{padding:38px 28px}.login-form-wrap h2{font-size:26px}.login-form-wrap>.muted{margin-bottom:25px}.login-disclaimer{margin-top:28px}.sidebar{width:61px;padding:23px 8px 0}.sidebar .brand-mark{width:33px;height:33px}.main-shell{margin-left:61px}.main-content{padding:24px 16px 16px}.topbar{height:64px;padding:0 16px}.topbar-right{gap:10px}.environment,.header-divider{display:none}.topbar .badge{font-size:9px}.page-heading{align-items:flex-start;margin-bottom:22px}.page-heading h1{font-size:21px}.page-heading .eyebrow{font-size:8px}.page-heading p{font-size:10px;line-height:1.8;max-width:210px}.today{display:none}.welcome-banner{padding:23px 18px;min-height:145px}.welcome-banner h2{font-size:16px;line-height:1.7;max-width:225px;margin-top:10px}.welcome-banner p{font-size:9px;max-width:190px;line-height:1.8}.banner-art{width:60px;height:60px;right:14px;opacity:.35}.banner-art .icon{width:35px;height:35px}.stats-grid{margin:16px 0 25px;gap:10px}.stat-card{padding:15px 12px}.stat-card>.feature-icon{width:25px;height:25px;top:12px;right:10px;border-radius:7px}.feature-icon .icon{width:14px;height:14px}.stat-label{font-size:10px}.stat-card>strong{font-size:26px}.stat-card p{font-size:8px;line-height:1.7}.section-heading h2{font-size:13px}.section-heading h2>span{font-size:8px}.panel>.section-heading{padding:17px 15px}th,td{padding:13px 15px}.role-panel{padding:18px 15px;gap:12px}.role-panel>div{flex:1;min-width:140px}.role-panel .secondary{margin-left:55px}.role-panel h2{font-size:11px}.role-panel p{font-size:9px}.main-footer{flex-direction:column;gap:9px;margin-top:24px;font-size:8px}.panel-foot{padding:14px}.modal{padding:22px}.modal p{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* IoT monitoring workspace */
.crumb-button{border:0;background:none;color:#98a4b9;padding:0;font-size:11px}.small{font-size:10px}.gray{background:#f0f2f6;color:#929bad}.flow-strip{display:flex;align-items:center;gap:14px;color:#a2adbd;font-size:10px;margin-bottom:32px}.flow-strip .icon{width:13px;height:13px;color:#c5cedb}.flow-strip .current{color:#3668df;font-weight:600}.scene-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.scene-card{display:block;text-align:left;padding:0;border:1px solid var(--border);background:#fff;border-radius:12px;overflow:hidden;color:inherit}.scene-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #253b6610;border-color:#d4e0f5}.scene-visual{height:180px;position:relative;display:flex;align-items:center;justify-content:center;background:#eaf5f1;overflow:hidden}.scene-visual.blue{background:#eaf0ff}.scene-grid-pattern{position:absolute;inset:0;background-image:linear-gradient(#ffffff66 1px,transparent 1px),linear-gradient(90deg,#ffffff66 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(90deg,transparent,#000,transparent)}.scene-visual-icon{position:relative;display:grid;place-items:center;width:90px;height:90px;border-radius:24px;border:1px solid #ffffffaa;background:#ffffff70;box-shadow:0 10px 30px #527d8520;transform:rotate(-8deg)}.scene-visual-icon .icon{width:49px;height:49px;stroke-width:1.25;transform:rotate(8deg)}.scene-chip{position:absolute;top:17px;left:20px;font-size:10px;letter-spacing:1px;color:#5a8f81;background:#ffffff88;border:1px solid #fff9;padding:6px 10px;border-radius:20px}.blue .scene-chip{color:#6885bd}.mini-nodes{position:absolute;bottom:22px;right:23px;display:flex;gap:6px}.mini-nodes i{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.35}.mini-nodes i:last-child{opacity:.8}.scene-body{padding:25px}.scene-meta{color:#99a5b6;font-size:10px}.scene-meta i{font-style:normal;margin:0 8px}.scene-body h2{font-size:19px;font-weight:600;margin:13px 0}.scene-body>p{font-size:11px;line-height:1.9;color:#96a2b4}.scene-tags{display:flex;gap:10px;margin:22px 0}.scene-tags>span{display:flex;align-items:center;gap:5px;font-size:9px;color:#7d8ea9;background:#f6f8fc;padding:6px 8px;border-radius:5px}.scene-tags .icon{width:12px;height:12px}.scene-action{border-top:1px solid var(--border);padding-top:18px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#5078cf}.scene-action .icon{width:16px;height:16px}.scene-summary{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--border);border-radius:9px;padding:20px;margin-bottom:24px}.scene-summary strong{font-size:12px;font-weight:550}.scene-summary p{font-size:10px;color:#99a5b7;margin:7px 0 0}.scene-summary>.badge{margin-left:auto}.device-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.device-card{display:block;text-align:left;color:inherit;border:1px solid var(--border);border-radius:10px;background:white;padding:24px}.device-card:hover{border-color:#afc6fa;transform:translateY(-2px);box-shadow:0 8px 25px #26437b0b}.device-card .card-top{margin-bottom:28px}.device-code{font-size:10px;letter-spacing:1px;color:#9eabbd}.device-card h2{font-size:19px;font-weight:600;margin:10px 0}.device-card>p{font-size:11px;color:#99a5b6}.device-sensors{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0}.device-sensors span{font-size:9px;background:#f4f7fc;border-radius:4px;padding:5px 7px;color:#8b9ab0}.device-action{border-top:1px solid var(--border);padding-top:17px;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#7089b9}.device-action .icon{width:15px;height:15px}.dot{width:5px;height:5px;display:inline-block;border-radius:50%;background:currentColor}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1050px;margin:40px auto 60px}.auth-context{padding:25px 0}.auth-context h1{font-size:35px;line-height:1.7;font-weight:650;margin:20px 0}.auth-context>p{font-size:12px;color:#8a9bb2;line-height:2;max-width:340px}.auth-selected{display:flex;align-items:center;gap:13px;margin:30px 0;border:1px solid #e1e8f5;border-radius:9px;background:#eef3fd;padding:16px}.auth-selected strong{font-size:12px}.auth-selected small{color:#96a6c1;font-size:9px;font-weight:400;margin-left:8px}.auth-selected p{font-size:10px;line-height:1.8;color:#8b9db9;margin:6px 0 0}.permission-list>div{display:flex;align-items:flex-start;gap:12px;margin:22px 0;color:#8c9eba}.permission-list strong{font-size:11px;color:#64738c;font-weight:550}.permission-list p{font-size:10px;margin:5px 0 0;color:#9ba7b9}.permission-list .icon{width:17px;height:17px}.auth-context>.text-button{margin-top:15px}.auth-form{background:#fff;border:1px solid var(--border);border-radius:12px;padding:36px;align-self:center}.auth-form h2{font-size:25px;font-weight:650;margin:17px 0 10px}.auth-form .error{margin-top:15px}.auth-form .demo-accounts{margin-top:25px}.auth-form input{font-size:12px}.access-banner{display:flex;align-items:center;gap:13px;background:white;border:1px solid var(--border);border-radius:9px;padding:18px 21px}.access-banner strong{font-size:12px;font-weight:550}.access-banner p{font-size:10px;color:#94a1b6;line-height:1.8;margin:5px 0 0}.access-banner>.badge{margin-left:auto;flex-shrink:0}.sensor-heading{margin-top:28px}.sensor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sensor-card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:21px}.sensor-title{display:flex;align-items:center;gap:9px;font-size:12px;color:#7d8ca4}.sensor-title .feature-icon{width:29px;height:29px;border-radius:8px}.sensor-title .icon{width:15px;height:15px}.sensor-title>.badge{margin-left:auto;font-size:9px}.sensor-value{font-size:43px;letter-spacing:-1px;font-weight:600;margin-top:24px;color:#293b58}.sensor-value small{font-size:15px;letter-spacing:0;color:#a4afc1;font-weight:400;margin-left:8px}.sensor-card>p{font-size:10px;color:#9eabbd;margin:8px 0 15px}.sensor-warning{border-color:#f1d6b2}.sensor-warning .sensor-value{color:#d19a43}.trend-chart{width:100%;height:auto;display:block;margin-top:16px}.chart-caption{display:flex;justify-content:space-between;font-size:8px;color:#b0bbca;margin-top:3px}.detail-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:22px;align-items:start}.device-info{padding:0 23px 12px;margin:0}.device-info>div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #f0f3f8;padding:16px 0;font-size:11px}.device-info dt{color:#a0acbd}.device-info dd{margin:0;color:#657893;text-align:right}.settings-form{padding:0 23px 23px}.settings-form label{font-size:10px;color:#7e8da4;margin-top:14px}.settings-form input{height:37px;font-size:11px;background:#fcfdff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{margin-top:0}.threshold-title{display:flex;justify-content:space-between;font-size:11px;color:#65778f;margin:24px 0 14px}.threshold-title>span{color:#a8b3c3;font-size:9px}.threshold-row{display:grid;grid-template-columns:1.3fr 1fr auto 1fr;gap:9px;align-items:center;margin-top:10px;font-size:10px;color:#8c9bb2}.threshold-row small{color:#b1bac9;font-size:9px}.threshold-row input{padding:0 10px;min-width:0}.settings-actions{display:flex;gap:10px;flex-wrap:wrap}.settings-actions .primary,.settings-actions .secondary{padding:9px 12px;font-size:10px}.settings-note{font-size:9px;color:#aab4c3;line-height:1.9;margin:15px 0 0}.read-only-panel{padding:32px;text-align:center}.read-only-panel h2{font-size:16px;font-weight:550;margin:18px 0 12px}.read-only-panel p{font-size:11px;color:#98a5b9;line-height:2}.readonly-tags{display:flex;justify-content:center;gap:18px;font-size:10px;color:#98a9c2;margin-top:26px}.readonly-tags .icon{width:13px;height:13px;color:#4cad8d}.diagnostic-summary{display:flex;gap:35px;background:#f9fbff;padding:18px 23px;flex-wrap:wrap;font-size:10px;color:#a0acbe}.diagnostic-summary strong{display:block;color:#71829e;font-size:11px;margin-top:8px;font-weight:450}.diagnostic-empty{padding:25px;color:#80a49b;font-size:11px}.diagnostic-empty .icon{margin-right:8px;width:16px}.diagnostics .section-heading h2{display:flex;align-items:center;gap:8px}.diagnostics code{font-size:10px}.offline-note{background:#fff7ea;border:1px solid #f8e9cf;border-radius:7px;padding:13px 17px;margin-top:15px;font-size:11px;line-height:1.8;color:#b28c51}.notice{background:#eaf7f0;border:1px solid #d5eddf;border-radius:7px;color:#3c9173;font-size:11px;line-height:1.8;padding:12px 17px;margin-bottom:22px}.load-error{max-width:650px;margin:15vh auto;padding:30px}.load-error h1{font-size:25px}.load-error p{color:#8897ab;font-size:13px;line-height:2}.load-error .primary{display:inline-block;margin-top:20px}.sidebar .nav-item{font-size:11px;gap:10px}
@media(max-width:1100px){.auth-layout{gap:30px}.auth-form{padding:26px}.auth-context h1{font-size:30px}.sensor-grid{gap:12px}.sensor-card{padding:16px}.sensor-title{font-size:11px;gap:6px}.sensor-title .feature-icon{width:25px;height:25px}.sensor-title>.badge{padding:4px 6px}.sensor-value{font-size:36px}.detail-grid{grid-template-columns:1fr 1.3fr;gap:14px}.device-card{padding:18px}.device-sensors{gap:4px}.scene-tags{gap:6px}.scene-tags>span{font-size:8px}}
@media(max-width:800px){.scene-grid{gap:16px}.scene-body{padding:20px}.scene-body h2{font-size:16px}.scene-body>p{min-height:42px}.scene-visual{height:150px}.scene-tags{flex-wrap:wrap}.device-grid{grid-template-columns:1fr}.device-card .card-top{margin-bottom:14px}.device-card h2{font-size:17px}.device-sensors{margin:16px 0}.auth-layout{margin-top:0;gap:25px;grid-template-columns:1fr}.auth-context h1{font-size:27px}.auth-context h1 br{display:none}.auth-context>p{max-width:none}.permission-list{display:flex;gap:20px}.permission-list>div{margin:10px 0;gap:6px}.permission-list p{line-height:1.8;font-size:9px}.permission-list .icon{width:14px}.auth-context{padding:0}.auth-selected{margin:20px 0}.auth-form{max-width:480px;width:100%;margin:0 auto}.sensor-grid{grid-template-columns:1fr}.sensor-card{padding:20px}.trend-chart{max-height:140px}.detail-grid{grid-template-columns:1fr}.sensor-value{margin-top:18px}.scene-summary p{line-height:1.8}.sensor-heading .small{font-size:9px}}
@media(max-width:560px){.flow-strip{font-size:8px;gap:5px;margin-bottom:23px;justify-content:space-between}.flow-strip .icon{width:10px;height:10px}.scene-grid{grid-template-columns:1fr}.scene-visual{height:150px}.scene-body{padding:20px}.scene-body>p{min-height:0;font-size:10px}.scene-tags{gap:8px}.scene-tags>span{font-size:9px}.scene-summary{padding:16px;gap:10px;align-items:flex-start}.scene-summary>.badge{font-size:8px;padding:4px 6px;white-space:nowrap}.scene-summary strong{font-size:11px}.scene-summary p{font-size:9px}.page-heading{flex-wrap:wrap;gap:14px}.page-heading .secondary{font-size:10px;padding:7px 10px}.page-heading p{max-width:none}.page-heading h1 .badge{font-size:9px;vertical-align:middle}.access-banner{padding:15px;gap:10px;align-items:flex-start}.access-banner p{font-size:9px}.access-banner>.badge{padding:5px 7px;font-size:9px}.access-banner .feature-icon{width:30px;height:30px;border-radius:8px}.sensor-heading{align-items:flex-start}.sensor-heading .small{max-width:120px;text-align:right;line-height:1.7}.permission-list{flex-direction:column;gap:7px}.permission-list>div{margin:7px 0}.permission-list p{font-size:10px}.auth-context h1{font-size:25px;line-height:1.7}.auth-context h1 br{display:block}.auth-context>p{font-size:11px}.auth-selected{padding:12px;gap:10px}.auth-selected strong{font-size:11px}.auth-selected small{display:block;margin:5px 0}.auth-form{padding:25px 20px}.auth-form h2{font-size:23px}.auth-layout{margin-bottom:30px}.threshold-row{grid-template-columns:1.15fr 1fr auto 1fr;gap:6px}.threshold-row>span:first-child{font-size:9px}.threshold-row small{display:block}.settings-form{padding:0 16px 20px}.settings-actions{gap:8px}.device-info{padding:0 17px 10px}.device-info>div{font-size:10px}.read-only-panel{padding:25px 19px}.readonly-tags{gap:10px;font-size:9px}.diagnostic-summary{gap:22px;padding:16px}.diagnostic-summary strong{font-size:10px}.diagnostics .section-heading{gap:8px}.diagnostics .section-heading .badge{font-size:8px}.offline-note,.notice{font-size:10px}.auth-form .demo-title span{font-size:9px}}

/* Warning summary also serves as a keyboard-accessible device shortcut. */
.stat-action{display:block;text-align:left;color:inherit;width:100%;font:inherit}
.stat-action:hover{border-color:#ebc48b;box-shadow:0 6px 20px #c78b2510;transform:translateY(-2px)}
.stat-action p{color:#b78c4d}
.device-sensors .warning-metric{background:#fff5e7;color:#bf8a39}
.page-heading h1:focus{outline:none}

/* Independent local USB serial test view. */
.serial-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.serial-summary .panel{margin:0;padding:23px}
.serial-summary .panel>span{font-size:11px;color:#94a2b7}
.serial-summary strong{display:block;font-size:25px;font-weight:550;margin-top:15px;color:#354966}
.serial-panel .section-heading{flex-wrap:wrap}
.serial-actions{display:flex;align-items:center;gap:12px}
.serial-actions .secondary{font-size:11px;padding:8px 12px}
.serial-log{height:410px;overflow:auto;background:#142238;color:#d5e2f6;padding:16px 23px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.9;scrollbar-color:#50637b #142238}
.serial-line{display:grid;grid-template-columns:78px minmax(0,1fr);gap:14px;padding:5px 0;border-bottom:1px solid #ffffff06}
.serial-line time{color:#6e8bb0;font-size:11px;user-select:none}
.serial-line>span{white-space:pre-wrap;overflow-wrap:anywhere}
.serial-empty{color:#7d96b8;text-align:center;margin:90px 0;font-family:inherit}
.serial-panel .panel-foot{font-size:10px}
#serial-error[hidden]{display:none}
@media(max-width:560px){.serial-summary{gap:10px}.serial-summary .panel{padding:16px}.serial-summary strong{font-size:19px}.serial-summary .panel>span{font-size:10px}.serial-actions{gap:8px;flex-wrap:wrap}.serial-actions .secondary{font-size:10px;padding:7px 10px}.serial-log{padding:12px;height:370px;font-size:11px}.serial-line{grid-template-columns:62px minmax(0,1fr);gap:8px}.serial-line time{font-size:9px}}
.mqtt-topic{display:block;color:#6ab7b2;font-size:10px;font-weight:400;letter-spacing:.3px;margin-bottom:2px}
/* Supply-chain portal and company workspaces */
.auth-switch{display:flex;gap:6px;background:#f1f4fa;padding:4px;border-radius:10px;margin-bottom:30px}.auth-switch button{flex:1;border:0;background:transparent;color:#8997ac;padding:10px;border-radius:7px}.auth-switch .active{background:white;color:#416dd0;box-shadow:0 2px 8px #2236520b}
select{width:100%;height:44px;border:1px solid #e0e6ef;border-radius:7px;padding:0 12px;background:#fbfcfe;color:#526580;font:inherit}.supply-preview{max-width:390px;background:#ffffffa8;border:1px solid white;border-radius:15px;padding:24px;margin-top:36px;box-shadow:0 14px 40px #516ca00a}.supply-line{display:flex;align-items:center;gap:15px;padding:16px 0}.supply-line>div{flex:1}.supply-line strong{font-size:14px;display:block}.supply-line small{display:block;color:#91a0b6;margin-top:7px;font-size:11px}.supply-preview-foot{border-top:1px solid #e9edf5;margin-top:12px;padding-top:20px;font-size:10px;color:#91a0b6;display:flex;align-items:center;gap:8px}.demo-accounts>small{display:block;margin-top:15px;color:#98a5b8;font-size:10px;line-height:1.8}
.portal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.portal-card{display:flex;align-items:center;text-align:left;color:inherit;padding:27px;gap:20px;border:1px solid var(--border);border-radius:13px;background:white;min-height:154px}.portal-card:hover{border-color:#b4c8ed;box-shadow:0 8px 26px #243b7010;transform:translateY(-2px)}.portal-card-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;flex-shrink:0}.portal-card-icon .icon{width:27px;height:27px}.portal-card-body{flex:1;min-width:0}.portal-card-body strong{display:block;font-size:19px;font-weight:600;margin-bottom:12px}.portal-card-body>span{display:block;color:#8c9ab0;font-size:11px;line-height:1.9}.portal-card-body small{display:block;color:#a4b0c1;font-size:10px;margin-top:16px}.portal-card-arrow{color:#93a8ca}.portal-section{margin-top:32px}.company-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5eaf2;margin-bottom:30px;padding-bottom:18px;gap:18px}.company-topline>div{display:flex;align-items:center;gap:12px;font-size:14px}.company-initial{background:#eaf4ef;color:#64a38c;border-radius:10px;width:35px;height:35px;display:grid;place-items:center}.company-topline nav{display:flex;gap:10px}.company-topline nav button{border:0;background:transparent;color:#93a1b5;display:flex;align-items:center;gap:8px;padding:10px 17px;border-radius:8px;font-size:12px}.company-topline nav button.active{background:#eaf0fe;color:#5279d0}.company-topline nav .icon{width:16px;height:16px}.company-banner{position:relative;overflow:hidden;border-radius:12px;padding:29px 32px;min-height:154px;background:linear-gradient(110deg,#e9f5ef,#f3f9f6);color:#467d68}.company-banner.blue{background:linear-gradient(110deg,#e9efff,#f3f6ff);color:#5475bc}.company-banner.purple{background:#f0ecfa;color:#8b71bc}.company-banner.orange{background:#fff2df;color:#b08c53}.company-banner h2{font-size:21px;font-weight:550;margin:15px 0}.company-banner p{font-size:12px;line-height:1.9;opacity:.7;max-width:75%}.company-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.markdown-panel{padding:25px 30px;margin-top:25px;color:#7b8ba2;font-size:12px;line-height:2}.markdown-panel h2{font-size:19px;color:#405674}.markdown-panel h3{font-size:15px;color:#526780}.markdown-panel ul{padding-left:20px}.profile-card{max-width:650px;padding:32px;text-align:center}.profile-avatar{display:grid;place-items:center;margin:auto;background:#eaf0fe;color:#698ad7;width:70px;height:70px;border-radius:23px;font-size:27px}.profile-card h2{font-size:23px;margin:17px 0}.profile-card dl{margin-top:26px;text-align:left}.profile-card .secondary{margin-top:15px}.news-list{display:grid;gap:20px}.news-card{padding:28px}.news-card time{float:right;font-size:11px;color:#a0adbe}.news-card h2{font-size:19px;font-weight:550;margin:20px 0 12px}.news-card p{font-size:12px;color:#8999af;line-height:2}.template-panel{padding:25px}.template-panel>.section-heading{padding:0 0 20px}.template-panel textarea{display:block;width:100%;min-height:440px;border:1px solid #dce4f0;border-radius:8px;background:#f9fbff;color:#46607f;padding:20px;font:13px/1.8 ui-monospace,monospace;resize:vertical;box-sizing:border-box}.template-actions{display:flex;flex-wrap:wrap;gap:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.portal-card{padding:23px;gap:13px}.portal-card-icon{width:40px;height:40px}.portal-card-body strong{font-size:17px}.company-banner h2{font-size:18px}.company-stats{gap:12px}}
@media(max-width:650px){.portal-grid{grid-template-columns:1fr}.company-topline{align-items:flex-start;flex-direction:column;gap:12px}.company-topline nav{width:100%;justify-content:space-between;gap:0}.company-topline nav button{padding:9px 14px}.company-banner{padding:23px 20px}.company-banner h2{font-size:17px;line-height:1.8;max-width:90%}.company-banner p{font-size:11px}.company-stats{grid-template-columns:1fr}.company-stats .stat-card{padding:20px}.company-stats .stat-card strong{font-size:30px}.supply-preview{display:none}.markdown-panel{padding:20px}.template-panel{padding:17px}.template-panel textarea{padding:12px;font-size:11px}.profile-card{padding:25px 15px}.news-card{padding:22px}.portal-card{min-height:140px}}
/* Minimal visual system: white surfaces, generous space, restrained accents. */
:root{--blue:#1a73e8;--border:#e8eaed;--muted:#5f6368;color:#202124;background:white;font-family:'Segoe UI','Noto Sans SC',sans-serif}
html{scroll-behavior:smooth;scroll-padding-top:85px}body{overflow-x:hidden}button,input,textarea,select{font-family:inherit}.brand{font-size:20px;font-weight:500;letter-spacing:0;color:#3c4043;gap:11px}.brand-mark{width:31px;height:31px;background:#e8f0fe;color:#4285f4;border-radius:9px;box-shadow:none}.brand-mark .icon{width:22px;height:22px}.primary{background:#1a73e8;border-radius:6px;box-shadow:none;font-weight:500}.primary:hover{background:#1765cc}.secondary{border-color:#dadce0;color:#1a73e8;border-radius:6px}.secondary:hover{background:#f8fafd}.muted,.small{color:#70757a}.site-header{display:flex;align-items:center;gap:48px;padding:0 40px;height:76px;border-bottom:1px solid #f1f3f4;background:#fffffff5;position:sticky;top:0;z-index:40;backdrop-filter:blur(12px)}.site-header nav{display:flex;gap:30px;font-size:14px;color:#5f6368}.site-header nav a{padding:27px 0;transition:color .2s}.site-header nav a:hover{color:#1a73e8}.header-login{margin-left:auto;color:#1a73e8;font-size:13px;font-weight:500;border:1px solid #dadce0;border-radius:5px;padding:10px 20px;white-space:nowrap}.header-login:hover{background:#f8fafd}.public-site{background:white}.experience-hero{position:relative;padding:95px 40px 32px;max-width:1280px;margin:0 auto;background:white;color:#202124;overflow:hidden}.hero-copy{position:relative;text-align:center;margin:0 auto;width:100%;max-width:1000px;z-index:1}.hero-copy h1{font-weight:450;font-size:clamp(34px,4.5vw,60px);letter-spacing:-1.7px;line-height:1.4;margin:0}.hero-eyebrow{display:block;font-size:12px;color:#70757a;margin-bottom:20px}.hero-copy>p{font-size:15px;color:#5f6368;line-height:1.9;margin:20px 0 0}.connection-art{position:relative;width:100%;max-width:1020px;margin:35px auto 0;background:#f8fafd;border-radius:24px;overflow:hidden;pointer-events:none}.connection-art>svg{display:block;width:100%;height:auto}.quiet-dot{animation:quiet-breathe 4s ease-in-out infinite}.dot-later{animation-delay:-2s}.experience-section{max-width:1120px;margin:0 auto;padding:70px 40px 90px;background:white}.experience-section>h2,.account-section>h2{font-size:32px;font-weight:450;letter-spacing:-.8px;text-align:center;margin:0 0 35px}.solution-tabs{display:flex;justify-content:center;gap:8px;margin:0 auto 38px;border:0}.solution-tabs button{background:white;border:1px solid #dadce0;border-radius:24px;font-size:14px;font-weight:450;color:#5f6368;padding:11px 25px;min-width:110px}.solution-tabs button[aria-selected=true]{background:#e8f0fe;border-color:#e8f0fe;color:#1967d2}.solution-tabs button:hover{background:#f1f5fc}.solution-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:60px;align-items:center;background:#f8f9fa;border:0;border-radius:24px;padding:32px 44px;animation:quiet-enter .3s ease both}.solution-panel[hidden]{display:none}.solution-copy h3{font-size:28px;font-weight:450;line-height:1.5;letter-spacing:-.7px;margin:0 0 18px}.solution-copy>p{font-size:14px;line-height:1.9;color:#5f6368;margin:0}.inline-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;color:#1a73e8;padding:12px 0;margin-top:25px}.inline-link .icon{width:17px;height:17px}.inline-link:hover{text-decoration:underline;text-underline-offset:5px}.solution-art{position:relative;height:270px;min-width:0;width:100%;border-radius:16px;background:#f1f6f3;overflow:hidden;box-shadow:none;border:0;aspect-ratio:auto}.factory-art{background:#edf3fa}.solution-art>svg{width:100%;height:100%;position:absolute;bottom:-6%;animation:none}.art-coordinate{position:absolute;top:20px;left:20px;font-size:8px;color:#7c8b83;letter-spacing:1.3px}.solution-art .scene-chip{position:absolute;top:auto;right:auto;left:20px;bottom:22px;display:flex;align-items:center;gap:9px;background:#fff;border:0;border-radius:7px;padding:10px 13px;color:#55725f;font-size:10px;box-shadow:none;max-width:calc(100% - 40px);animation:none}.factory-art .scene-chip{color:#56738c}.scene-art-note{position:absolute;bottom:10px;right:14px;font-size:8px;color:#8b9691}.account-section{padding:70px 24px 90px;background:#fafbfc;border-top:1px solid #f1f3f4;scroll-margin-top:75px}.account-section>.portal-login{display:block;min-height:0;max-width:470px;margin:auto;background:white;border:1px solid #e8eaed;border-radius:16px;box-shadow:none}.account-section .login-story{display:none}.account-section .login-panel{display:block;padding:32px 36px}.account-section .login-form-wrap{max-width:none}.account-section .login-form-wrap>h2,.account-section .login-form-wrap>.eyebrow,.account-section .login-form-wrap>.muted{display:none}.account-section .auth-switch{margin-bottom:25px;background:#f1f3f4}.account-section .auth-switch .active{box-shadow:none;color:#1a73e8}.account-section input,.account-section select{background:white;border-color:#dadce0;color:#3c4043;border-radius:5px}.account-section label{color:#5f6368}.account-section .login-disclaimer{margin:25px 0 0;font-size:9px;color:#80868b}.account-section .demo-title{color:#5f6368;font-size:11px}.account-section .demo-title span{font-size:9px}.account-section .demo-buttons button{background:white;border-color:#e8eaed;color:#5f6368;font-size:10px}.account-section .demo-accounts>small{color:#80868b;font-size:9px}.account-section .settings-note{color:#70757a;font-size:10px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:32px 40px;border-top:1px solid #e8eaed;color:#80868b;font-size:12px}.site-footer a{font-size:11px}.site-footer a:hover{color:#1a73e8}
/* Workspace navigation shares the same quiet, flat treatment. */
.workspace{background:white}.workspace .sidebar{position:fixed;inset:0 0 auto 0;width:100%;height:76px;min-height:0;padding:0 40px;display:flex;flex-direction:row;align-items:center;gap:40px;border:0;border-bottom:1px solid #e8eaed;background:#fffffff5;backdrop-filter:blur(12px);z-index:40}.workspace .sidebar .brand{margin:0;flex-shrink:0;font-size:18px}.workspace .sidebar .brand>span:last-child{display:block}.workspace .workspace-label,.workspace .help-card{display:none}.workspace .sidebar nav{display:flex;align-items:center;gap:8px;margin:0}.workspace .nav-item{width:auto;height:auto;min-height:0;padding:11px 13px;margin:0;gap:8px;font-size:12px;color:#70757a;border-radius:6px}.workspace .nav-item>span{display:inline}.workspace .nav-item.active{background:#f1f5fd;color:#1967d2}.workspace .nav-item .icon{width:17px;height:17px}.workspace .sidebar-bottom{position:static;margin-left:auto;padding:0}.workspace .sidebar-user{display:flex;align-items:center;gap:10px;border:0;margin:0;padding:0}.workspace .sidebar-user>div{display:block}.workspace .sidebar-user>.user-avatar{display:grid;width:31px;height:31px;color:#5f6368;background:#f1f3f4}.workspace .sidebar-user strong{color:#5f6368;font-size:11px}.workspace .sidebar-user small{color:#80868b;font-size:9px}.workspace .sidebar-user>.icon-button{margin-left:10px;color:#80868b}.workspace .main-shell{margin-left:0;padding-top:76px}.workspace .topbar{height:62px;padding:0 max(40px,calc((100vw - 1200px)/2));background:white;border:0}.workspace .crumb-button,.workspace .topbar strong{font-size:11px;color:#70757a}.workspace .main-content{max-width:1280px;margin:auto;padding:0 40px 24px}.workspace .page-heading{margin-bottom:32px;padding-top:18px}.workspace .page-heading h1{font-size:30px;line-height:1.5;font-weight:450;color:#202124}.workspace .page-heading p{font-size:12px;line-height:1.9;color:#70757a}.workspace .eyebrow{font-size:9px;color:#80868b;letter-spacing:1.2px}.workspace .hero-compact{min-height:0;padding:45px 0 55px;max-width:none;margin:0;background:white;border-radius:0}.workspace .hero-compact .hero-copy{text-align:left;max-width:none;width:100%}.workspace .hero-compact h1{font-size:38px;font-weight:450}.workspace .hero-compact .hero-eyebrow{font-size:11px;margin-bottom:18px}.platform-overview{display:flex;gap:50px;padding:25px 0 35px;border-block:1px solid #e8eaed}.platform-overview>div{flex:1}.platform-overview>div>span{display:block;color:#70757a;font-size:11px}.platform-overview strong{display:block;margin-top:13px;color:#3c4043;font-size:32px;font-weight:400}.platform-overview small{color:#80868b;font-size:11px;font-weight:400}.workspace .portal-section{margin:42px 0 25px}.workspace .portal-section h2{font-size:24px;font-weight:450;margin:0;color:#3c4043}.workspace .portal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.workspace .portal-card{display:flex;flex-direction:column;align-items:flex-start;position:relative;gap:23px;padding:28px;min-height:220px;border:1px solid #e8eaed;border-radius:16px;background:#fff;box-shadow:none;transition:background .2s,border-color .2s}.workspace .portal-card:hover{transform:none;box-shadow:none;background:#fafbfc;border-color:#c9d7e8}.workspace .portal-card-icon{width:39px;height:39px;border-radius:11px}.workspace .portal-card-icon .icon{width:21px;height:21px}.workspace .portal-card-body strong{color:#3c4043;font-size:22px;font-weight:450}.workspace .portal-card-body>span{color:#70757a;font-size:12px;line-height:1.9}.workspace .portal-card-body small{color:#80868b;font-size:10px}.workspace .portal-card-arrow{position:absolute;right:26px;top:29px;color:#80868b}.workspace .company-topline{position:sticky;top:76px;z-index:20;background:#fffffff5;backdrop-filter:blur(12px);padding:15px 0;margin-bottom:20px;border-color:#e8eaed}.workspace .company-initial{color:#5f6368;background:#f1f3f4}.workspace .company-topline strong{font-weight:500;color:#5f6368}.workspace .company-topline nav button{font-size:12px;color:#70757a}.workspace .company-topline nav button.active{color:#1967d2;background:#f1f5fd}.workspace .company-banner,.workspace .company-banner.green,.workspace .company-banner.blue,.workspace .company-banner.purple,.workspace .company-banner.orange{background:#f8f9fa;color:#3c4043;min-height:0;padding:28px 32px;border-radius:16px}.workspace .company-banner .connection-art{display:none}.workspace .company-banner h2{font-size:22px;font-weight:450;line-height:1.7;margin:12px 0}.workspace .company-banner p{font-size:12px;color:#70757a;opacity:1;max-width:none}.workspace .company-banner .banner-label{color:#80868b;font-size:10px}.workspace .stats-grid{margin:24px 0 36px}.workspace .stat-card{border:1px solid #e8eaed;border-radius:12px;padding:23px;box-shadow:none}.workspace .stat-label{color:#70757a;font-size:11px}.workspace .stat-card>strong{color:#3c4043;font-size:33px;font-weight:450}.workspace .stat-card p{font-size:10px;color:#80868b}.workspace .stat-action:hover{box-shadow:none;transform:none;background:#fffdf8;border-color:#eadbc1}.workspace .device-grid{gap:20px}.workspace .device-card{border:1px solid #e8eaed;border-radius:14px;padding:25px;box-shadow:none;transition:background .2s,border-color .2s}.workspace .device-card:hover{box-shadow:none;transform:none;background:#fafbfc;border-color:#c9d7e8}.workspace .device-card h2{font-size:20px;font-weight:450;color:#3c4043}.workspace .device-card>p{font-size:11px;color:#70757a}.workspace .device-code{color:#80868b;font-size:10px}.workspace .device-sensors span{font-size:9px;color:#70757a;background:#f8f9fa}.workspace .device-sensors .warning-metric{background:#fef7e0;color:#a57624}.workspace .device-action{color:#1a73e8;font-size:11px}.workspace .section-heading h2{font-size:17px;font-weight:500;color:#3c4043}.workspace .section-heading h2>span{color:#9aa0a6;font-size:9px}.workspace .panel,.workspace .sensor-card,.workspace .access-banner{border-color:#e8eaed;border-radius:12px;box-shadow:none}.workspace .access-banner p,.workspace .sensor-card>p,.workspace .read-only-panel p{color:#70757a;font-size:11px}.workspace .sensor-title{color:#70757a}.workspace .sensor-value{color:#3c4043;font-weight:450}.workspace .sensor-warning .sensor-value{color:#b38937}.workspace .settings-note{font-size:10px;color:#80868b}.workspace .device-info dt{color:#80868b}.workspace .device-info dd{color:#5f6368}.workspace .markdown-panel{font-size:12px;color:#70757a;padding:25px}.workspace .markdown-panel h2,.workspace .markdown-panel h3{font-weight:450;color:#3c4043}.workspace .main-footer{border-top:1px solid #e8eaed;color:#9aa0a6;font-size:9px;line-height:1.8;padding:25px 0 0;margin-top:45px}.workspace .profile-card{margin:0 auto;max-width:640px}.workspace .profile-card h2{font-weight:450}.workspace .news-card h2{font-weight:450}.workspace .news-card p{font-size:12px;color:#70757a}.workspace .notice{margin-top:14px}.workspace .badge{font-size:10px}.workspace .sensor-warning{border-color:#eadbc1}.workspace .threshold-row{color:#70757a}.workspace .settings-form label{color:#70757a}.workspace .settings-form input{background:white;border-color:#dadce0}.workspace .template-panel textarea{background:#fafbfc;border-color:#dadce0;color:#5f6368;box-shadow:none}.will-reveal{opacity:1;transform:none}
@keyframes quiet-breathe{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes quiet-enter{from{opacity:0}to{opacity:1}}
@media(max-width:900px){.site-header{padding:0 28px;gap:32px}.site-header .brand{font-size:18px}.site-header nav{gap:24px;font-size:13px}.header-login{font-size:12px;padding:9px 15px}.experience-hero{padding:80px 28px 25px}.hero-copy h1{font-size:43px}.connection-art{margin-top:30px}.experience-section{padding:55px 28px 70px}.solution-panel{gap:30px;padding:28px}.solution-copy h3{font-size:23px}.solution-art{height:250px}.workspace .sidebar{padding:0 28px;gap:24px}.workspace .sidebar .brand{font-size:16px}.workspace .nav-item{padding:9px;font-size:11px;gap:5px}.workspace .sidebar-user>div{display:none}.workspace .topbar{padding-inline:28px}.workspace .main-content{padding-inline:28px}.workspace .portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.workspace .portal-card{padding:25px}.workspace .device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){html{scroll-padding-top:74px}.site-header{height:68px;padding:0 20px;gap:15px}.site-header .brand{font-size:16px;gap:8px}.site-header .brand-mark{width:26px;height:26px;border-radius:7px}.site-header .brand-mark .icon{width:18px;height:18px}.site-header nav{display:none}.header-login{font-size:11px;padding:8px 12px}.experience-hero{padding:65px 20px 15px}.hero-copy h1{font-size:32px;letter-spacing:-1.2px}.connection-art{margin-top:30px;border-radius:16px;min-height:175px;display:flex;align-items:center;justify-content:center}.connection-art>svg{width:135%;max-width:none;flex-shrink:0}.experience-section{padding:48px 20px 60px}.experience-section>h2,.account-section>h2{font-size:26px;margin-bottom:26px}.solution-tabs{margin-bottom:27px;gap:10px}.solution-tabs button{font-size:12px;padding:10px 22px;min-width:100px}.solution-panel{grid-template-columns:minmax(0,1fr);gap:25px;padding:27px 24px;border-radius:18px}.solution-copy h3{font-size:24px;margin-bottom:13px}.solution-copy>p{font-size:12px}.inline-link{font-size:12px;margin-top:13px}.solution-art{height:240px;border-radius:12px}.account-section{padding:48px 20px 60px}.account-section .login-panel{padding:27px 23px}.site-footer{padding:27px 20px;font-size:10px}.site-footer a{font-size:10px}.workspace .sidebar{height:auto;min-height:105px;padding:14px 20px 10px;display:grid;grid-template-columns:1fr auto;gap:12px}.workspace .sidebar .brand{grid-column:1;grid-row:1;font-size:16px}.workspace .sidebar .brand-mark{width:28px;height:28px}.workspace .sidebar nav{grid-column:1/-1;grid-row:2;gap:14px}.workspace .nav-item{font-size:11px;padding:7px 11px}.workspace .sidebar-bottom{grid-column:2;grid-row:1}.workspace .sidebar-user>.user-avatar{display:none}.workspace .sidebar-user>.icon-button{margin:0}.workspace .main-shell{padding-top:110px}.workspace .topbar{height:48px;padding-inline:20px}.workspace .topbar-right .badge{font-size:8px}.workspace .topbar .environment{display:none}.workspace .main-content{padding:0 20px 20px}.workspace .hero-compact{padding:28px 0 35px}.workspace .hero-compact h1{font-size:28px;letter-spacing:-1px}.workspace .hero-compact .hero-eyebrow{font-size:10px;margin-bottom:14px}.platform-overview{gap:20px;padding:23px 0}.platform-overview>div>span{font-size:9px}.platform-overview strong{font-size:28px}.platform-overview small{font-size:9px}.workspace .portal-section{margin:30px 0 22px}.workspace .portal-section h2{font-size:22px}.workspace .portal-grid{grid-template-columns:1fr;gap:15px}.workspace .portal-card{min-height:195px;padding:24px;gap:18px}.workspace .portal-card-body strong{font-size:21px}.workspace .portal-card-body>span{font-size:11px}.workspace .portal-card-body small{font-size:9px}.workspace .company-topline{top:110px;flex-direction:row;align-items:center;flex-wrap:wrap;padding:13px 0;gap:10px}.workspace .company-topline>div{font-size:12px;gap:8px}.workspace .company-initial{width:28px;height:28px;font-size:11px}.workspace .company-topline nav{width:auto;gap:0}.workspace .company-topline nav button{padding:8px;font-size:10px}.workspace .company-topline nav .icon{display:none}.workspace .page-heading{margin-bottom:24px;padding-top:10px;gap:13px}.workspace .page-heading h1{font-size:25px}.workspace .page-heading p{font-size:10px}.workspace .page-heading .eyebrow{font-size:8px}.workspace .company-banner,.workspace .company-banner.green,.workspace .company-banner.blue,.workspace .company-banner.purple,.workspace .company-banner.orange{padding:22px}.workspace .company-banner h2{font-size:19px;max-width:100%}.workspace .company-banner p{font-size:10px}.workspace .company-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 27px}.workspace .company-stats .stat-card:last-child{grid-column:1/-1}.workspace .stat-card{padding:20px}.workspace .stat-label{font-size:10px}.workspace .stat-card>strong{font-size:30px}.workspace .stat-card p{font-size:9px}.workspace .device-grid{grid-template-columns:1fr}.workspace .device-card{padding:23px}.workspace .device-card h2{font-size:20px}.workspace .device-card>p{font-size:10px}.workspace .main-footer{font-size:8px;margin-top:30px;padding-top:22px}.workspace .section-heading h2{font-size:15px}.workspace .access-banner p{font-size:10px}.workspace .settings-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Markdown news: a quiet article list and a focused reading column. */
.blog-list{max-width:880px}.blog-list-item{padding:29px 0 32px;border-bottom:1px solid #e8eaed}.blog-list-item:first-child{padding-top:4px}.article-meta{display:flex;align-items:center;gap:17px;color:#80868b;font-size:11px;line-height:1.8}.blog-list-item h2{font-size:24px;font-weight:450;line-height:1.55;margin:13px 0}.blog-list-item h2 a{color:#202124;transition:color .2s}.blog-list-item h2 a:hover{color:#1a73e8}.blog-list-item>p{font-size:13px;line-height:2;color:#70757a;max-width:740px;margin:0}.article-read{display:inline-flex;gap:10px;align-items:center;margin-top:18px;font-size:12px;color:#1a73e8}.article-read .icon{width:16px;height:16px;transition:transform .2s}.article-read:hover .icon{transform:translateX(4px)}.blog-empty{padding:50px 0;color:#80868b;font-size:13px}.article-toolbar{padding:12px 0 25px}.article-toolbar button{font-size:12px;color:#70757a}.article-layout{display:grid;grid-template-columns:minmax(0,800px) minmax(160px,1fr);gap:65px;align-items:start;max-width:1120px}.blog-article>header{padding:7px 0 28px;border-bottom:1px solid #e8eaed;margin-bottom:30px}.blog-article>header h1{font-size:36px;font-weight:450;line-height:1.5;letter-spacing:-1px;margin:18px 0 0;color:#202124}.article-body{font-size:15px;line-height:2.05;color:#4b5055;overflow-wrap:anywhere}.article-body h2,.article-body h3,.article-body h4{color:#202124;font-weight:500;margin:38px 0 18px;line-height:1.7;scroll-margin-top:155px}.article-body h2{font-size:24px}.article-body h3{font-size:20px}.article-body p{margin:18px 0}.article-body ul,.article-body ol{padding-left:24px;margin:20px 0}.article-body li{padding:3px 0}.article-body a{color:#1a73e8;text-decoration:underline;text-underline-offset:4px}.article-body strong{font-weight:600;color:#3c4043}.article-body pre{padding:22px 24px;border-radius:10px;background:#f6f8fa;border:1px solid #edf0f2;overflow:auto;font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}.article-body code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.87em;background:#f1f3f4;padding:3px 5px;border-radius:4px}.article-body pre code{background:transparent;padding:0;font-size:inherit}.article-body blockquote{margin:24px 0;padding:14px 20px;border-left:3px solid #b9d1f5;background:#f8fafd;color:#70757a;font-size:13px}.article-body hr{border:0;border-top:1px solid #e8eaed;margin:35px 0}.article-body img{display:block;max-width:100%;height:auto;border-radius:10px;margin:24px auto}.article-toc{position:sticky;top:115px;padding:8px 0 8px 22px;border-left:1px solid #e8eaed}.article-toc>strong{font-size:11px;font-weight:500;color:#70757a}.article-toc nav{display:flex;flex-direction:column;gap:13px;margin-top:20px}.article-toc a{font-size:11px;color:#80868b;line-height:1.8}.article-toc a:hover{color:#1a73e8}.article-toc .toc-sub{padding-left:10px}.article-pagination{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:55px;padding-top:25px;border-top:1px solid #e8eaed}.article-pagination a{font-size:13px;color:#5f6368;line-height:1.8}.article-pagination a:last-child{text-align:right}.article-pagination small{display:block;color:#9aa0a6;font-size:10px;margin-bottom:9px}.article-pagination a:hover{color:#1a73e8}
/* Small motions explain interaction without taking attention from content. */
.main-content{animation:content-enter .28s ease-out both}.will-reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1)}.will-reveal.is-visible{opacity:1;transform:translateY(0)}.workspace .portal-card,.workspace .device-card,.workspace .stat-action{transition:transform .22s ease,border-color .22s ease,background .22s ease}.workspace .portal-card:hover,.workspace .device-card:hover,.workspace .stat-action:hover{transform:translateY(-3px)}.workspace .portal-card.will-reveal:hover,.workspace .device-card.will-reveal:hover{transform:translateY(-3px)}.quiet-dot{animation:data-flow 4s ease-in-out infinite}.quiet-dot.dot-later{animation-delay:-2s}.connection-ripple{transform-origin:480px 145px;animation:connection-breathe 5s ease-in-out infinite}.connection-art>svg{animation:diagram-enter .8s ease-out both}.site-header nav a,.header-login,.inline-link{transition:color .2s,background .2s}.header-login:hover{border-color:#aecbfa}.solution-tabs button{transition:background .22s,color .22s,border-color .22s}.solution-panel{animation:content-enter .35s ease-out both}.article-body img{transition:opacity .3s}.article-toc a{transition:color .2s}
@keyframes content-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes diagram-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes data-flow{0%{transform:translateX(-28px);opacity:0}25%,75%{opacity:.9}100%{transform:translateX(28px);opacity:0}}
@keyframes connection-breathe{0%,100%{transform:scale(.96);opacity:.3}50%{transform:scale(1.06);opacity:.85}}
@media(max-width:900px){.article-layout{grid-template-columns:minmax(0,1fr);max-width:800px}.article-toc{display:none}.blog-article>header h1{font-size:31px}}
@media(max-width:600px){.blog-list-item{padding:24px 0}.blog-list-item h2{font-size:22px;margin:12px 0}.blog-list-item>p{font-size:12px}.article-meta{font-size:10px;gap:12px}.article-read{font-size:11px}.blog-article>header h1{font-size:27px;letter-spacing:-.6px}.blog-article>header{padding-bottom:24px;margin-bottom:24px}.article-body{font-size:14px;line-height:2}.article-body h2{font-size:21px;margin-top:32px}.article-body h3{font-size:18px}.article-body pre{font-size:11px;padding:17px}.article-body blockquote{font-size:12px;padding:12px 16px}.article-pagination{gap:22px;margin-top:40px}.article-pagination a{font-size:11px}.article-toolbar{padding:8px 0 20px}.article-body h2,.article-body h3{scroll-margin-top:185px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}}
/* Customer-facing IoT presentation, inspired by Azure's layered product pages. */
.azure-site{--iot-ink:#172b42;--iot-blue:#0078d4;--iot-line:#dce6ef;color:var(--iot-ink);background:#fff}.azure-site .site-header{height:72px;gap:36px;padding:0 max(28px,calc((100vw - 1280px)/2));border-bottom:1px solid #e1e9f1}.azure-site .brand{color:#17324d;font-size:19px;font-weight:650;white-space:nowrap}.azure-site .brand-mark{background:#0078d4;color:white;border-radius:7px}.azure-site .site-header nav{font-size:13px;gap:26px}.azure-site .header-login{background:#0078d4;border-color:#0078d4;color:#fff;border-radius:6px;display:flex;align-items:center;gap:12px}.azure-site .header-login:hover{background:#0065b3}.azure-site .header-login .icon{width:16px;height:16px}.iot-hero{position:relative;background:radial-gradient(ellipse at 85% 90%,#78bfe775,transparent 42%),radial-gradient(ellipse at 82% 15%,#428ffb65,transparent 45%),linear-gradient(115deg,#123b66,#075caa 65%,#287dd0);color:#fff;overflow:hidden}.iot-hero:before{content:'';position:absolute;inset:-80% -20% -70% 65%;border:1px solid #b9dfff38;border-radius:50%;transform:rotate(32deg);pointer-events:none}.iot-hero:after{content:'';position:absolute;width:60%;height:1px;left:44%;top:80%;background:linear-gradient(90deg,transparent,#74e2ef,#b5d9ff,transparent);transform:rotate(-48deg);pointer-events:none}.iot-hero-inner{max-width:1340px;min-height:580px;margin:auto;padding:70px 40px 80px;display:grid;grid-template-columns:1fr 1.08fr;gap:54px;align-items:center;position:relative;z-index:1}.azure-site .hero-copy{max-width:none;text-align:left;margin:0}.azure-site .hero-eyebrow{font-size:12px;letter-spacing:2px;color:#c3e6ff;margin-bottom:24px}.azure-site .hero-copy h1{font-size:clamp(32px,3.55vw,52px);font-weight:600;letter-spacing:-1.8px;line-height:1.4;white-space:nowrap}.azure-site .hero-copy>p{font-size:17px;color:#deedfc;line-height:1.95;margin:23px 0 30px}.azure-site .hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.iot-button{display:inline-flex;align-items:center;gap:20px;padding:15px 23px;background:#d8eeff;color:#123a5d;font-size:14px;font-weight:600;border-radius:6px;box-shadow:0 5px 25px #04284920;transition:background .2s,transform .2s}.iot-button:hover{background:#fff;transform:translateY(-2px)}.hero-more{font-size:13px;color:#fff;text-decoration:underline;text-underline-offset:6px}.hero-tags{display:flex;gap:0;margin-top:44px;font-size:12px;color:#bdd9ee}.hero-tags span+span:before{content:'/';margin:0 17px;color:#74a6d0}.hero-product{position:relative;perspective:1200px}.iot-console{position:relative;border:1px solid #ffffff80;background:#f8fbff;border-radius:13px;color:#20354d;box-shadow:0 30px 85px #03294e60;transform:rotateY(-7deg) rotateX(3deg);z-index:2;animation:console-arrive .9s ease-out both}.console-top{background:#fff;border-radius:13px 13px 0 0;padding:16px 20px;border-bottom:1px solid #e4edf5;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:600}.console-top>span:first-child{display:flex;align-items:center;gap:10px}.console-top .icon{color:#1684d7;width:18px;height:18px}.console-demo{font-size:9px;color:#73879a;font-weight:400;border:1px solid #dce6ef;border-radius:4px;padding:3px 6px}.console-body{padding:23px}.console-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.console-summary small{display:block;font-size:10px;color:#73879a;margin-bottom:9px}.console-summary strong{font-size:21px;font-weight:600;line-height:1.5}.console-status{display:flex;align-items:center;gap:6px;color:#28866d;background:#e4f5ed;padding:6px 8px;border-radius:20px;font-size:9px;white-space:nowrap}.console-status i{width:5px;height:5px;background:#2d9e7f;border-radius:50%}.console-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.console-metrics>div{padding:15px 12px;border:1px solid #e1eaf3;background:white;border-radius:8px}.console-metrics span{font-size:10px;color:#708398}.console-metrics strong{display:block;font-size:27px;font-weight:600;margin:10px 0 5px;font-variant-numeric:tabular-nums}.console-metrics strong small{font-size:11px;color:#76899b;font-weight:400}.console-metrics em{font-size:9px;color:#94a3b1;font-style:normal}.console-chart{margin-top:18px;padding:16px 16px 9px;background:#fff;border:1px solid #e1eaf3;border-radius:8px}.console-chart>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px}.console-chart strong{font-weight:500}.console-chart span{font-size:9px;color:#8a9cad}.console-chart svg{width:100%;height:110px;margin-top:8px;display:block}.console-trend{stroke-dasharray:650;stroke-dashoffset:650;animation:chart-draw 2s .3s ease-out forwards}.chart-labels{display:flex;justify-content:space-between}.console-alert{display:flex;gap:10px;align-items:center;background:#fff5e5;border:1px solid #f3e4cb;border-radius:7px;margin-top:16px;padding:12px;color:#98733a}.console-alert>.icon{width:18px;height:18px}.console-alert>.icon:last-child{margin-left:auto;width:15px}.console-alert strong{display:block;font-size:10px;font-weight:500}.console-alert span{display:block;font-size:9px;margin-top:4px;color:#a18c6c}.hero-orbit{position:absolute;border:1px solid #a9dcff40;border-radius:50%;pointer-events:none;animation:orbit-breathe 7s ease-in-out infinite}.orbit-one{width:115%;height:115%;left:-7%;top:-7%}.orbit-two{width:135%;height:135%;left:-17%;top:-17%;animation-delay:-3.5s}.iot-section-nav{position:sticky;top:72px;z-index:35;display:flex;align-items:center;gap:34px;padding:0 max(28px,calc((100vw - 1200px)/2));height:65px;border-bottom:1px solid #dce6ef;box-shadow:0 3px 12px #203e5810;background:#ffffffed;backdrop-filter:blur(14px);font-size:13px;font-weight:550;color:#28465f}.iot-section-nav a{display:flex;align-items:center;gap:12px;height:100%;position:relative;white-space:nowrap}.iot-section-nav a:hover{color:#0078d4}.iot-section-nav a:after{content:'';position:absolute;left:0;bottom:0;height:3px;width:0;background:#0078d4;transition:width .25s}.iot-section-nav a:hover:after{width:100%}.iot-section-nav a:last-child{margin-left:auto;color:#0078d4}.iot-section-nav .icon{width:15px}.iot-section{max-width:1280px;margin:auto;padding:78px 40px;scroll-margin-top:138px}.iot-eyebrow{display:block;color:#4e6c85;font-size:11px;font-weight:600;letter-spacing:1.3px;margin-bottom:16px}.section-intro{max-width:800px;margin-bottom:38px}.section-intro h2{font-size:clamp(26px,2.7vw,36px);font-weight:550;line-height:1.5;letter-spacing:-.8px;margin:0 0 17px}.section-intro>p{max-width:660px;color:#60758a;font-size:14px;line-height:1.95;margin:0}.overview-section{background:#fff}.overview-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.iot-accordion details{border-bottom:1px solid #d9e4ee;padding:0 0 21px;margin:0 0 22px}.iot-accordion summary{font-size:17px;font-weight:550;display:flex;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;line-height:1.6}.iot-accordion summary::-webkit-details-marker{display:none}.iot-accordion summary span{font-size:22px;color:#0078d4;font-weight:400;transition:transform .25s}.iot-accordion details[open] summary span{transform:rotate(45deg)}.iot-accordion details[open] summary{color:#0078d4}.iot-accordion details>p{font-size:13px;line-height:1.9;color:#60758a;margin:15px 0 0;animation:content-enter .25s ease-out}.iot-accordion .inline-link{margin-top:10px;font-size:12px}.overview-visual{padding:30px 26px 26px;border:1px solid #dfe9f3;background:linear-gradient(145deg,#f3f8fd,#ebf6ff);border-radius:20px;box-shadow:0 12px 30px #2e679009}.azure-site .overview-visual .connection-art{margin:0;background:transparent;border-radius:0}.connection-steps{display:flex;justify-content:space-between;padding:0 7%;font-size:12px;color:#395d7d}.overview-visual>p{color:#8195a7;font-size:11px;text-align:center;margin:27px 0 0}.iot-band{background:radial-gradient(ellipse at 90% 0,#e4f1ff,transparent 65%),#f1f6fa;scroll-margin-top:137px;border-block:1px solid #e6eef5}.azure-site .solution-tabs{justify-content:flex-start;margin:0 0 28px;gap:10px}.azure-site .solution-tabs button{border-radius:7px;border:1px solid #cdddea;background:#fff;padding:12px 30px;color:#315674;font-weight:500}.azure-site .solution-tabs button[aria-selected=true]{color:white;background:#0078d4;border-color:#0078d4;box-shadow:0 4px 13px #0078d421}.azure-site .solution-panel{background:white;border:1px solid #dce8f2;border-radius:17px;box-shadow:0 12px 35px #1745720a;gap:60px;padding:42px}.azure-site .solution-copy h3{font-size:29px;color:#163b5b;font-weight:550;line-height:1.55}.azure-site .solution-copy>p{color:#60758a;line-height:1.95}.azure-site .solution-art{height:320px;border-radius:12px;background:linear-gradient(150deg,#edf6f1,#d7eee4)}.azure-site .factory-art{background:linear-gradient(150deg,#eef5fc,#d5e7f9)}.azure-site .scene-data-path{animation:scene-flow 12s linear infinite}.scenario-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:21px}.scenario-tags span{padding:6px 10px;border-radius:4px;background:#f0f5f9;font-size:10px;color:#5b758b}.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.capability-card{position:relative;padding:28px 24px 24px;border:1px solid #dce6ef;border-radius:13px;background:#fff;box-shadow:0 4px 18px #1f527706}.capability-card:hover{border-color:#96c8ed;box-shadow:0 12px 30px #1f527712}.capability-icon{width:43px;height:43px;display:grid;place-items:center;background:#eaf5ff;border-radius:10px;color:#0078d4}.capability-icon .icon{width:24px;height:24px}.capability-card>small{position:absolute;right:24px;top:34px;color:#a9bdce;font-size:11px}.capability-card h3{font-size:18px;font-weight:550;margin:25px 0 15px}.capability-card p{font-size:12px;line-height:1.9;color:#6b8094;min-height:92px;margin:0}.capability-card>a{display:flex;align-items:center;gap:12px;font-size:12px;color:#0078d4;margin-top:22px}.capability-card>a .icon{width:15px}.workflow-band{background:#112f4b;color:#fff;scroll-margin-top:137px}.workflow-band .iot-eyebrow{color:#8ac7ef}.workflow-band .section-intro{margin-bottom:40px}.workflow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.workflow-grid article{border-top:1px solid #ffffff29;padding-top:24px}.workflow-grid article>span{color:#7fc6f2;font-size:13px;letter-spacing:2px}.workflow-grid h3{font-weight:500;font-size:20px;margin:20px 0 13px}.workflow-grid p{color:#b3c8d9;font-size:13px;line-height:1.9;margin:0}.azure-site .account-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding:75px max(40px,calc((100vw - 1200px)/2));background:radial-gradient(ellipse at 0 30%,#d4eafa,transparent 70%),#f1f7fc;scroll-margin-top:137px}.account-copy h2{font-size:39px;line-height:1.55;font-weight:550;letter-spacing:-1px;margin:0 0 20px}.account-copy>p{color:#5c7890;font-size:15px;line-height:1.9;margin:0 0 34px}.account-copy>div{display:flex;align-items:center;gap:12px;color:#4c6f8b;font-size:12px;margin-top:16px}.account-copy>div .icon{color:#0078d4;width:19px}.azure-site .account-section>.portal-login{width:100%;max-width:460px;border-color:#d8e6f1;border-radius:12px;box-shadow:0 15px 40px #1849730d;margin:0 0 0 auto}.iot-footer{background:#f7f9fb;padding:45px max(40px,calc((100vw - 1200px)/2)) 25px;display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid #dce6ef}.iot-footer .brand{font-size:17px}.iot-footer>div>p{font-size:12px;color:#7a8c9e;margin:17px 0}.iot-footer>nav{display:flex;gap:25px;justify-content:flex-end;align-items:center;flex-wrap:wrap;font-size:12px;color:#506b82}.footer-bottom{grid-column:1/-1;border-top:1px solid #e0e8ef;padding-top:22px;margin-top:15px;display:flex;align-items:center;gap:25px;color:#8697a6;font-size:10px}.footer-bottom a{margin-left:auto}.azure-site section[id]{scroll-margin-top:137px}.iot-hero[id]{scroll-margin-top:72px}
@keyframes chart-draw{to{stroke-dashoffset:0}}@keyframes console-arrive{from{opacity:0;transform:rotateY(-7deg) rotateX(3deg) translateY(22px)}to{opacity:1;transform:rotateY(-7deg) rotateX(3deg) translateY(0)}}@keyframes orbit-breathe{0%,100%{transform:scale(.97);opacity:.3}50%{transform:scale(1.03);opacity:.85}}@keyframes scene-flow{to{stroke-dashoffset:-130}}
@media(min-width:1500px){.iot-hero-inner{min-height:650px}}
@media(max-width:1100px){.azure-site .site-header{gap:25px}.azure-site .site-header nav{gap:18px;font-size:12px}.iot-hero-inner{gap:30px;padding:65px 28px}.azure-site .hero-copy h1{font-size:34px}.azure-site .hero-copy>p{font-size:14px}.hero-tags{margin-top:32px}.console-body{padding:18px}.console-metrics{gap:8px}.console-metrics strong{font-size:23px}.console-chart svg{height:90px}.console-summary strong{font-size:19px}.iot-section{padding:65px 28px}.overview-layout{gap:35px}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-card p{min-height:50px}.azure-site .account-section{gap:45px;padding:65px 28px}.azure-site .solution-panel{padding:32px;gap:30px}.azure-site .solution-art{height:290px}.iot-footer{padding-inline:28px}}
@media(max-width:760px){.azure-site .site-header{height:65px;padding-inline:20px}.azure-site .site-header nav{display:none}.azure-site .site-header .brand{font-size:16px}.azure-site .header-login{font-size:11px;padding:9px 12px}.azure-site .header-login .icon{display:none}.iot-hero-inner{grid-template-columns:1fr;padding:45px 24px 50px;gap:38px}.azure-site .hero-copy h1{font-size:clamp(28px,5.5vw,38px);letter-spacing:-1px}.azure-site .hero-eyebrow{font-size:10px;margin-bottom:18px}.azure-site .hero-copy>p{font-size:14px;margin:20px 0 24px}.hero-tags{margin-top:27px}.iot-button{font-size:12px;padding:13px 19px}.hero-more{font-size:12px}.hero-product{max-width:550px;width:100%;margin:auto}.iot-console{transform:none;animation:content-enter .7s ease-out both}.console-metrics strong{font-size:26px}.console-chart svg{height:100px}.iot-section-nav{top:65px;height:54px;gap:24px;padding-inline:20px;overflow-x:auto;font-size:11px;scrollbar-width:none}.iot-section-nav a:last-child{margin-left:0}.iot-section{padding:50px 24px}.section-intro{margin-bottom:28px}.section-intro h2{font-size:27px}.section-intro>p{font-size:12px}.overview-layout{grid-template-columns:1fr;gap:20px}.iot-accordion summary{font-size:16px}.overview-visual{padding:20px}.overview-visual .connection-art{min-height:140px}.overview-visual .connection-art>svg{width:115%}.azure-site .solution-panel{grid-template-columns:1fr;padding:27px;gap:25px}.azure-site .solution-copy h3{font-size:25px}.azure-site .solution-copy>p{font-size:13px}.azure-site .solution-art{height:280px}.capability-grid{gap:15px}.capability-card{padding:24px 20px}.capability-card h3{font-size:17px}.capability-card p{min-height:90px;font-size:12px}.workflow-grid{grid-template-columns:1fr;gap:26px}.workflow-grid article{padding-top:18px}.workflow-grid h3{font-size:19px;margin-top:14px}.azure-site .account-section{grid-template-columns:1fr;padding:50px 24px;gap:30px}.account-copy h2{font-size:30px}.account-copy>p{font-size:13px;margin-bottom:22px}.azure-site .account-section>.portal-login{max-width:none}.iot-footer{grid-template-columns:1fr;padding:35px 24px 22px}.iot-footer>nav{justify-content:flex-start;gap:20px}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom a{margin-left:0}.azure-site section[id]{scroll-margin-top:119px}.iot-hero[id]{scroll-margin-top:65px}}
@media(max-width:420px){.capability-grid{grid-template-columns:1fr}.capability-card p{min-height:0}.console-metrics>div{padding:12px 9px}.console-metrics strong{font-size:23px}.console-summary strong{font-size:18px}.hero-tags{font-size:11px}}
@media(prefers-reduced-motion:reduce){.azure-site *,.azure-site *:before,.azure-site *:after{animation:none!important;transition:none!important}.console-trend{stroke-dashoffset:0}.iot-console{transform:none}.azure-site .will-reveal{opacity:1;transform:none}}
/* Company monitoring workspace: clear hierarchy, data-first cards and status. */
.workspace:has(.company-dashboard){background:#f1f5fa}.workspace:has(.company-dashboard) .main-content{max-width:1440px;padding-top:0}.workspace:has(.company-dashboard) .company-topline{background:#f1f5faf2;border-bottom-color:#dce5ef}.company-dashboard{--dash-blue:#087cce;--dash-ink:#15344d;--dash-muted:#7790a5;color:var(--dash-ink)}.workspace .dashboard-welcome{display:flex;align-items:center;justify-content:space-between;gap:35px;position:relative;overflow:hidden;padding:34px 38px;border-radius:17px;background:radial-gradient(ellipse at 100% 0,#148ae0,transparent 65%),linear-gradient(110deg,#123b60,#0967b1);color:white;margin:24px 0 22px;box-shadow:0 12px 30px #15528a18}.dashboard-welcome:after{content:'';position:absolute;width:380px;height:380px;border:1px solid #9fdcff25;border-radius:50%;right:-40px;top:-170px;pointer-events:none}.welcome-copy{position:relative;z-index:1}.welcome-eyebrow{font-size:10px;color:#b7ddf5;letter-spacing:1px}.welcome-copy h1{font-size:29px;line-height:1.5;font-weight:550;letter-spacing:-.5px;margin:12px 0 10px}.welcome-copy>p{font-size:12px;line-height:1.9;color:#c0def3;margin:0;max-width:590px}.welcome-actions{display:flex;align-items:center;gap:22px;margin-top:24px;flex-wrap:wrap}.welcome-actions button{background:#e1f2ff;color:#155482;border:0;border-radius:6px;padding:10px 16px;font-size:11px;font-weight:550}.welcome-actions button:hover{background:white}.welcome-actions .icon{width:15px;height:15px}.welcome-actions>span{font-size:10px;color:#9dcae9;display:flex;align-items:center;gap:6px}.welcome-actions .welcome-outline{background:transparent;border:1px solid #8fc7ef66;color:#d6edff}.welcome-status{position:relative;z-index:1;display:flex;align-items:center;gap:20px;flex-shrink:0;padding-right:20px}.welcome-status>div:last-child>span{display:block;font-size:10px;color:#a7d8f8;margin-bottom:10px}.welcome-status strong{display:block;font-weight:500;font-size:15px;line-height:1.8}.welcome-status small{display:block;margin-top:10px;font-size:10px;color:#a7d8f8}.welcome-radar{width:76px;height:76px;border:1px solid #86c9f966;border-radius:50%;display:grid;place-items:center;position:relative;background:#ffffff09}.welcome-radar>.icon{width:32px;height:32px;color:#b6e2ff}.welcome-radar i{position:absolute;inset:-14px;border:1px solid #8acaf52b;border-radius:50%;animation:radar-ring 4s ease-out infinite}.welcome-radar i:last-child{animation-delay:-2s}.workspace .company-dashboard .company-stats{gap:20px;margin:0 0 22px;grid-template-columns:repeat(3,minmax(0,1fr))}.workspace .company-dashboard .stat-card{position:relative;border:1px solid #e0e8f1;border-radius:12px;padding:23px 25px 18px;background:#fff;box-shadow:0 4px 15px #214d7404}.workspace .company-dashboard .stat-card .feature-icon{position:absolute;right:23px;top:22px;width:39px;height:39px;border-radius:11px}.workspace .company-dashboard .stat-label{font-size:11px;color:#738ba0}.workspace .company-dashboard .stat-card>strong{font-size:35px;font-weight:550;color:#1e425e;margin:10px 0 9px}.workspace .company-dashboard .stat-card>strong small{font-size:10px;color:#91a4b5;margin-left:8px}.workspace .company-dashboard .stat-card>p{font-size:10px;color:#91a2b1;margin:0;padding-top:10px;border-top:1px solid #f1f4f7}.workspace .company-dashboard .stat-action{border-top:3px solid #e7aa4f}.workspace .company-dashboard .stat-action>strong{color:#b27a2b}.insight-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:22px;margin-bottom:30px}.insight-panel{background:white;border:1px solid #dfe8f0;border-radius:13px;padding:25px;box-shadow:0 5px 18px #214d7404;min-width:0}.insight-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.dashboard-kicker{font-size:8px;letter-spacing:1.7px;color:#8aa1b4;font-weight:550;display:block;margin-bottom:7px}.insight-heading h2,.workspace .dashboard-devices-heading h2{font-size:17px;font-weight:550;color:#254660;margin:0;line-height:1.5}.insight-heading>.icon{color:#94aec3;width:20px;height:20px}.insight-heading h2>small{display:inline-grid;place-items:center;background:#fff3e2;border-radius:5px;color:#b4863b;font-size:10px;width:22px;height:21px;margin-left:7px}.overview-select select{font:inherit;font-size:10px;padding:8px 23px 8px 10px;border:1px solid #dce6ef;border-radius:5px;max-width:180px;color:#4c6f89;background:#f8fbfd}.sampling-context{display:flex;justify-content:space-between;gap:15px;font-size:9px;color:#8ca0b1;margin-top:21px;padding-top:17px;border-top:1px solid #eff3f7}.sampling-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin-top:22px}.sampling-metric{min-width:0;color:#2989d3}.sampling-metric:nth-child(2){color:#26a592}.sampling-metric:nth-child(3){color:#8b7bc0}.sampling-metric.is-alert{color:#c88a32}.sampling-metric>span{display:flex;align-items:center;gap:5px;color:#738b9f;font-size:10px}.sampling-metric>span .icon{height:14px;width:14px}.sampling-metric>strong{display:block;font-size:29px;font-weight:550;line-height:1.6;margin-top:7px;font-variant-numeric:tabular-nums}.sampling-metric>strong small{font-size:10px;font-weight:400;color:#95a8b7;margin-left:5px}.sampling-metric>svg{display:block;width:100%;height:auto;margin-top:8px}.sampling-metric>small{display:block;color:#9aacba;font-size:8px;margin-top:8px}.sampling-panel>.dashboard-text-link{margin-top:18px;border-top:1px solid #eff3f7;padding-top:15px;width:100%;justify-content:flex-end}.dashboard-text-link{display:inline-flex;align-items:center;gap:7px;background:none;border:0;padding:0;color:#1582cc;font-size:10px}.dashboard-text-link .icon{width:14px;height:14px}.health-content{display:flex;align-items:center;gap:28px;justify-content:center;padding:30px 0 25px}.health-ring{width:132px;height:132px;flex-shrink:0;border-radius:50%;background:conic-gradient(#2ba995 0 var(--healthy),#e4ae5e var(--healthy) var(--warning),#d7e2ec var(--warning) 100%);padding:13px;transform:rotate(-90deg)}.health-ring>div{width:100%;height:100%;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(90deg)}.health-ring strong{font-size:32px;font-weight:550;color:#274a65}.health-ring span{font-size:9px;color:#8da3b4;margin-top:5px}.health-legend{min-width:105px;display:grid;gap:20px}.health-legend>div{display:flex;align-items:center;justify-content:space-between;gap:18px}.health-legend>div>span{display:flex;align-items:center;gap:6px;color:#71899f;font-size:10px;white-space:nowrap}.health-legend i{width:6px;height:6px;border-radius:2px;background:#2ba995}.health-legend .warn{background:#e4ae5e}.health-legend .off{background:#c7d6e3}.health-legend strong{color:#46667f;font-size:13px;font-weight:550;white-space:nowrap}.health-legend small{font-size:9px;font-weight:400;color:#9caebb}.health-foot{border-top:1px solid #eff3f7;padding-top:16px;margin:0;color:#91a4b4;font-size:9px;text-align:center}.workspace .dashboard-devices-heading{margin:30px 0 18px;scroll-margin-top:170px}.workspace .dashboard-devices-heading .dashboard-kicker{margin-bottom:6px}.device-count{font-size:10px;color:#8ba1b4}.workspace .company-dashboard .device-grid{gap:20px}.workspace .company-dashboard .device-card{border:1px solid #dde7f0;border-radius:13px;background:#fff;padding:23px;box-shadow:0 4px 18px #214d7405;position:relative;overflow:hidden}.workspace .company-dashboard .device-card:before{content:'';height:3px;position:absolute;top:0;left:23px;right:23px;background:#60b8aa;border-radius:0 0 4px 4px}.workspace .company-dashboard .device-card:has(.badge.orange):before{background:#e6b261}.workspace .company-dashboard .device-card:has(.badge.gray):before{background:#bdcddd}.workspace .company-dashboard .device-card:hover{border-color:#96c7ea;box-shadow:0 12px 25px #1d639e12}.workspace .company-dashboard .device-card .card-top{margin-bottom:20px}.workspace .company-dashboard .device-card .project-symbol{width:40px;height:40px;border-radius:10px}.workspace .company-dashboard .device-card .device-code{font-size:9px;color:#9bafbf;letter-spacing:1px}.workspace .company-dashboard .device-card h2{font-size:19px;font-weight:550;color:#254960;margin:10px 0}.workspace .company-dashboard .device-card>p{font-size:10px;color:#8ca0b0}.workspace .company-dashboard .device-sensors{display:none}.device-readings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0;background:#f5f9fc;padding:15px 12px;border-radius:7px}.device-readings>div{min-width:0}.device-readings small{display:block;color:#8ca1b2;font-size:8px}.device-readings strong{display:block;color:#3b657e;font-size:20px;font-weight:550;margin-top:9px;font-variant-numeric:tabular-nums}.device-readings em{font-style:normal;font-size:8px;color:#94a8b9;margin-left:3px;font-weight:400}.device-readings .reading-alert strong{color:#c08b35}.last-reading-note{display:block;color:#9caebb;font-size:8px;margin-top:-9px;margin-bottom:15px}.workspace .company-dashboard .device-action{font-size:10px;padding-top:15px;border-color:#edf2f7}.dashboard-bottom{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;margin-top:25px}.attention-row{width:100%;display:flex;align-items:center;gap:13px;text-align:left;padding:16px 0;border:0;border-bottom:1px solid #edf2f6;background:none;color:#4d7089}.attention-row:last-child{border-bottom:0;padding-bottom:0}.attention-row:hover{background:#fafcfe}.attention-row>span:nth-child(2){flex:1;min-width:0}.attention-row strong{display:block;font-weight:500;font-size:11px;line-height:1.8}.attention-row small{display:block;font-size:9px;line-height:1.8;color:#95a7b7;margin-top:3px}.attention-row>.icon{width:14px;color:#93b0c6}.attention-symbol{width:33px;height:33px;flex-shrink:0;display:grid;place-items:center;background:#fff4e4;color:#bf903e;border-radius:8px}.attention-symbol.off{background:#edf2f7;color:#8aa1b3}.attention-symbol .icon{width:16px;height:16px}.dashboard-news-item{display:grid;grid-template-columns:1fr auto;gap:9px;padding:18px 0;border-bottom:1px solid #edf2f6}.dashboard-news-item:last-child{border:0;padding-bottom:0}.dashboard-news-item time{font-size:9px;color:#9aafbe;grid-column:1/-1}.dashboard-news-item strong{font-size:12px;line-height:1.8;font-weight:500;color:#4a6b84}.dashboard-news-item:hover strong{color:#0078d4}.dashboard-news-item .icon{width:15px;color:#8db0c9;align-self:center}.dashboard-empty{font-size:12px;color:#9bafbe;padding:30px 0;line-height:1.8}.workspace .dashboard-notes{margin-top:25px;background:#e9f1f8;border-color:#dce8f2;border-radius:12px;padding:22px 26px;color:#6c879d}.workspace .dashboard-notes h2{font-size:16px;color:#446a86}.workspace .dashboard-notes h3{font-size:13px;color:#64869e}.workspace .dashboard-notes p,.workspace .dashboard-notes li{font-size:11px}.spark-empty{height:50px;display:grid;place-items:center;font-size:9px;color:#a0b0be}
@keyframes radar-ring{0%{transform:scale(.85);opacity:.65}100%{transform:scale(1.3);opacity:0}}
/* Article cards: editorial copy on the left, Markdown-configured cover on the right. */
.news-card-list{max-width:none;display:grid;gap:22px}.news-card-list .news-card{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);gap:30px;padding:26px!important;border:1px solid #dfe8f1;border-radius:14px;background:#fff;box-shadow:0 6px 24px #254e7307;overflow:hidden;transition:border-color .2s,box-shadow .2s,transform .3s,opacity .55s}.news-card-list .news-card:hover{border-color:#a6cbea;box-shadow:0 12px 30px #254e7310}.news-card-copy{display:flex;flex-direction:column;align-items:flex-start;padding:9px 6px}.news-card-copy h2{font-size:24px;line-height:1.55;margin:17px 0 13px;font-weight:550}.news-card-copy>p{font-size:13px;line-height:1.95;color:#7a8da0;margin:0 0 20px}.news-card-copy .article-read{margin-top:auto;padding-top:6px;font-size:11px}.news-cover-link{display:block;min-width:0;min-height:210px;align-self:stretch;border-radius:10px;overflow:hidden}.news-cover{position:relative;isolation:isolate;width:100%;height:100%;min-height:210px;background:#e2f0fc;overflow:hidden}.news-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;transition:transform .5s}.news-cover img[hidden]{display:none}.news-card:hover .news-cover img{transform:scale(1.035)}.news-cover-default,.news-cover-fallback{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;background:radial-gradient(ellipse at 80% 10%,#268ed1,transparent 60%),linear-gradient(135deg,#163b65,#0e72b4);color:#c6eaff}.news-cover-fallback{position:absolute;inset:0;z-index:1}.news-cover .icon{height:62px;width:62px;stroke-width:1.1;position:relative;z-index:1}.news-cover span:not(.news-cover-fallback):not(.cover-orbit){font-size:12px;letter-spacing:2px;position:relative;z-index:1}.cover-orbit{width:200px;height:200px;border:1px solid #c1e9ff35;border-radius:50%;position:absolute;right:-30px;top:-60px}.news-card-list .article-meta{font-size:10px}
@media(max-width:1100px){.workspace .dashboard-welcome{padding:30px;gap:20px}.welcome-copy h1{font-size:25px}.welcome-status{gap:15px;padding-right:0}.welcome-radar{width:60px;height:60px}.welcome-status strong{font-size:12px}.insight-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px}.insight-panel{padding:21px}.health-content{gap:18px;flex-wrap:wrap;padding:25px 0 19px}.health-ring{width:120px;height:120px}.health-legend{min-width:105px}.sampling-grid{gap:12px}.sampling-metric>strong{font-size:25px}.workspace .company-dashboard .device-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.workspace .company-dashboard .device-card{padding:20px 17px}.device-readings{padding:12px 9px;gap:6px}.device-readings strong{font-size:18px}.news-card-copy h2{font-size:22px}}
@media(max-width:800px){.welcome-status{display:none}.workspace .company-dashboard .company-stats{gap:13px}.workspace .company-dashboard .stat-card{padding:20px}.workspace .company-dashboard .stat-card .feature-icon{width:30px;height:30px;right:17px;top:17px}.workspace .company-dashboard .stat-card>strong{font-size:30px}.insight-grid{grid-template-columns:1fr}.health-content{justify-content:flex-start;gap:45px}.health-ring{width:135px;height:135px}.health-legend{flex:1;max-width:300px}.workspace .company-dashboard .device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-bottom{grid-template-columns:1fr}.news-card-list .news-card{grid-template-columns:minmax(0,1.3fr) minmax(180px,1fr);gap:22px;padding:22px!important}.news-card-copy h2{font-size:20px}.news-card-copy>p{font-size:12px}}
@media(max-width:600px){.workspace .dashboard-welcome{margin:18px 0;padding:26px 22px;border-radius:12px}.welcome-copy h1{font-size:23px}.welcome-copy>p{font-size:11px}.welcome-eyebrow{font-size:9px}.welcome-actions{gap:14px;margin-top:20px}.welcome-actions>span{font-size:9px}.workspace .company-dashboard .company-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:18px}.workspace .company-dashboard .stat-card:last-child{grid-column:auto}.workspace .company-dashboard .stat-card{padding:17px 12px;border-radius:9px;min-width:0}.workspace .company-dashboard .stat-card .feature-icon{display:none}.workspace .company-dashboard .stat-label{font-size:9px}.workspace .company-dashboard .stat-card>strong{font-size:27px;margin:10px 0}.workspace .company-dashboard .stat-card>p{font-size:8px;line-height:1.9;min-height:40px}.insight-panel{padding:20px 17px}.insight-heading h2{font-size:15px}.dashboard-kicker{font-size:7px;letter-spacing:1.3px}.overview-select select{max-width:140px;font-size:9px;padding:7px}.sampling-context{font-size:8px;line-height:1.8;gap:10px}.sampling-grid{gap:10px}.sampling-metric>span{font-size:9px;gap:3px}.sampling-metric>span .icon{display:none}.sampling-metric>strong{font-size:23px}.sampling-metric>strong small{font-size:8px;margin-left:3px}.sampling-metric>small{font-size:7px}.health-content{gap:30px}.health-ring{width:120px;height:120px}.workspace .company-dashboard .device-grid{grid-template-columns:1fr;gap:16px}.workspace .company-dashboard .device-card{padding:24px}.workspace .company-dashboard .device-card h2{font-size:21px}.device-readings{padding:17px 15px;margin:22px 0}.device-readings strong{font-size:25px}.device-readings small{font-size:10px}.device-readings em{font-size:9px}.workspace .dashboard-devices-heading{margin-top:24px}.device-count{font-size:8px}.workspace .dashboard-notes{padding:20px}.news-card-list{gap:17px}.news-card-list .news-card{grid-template-columns:minmax(0,1fr);padding:19px!important;gap:22px}.news-card-copy{padding:0}.news-card-copy h2{font-size:22px}.news-cover-link{min-height:180px;grid-row:2}.news-cover{min-height:180px}.news-card-copy>p{margin-bottom:17px}}
@media(prefers-reduced-motion:reduce){.welcome-radar i{animation:none}.news-card-list .news-card,.news-cover img{transition:none}}
.workspace:has(.company-dashboard) .topbar{display:none}.workspace:has(.company-dashboard) .company-topline{padding-block:18px}.workspace .company-dashboard .dashboard-welcome{margin-top:18px}
.workspace .dashboard-welcome.accent-green{background:radial-gradient(ellipse at 100% 0,#169da5,transparent 70%),linear-gradient(110deg,#123b60,#0967b1)}.workspace .dashboard-welcome.accent-purple{background:radial-gradient(ellipse at 100% 0,#8271d3,transparent 70%),linear-gradient(110deg,#243c65,#366caf)}.workspace .dashboard-welcome.accent-orange{background:radial-gradient(ellipse at 100% 0,#a87f6b,transparent 70%),linear-gradient(110deg,#173d5f,#3b709b)}
/* A richer palette for customer-facing platform capabilities. */
.azure-site .hero-copy h1 + .hero-actions{margin-top:32px}
.azure-site #capabilities{position:relative;background:radial-gradient(ellipse at 4% 8%,#e9f4ff80,transparent 46%),radial-gradient(ellipse at 97% 85%,#f3ecff85,transparent 45%)}
.azure-site .capability-card{--cap-color:#147fcd;--cap-soft:#e5f2ff;--cap-edge:#bdddf6;--cap-tint:#f3f9ff;background:linear-gradient(150deg,#fff 18%,var(--cap-tint));border-color:var(--cap-edge);border-top:3px solid var(--cap-color);box-shadow:0 8px 24px #24476a08}
.azure-site .capability-card:nth-child(2){--cap-color:#138a77;--cap-soft:#ddf4ec;--cap-edge:#bce5d9;--cap-tint:#effaf5}
.azure-site .capability-card:nth-child(3){--cap-color:#8460bb;--cap-soft:#eee5fa;--cap-edge:#dbcaee;--cap-tint:#f7f2fc}
.azure-site .capability-card:nth-child(4){--cap-color:#b87521;--cap-soft:#fff0d7;--cap-edge:#f0d6ac;--cap-tint:#fff8ed}
.azure-site .capability-card .capability-icon{background:var(--cap-soft);color:var(--cap-color)}
.azure-site .capability-card>small{color:var(--cap-color);opacity:.6}
.azure-site .capability-card>a{color:var(--cap-color)}
.azure-site .capability-card:hover{border-color:var(--cap-color);box-shadow:0 14px 30px #24476a15}
.azure-site .capability-card h3{color:#203d53}
.azure-site .capability-card p{color:#607589}
/* Customer cockpit: a dark navigation rail and compact operational panels. */
.workspace.customer-console{display:flex;background:#edf5ff;color:#23466b;min-height:100vh;font-size:12px}
.workspace.customer-console .sidebar{position:fixed;inset:0 auto 0 0;width:198px;height:100vh;min-height:0;padding:26px 12px 15px;display:flex;flex-direction:column;align-items:stretch;gap:0;background:linear-gradient(160deg,#102a48,#091d34 65%,#0e2642);border:0;z-index:50;box-shadow:3px 0 14px #0b294a10}
.workspace.customer-console .sidebar .brand{font-size:15px;line-height:1.6;margin:0 4px 28px;gap:9px;color:#f1f7ff;white-space:normal;align-items:center;font-weight:550;letter-spacing:0}
.workspace.customer-console .sidebar .brand-name{max-width:125px}.workspace.customer-console .sidebar .brand-mark{background:#163e6b;color:#60a6ff;width:35px;height:35px;border:1px solid #2a5b8a;flex-shrink:0}
.workspace.customer-console .workspace-label{display:flex;align-items:center;justify-content:space-between;color:#6f91b4;font-size:9px;margin:0 11px 17px;letter-spacing:1px}.workspace.customer-console .workspace-label span{font-size:7px;border:0;color:#698aab}
.workspace.customer-console .sidebar>nav{display:flex;flex-direction:column;gap:9px;width:100%}.workspace.customer-console .nav-item{height:42px;border-radius:5px;display:flex;align-items:center;justify-content:flex-start;padding:0 18px;gap:13px;font-size:12px;color:#acc3dc;margin:0;background:none;font-weight:400;width:100%}.workspace.customer-console .nav-item .icon{width:16px;height:16px}.workspace.customer-console .nav-item:hover{background:#1a3c60;color:#e1efff}.workspace.customer-console .nav-item.active{background:linear-gradient(100deg,#2375f1,#3684ff);color:#fff;box-shadow:0 5px 15px #0062e42e}
.workspace.customer-console .sidebar-bottom{margin-top:auto;display:block;width:100%}.workspace.customer-console .help-card{display:block;margin:35px 6px 17px;padding:15px 12px;border:1px solid #284564;border-radius:8px;background:linear-gradient(140deg,#19406a66,#102e4c33);color:#acc7e3}.workspace.customer-console .help-icon{color:#4f9aff;margin-bottom:10px}.workspace.customer-console .help-card strong{font-size:11px;color:#afcbe8}.workspace.customer-console .help-card p{font-size:9px;line-height:1.9;color:#7297b8}.workspace.customer-console .help-card .badge{background:#1c4265;color:#90b9e0;font-size:8px}.workspace.customer-console .sidebar-user{padding:15px 5px 0;border-top:1px solid #27425d;display:flex;align-items:center;gap:9px}.workspace.customer-console .sidebar-user>div{display:block}.workspace.customer-console .sidebar-user strong{color:#bfd7ee;font-size:10px}.workspace.customer-console .sidebar-user small{color:#6b91b5;font-size:8px}.workspace.customer-console .sidebar-user .user-avatar{display:grid;width:28px;height:28px;background:#204468;color:#8cbbea}.workspace.customer-console .sidebar-user>.icon-button{color:#769dbf;margin-left:auto}
.workspace.customer-console .main-shell{margin-left:198px;padding-top:0;min-width:0;flex:1}.workspace.customer-console .topbar{height:58px;position:sticky;top:0;z-index:40;display:flex!important;justify-content:space-between;align-items:center;gap:20px;background:#fffffff5;padding:0 25px;border-bottom:1px solid #e3edf9;backdrop-filter:blur(12px)}.customer-console .legacy-breadcrumb,.workspace.customer-console .topbar-right{display:none}.workspace.customer-console .company-topline{display:none}.console-header-search{display:flex;align-items:center;gap:9px;background:#f0f6fd;border-radius:22px;padding:0 14px;width:340px;max-width:55%;height:33px}.console-header-search>.icon{width:15px;color:#8ba7c5}.console-header-search input{height:auto;padding:0;border:0;background:transparent;font-size:10px;box-shadow:none;color:#456787}.console-header-search input::placeholder{font-size:10px;color:#9cb1c9}.console-header-meta{display:flex;align-items:center;gap:18px}.console-header-meta>span{font-size:9px;color:#8aa2bc}.console-header-meta>.icon-button{position:relative;background:#f4f8fe;border-radius:50%;padding:6px;color:#688bad}.console-header-meta .icon-button i{position:absolute;right:6px;top:5px;background:#f3646d;border:2px solid white;border-radius:50%;width:8px;height:8px}.console-account{display:flex;align-items:center;gap:9px;background:none;border:0;color:#31516f;font-size:11px}.console-account>span{width:27px;height:27px;border-radius:50%;background:#e5f0ff;color:#4e84cb;display:grid;place-items:center}
.workspace.customer-console .main-content{max-width:1800px;padding:18px 18px 12px;margin:auto}.customer-console .cockpit-dashboard{--dash-ink:#23466b}.customer-console .console-top-grid{display:grid;grid-template-columns:minmax(0,2.35fr) minmax(260px,1fr);gap:14px;margin-bottom:14px}.customer-console .console-welcome{position:relative;isolation:isolate;overflow:hidden;border-radius:6px;padding:23px 13px 13px;background:linear-gradient(90deg,#0c335dee,#174f7f92 55%,#16487322),url('./assets/workspace/city.jpg') center 53%/cover;box-shadow:0 3px 13px #295e9a08;color:white}.console-welcome>div:first-child{position:relative;z-index:1;padding:0 12px}.console-welcome>div:first-child>span{font-size:9px;color:#c4dcf3;letter-spacing:1px}.console-welcome h1{font-size:21px;line-height:1.6;font-weight:550;margin:7px 0}.console-welcome>div:first-child>p{font-size:11px;color:#dcecff;line-height:1.8;margin:0;max-width:570px}.console-hero-landscape{display:none}.workspace.customer-console .cockpit-dashboard .company-stats{position:relative;z-index:1;gap:9px;margin:24px 0 0;grid-template-columns:repeat(3,minmax(0,1fr))}.workspace.customer-console .cockpit-dashboard .stat-card{border:1px solid #ffffffb0;border-radius:6px;padding:14px 13px 11px 56px;background:#ffffffef;min-height:78px;text-align:left;box-shadow:0 5px 20px #07284c15}.workspace.customer-console .cockpit-dashboard .stat-label{font-size:9px;color:#7a96b1}.workspace.customer-console .cockpit-dashboard .stat-card>strong{font-size:25px;color:#143d68;margin:7px 0 0;font-weight:600;line-height:1.3}.workspace.customer-console .cockpit-dashboard .stat-card>strong small{font-size:8px;color:#96abc0}.workspace.customer-console .cockpit-dashboard .stat-card>p{font-size:8px;color:#91a5bb;padding-top:0;margin-top:5px;border:0;line-height:1.5}.workspace.customer-console .cockpit-dashboard .stat-card .feature-icon{display:grid;position:absolute;left:12px;top:16px;width:34px;height:38px;border-radius:9px}.workspace.customer-console .cockpit-dashboard .stat-card .feature-icon .icon{width:20px;height:20px}.customer-console .insight-panel{border:1px solid #e4edf8;border-radius:6px;padding:18px 16px;box-shadow:0 3px 14px #3068a004;background:#fff}.customer-console .insight-heading h2{color:#204c7a;font-size:14px;font-weight:600}.console-count{font-size:9px;color:#8da6bf}.console-quick>div:nth-child(2){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:25px}.console-quick>div:nth-child(2)>button{border:0;background:none;font-size:10px;color:#3e6084;flex-direction:column;gap:11px;padding:0;white-space:nowrap}.console-quick button>span{width:42px;height:45px;border-radius:12px;background:linear-gradient(145deg,#eaf3ff,#dceaff);color:#2580f5;display:grid;place-items:center;transition:transform .2s,background .2s}.console-quick button:hover>span{transform:translateY(-3px);background:#cfe5ff}.console-quick button .icon{width:22px;height:22px}.console-quick>p{display:flex;align-items:center;gap:7px;font-size:9px;color:#96aac0;border-top:1px solid #eef3f9;padding-top:17px;margin:24px 0 0}.console-quick>p>.icon{width:13px;height:13px}
.customer-console .console-analytics{display:grid;grid-template-columns:minmax(220px,.95fr) minmax(280px,1.25fr) minmax(240px,1fr);gap:14px;margin-bottom:14px;scroll-margin-top:78px}.customer-console .console-analytics>.insight-grid{display:contents}.customer-console .health-panel{order:0}.customer-console .sampling-panel{order:1}.customer-console .console-alerts{order:2}.customer-console .dashboard-kicker{display:none}.customer-console .sampling-grid{gap:12px;margin-top:25px}.customer-console .sampling-metric>strong{font-size:25px}.customer-console .sampling-metric>svg{height:80px;margin-top:12px}.customer-console .sampling-metric>span{font-size:9px}.customer-console .sampling-metric>span .icon{display:none}.customer-console .sampling-context{font-size:8px;gap:9px;margin-top:17px;padding-top:13px;line-height:1.8}.customer-console .overview-select select{font-size:9px;max-width:130px;padding:6px}.customer-console .health-content{padding:34px 0 27px;gap:20px;flex-wrap:wrap;justify-content:center}.customer-console .health-ring{width:130px;height:130px;padding:15px}.customer-console .health-legend{flex:1;min-width:85px;max-width:155px;gap:19px}.customer-console .health-legend>div>span{font-size:9px}.customer-console .health-legend strong{font-size:12px}.customer-console .health-foot{font-size:8px;line-height:1.8;padding-top:16px}.console-alert-row{display:flex;align-items:flex-start;gap:10px;border:0;width:100%;padding:16px 0;border-bottom:1px solid #f0f4f9;background:transparent;text-align:left;color:#476889}.console-alert-row:hover{background:#f8fbff}.console-alert-row>span:nth-child(2){flex:1;min-width:0}.console-alert-row strong{font-weight:500;font-size:10px;line-height:1.7;display:block;color:#3a5a7d}.console-alert-row small,.console-alert-row em{display:block;font-size:8px;line-height:1.9;color:#8da5bc;font-style:normal}.console-alert-row>.icon{width:12px;height:12px;color:#91b0cc;margin-top:4px}.console-alert-icon{display:grid;place-items:center;width:23px;height:26px;border-radius:6px;flex-shrink:0;background:#fff1e8;color:#eb9150}.console-alert-icon>.icon{width:15px;height:15px}.console-alert-icon.offline{color:#8da2ba;background:#eef3f9}.console-panel-note{font-size:8px;color:#a6b6c8;margin:19px 0 0}
.customer-console .console-device-area{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:14px;margin-bottom:14px;scroll-margin-top:78px}.site-schematic{position:relative;height:265px;overflow:hidden;border:1px solid #e5edf2;border-radius:5px;margin-top:18px}.site-schematic>svg{position:absolute;width:100%;height:100%;inset:0}.site-pin{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:30px;height:34px;border:2px solid white;border-radius:14px 14px 14px 3px;background:#13a78f;color:white;box-shadow:0 4px 10px #225c8730;z-index:1}.site-pin.orange{background:#e6a445}.site-pin.gray{background:#99aec4}.site-pin>.icon{width:16px;height:16px}.site-pin>span{position:absolute;top:38px;left:50%;transform:translateX(-50%);padding:5px 7px;color:#54738d;background:#fffffff0;box-shadow:0 3px 10px #15385a0b;border-radius:4px;font-size:8px;white-space:nowrap;pointer-events:none}.site-pin:hover{z-index:2;box-shadow:0 0 0 5px #2387ec25}.site-map-label{position:absolute;bottom:8px;right:10px;color:#8ba2b3;font-size:8px;padding:5px;background:#ffffffd9;border-radius:3px}.site-legend{display:flex;gap:20px;margin-top:13px;color:#8299af;font-size:9px}.site-legend>span{display:flex;align-items:center;gap:5px}.site-legend i{width:6px;height:6px;background:#13a78f;border-radius:50%}.site-legend>span:nth-child(2) i{background:#e6a445}.site-legend>span:nth-child(3) i{background:#99aec4}.table-search{display:flex;align-items:center;gap:6px;background:#f3f8fe;padding:5px 9px;border-radius:5px;max-width:200px;margin:0}.table-search>.icon{width:12px;height:12px;color:#9eb8d2}.table-search input{height:23px;font-size:9px;padding:0;border:0;background:transparent;color:#54718f;box-shadow:none}.table-search input::placeholder{font-size:9px;color:#a6b9ce}.customer-console .console-device-table .table-wrap{margin-top:18px;overflow:auto}.console-device-table table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}.console-device-table th{font-size:9px;color:#6886a4;background:#f3f7fc;padding:12px 10px;border-bottom:1px solid #e7eff8;font-weight:500}.console-device-table td{font-size:9px;padding:16px 10px;border-bottom:1px solid #edf3f9;color:#7b94ad}.console-device-table td:first-child button{display:flex;align-items:center;gap:6px;text-align:left;border:0;background:none;font-size:10px;color:#3b5f83;padding:0}.console-device-table td:first-child .icon{width:14px;height:14px;color:#5d8bb6}.console-device-table td button:hover{color:#2382f3}.console-device-table td code{font-size:8px;color:#8fa4ba}.console-device-table .badge{font-size:8px;padding:4px 5px;background:transparent;gap:4px}.console-device-table .badge i{width:5px;height:5px;border-radius:50%;background:currentColor}.console-table-footer{display:flex;justify-content:space-between;gap:15px;color:#9aafc3;font-size:8px;padding:19px 4px 0}.console-no-results{text-align:center}.console-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.customer-console .console-notes h2{font-size:14px;font-weight:600;color:#204c7a;margin:0 0 15px}.customer-console .console-notes h3{font-size:11px;color:#4f7396;margin:20px 0 9px}.customer-console .console-notes p,.customer-console .console-notes li{font-size:10px;line-height:1.9;color:#8ba0b7}.customer-console .console-notes ul{padding-left:17px}.console-data-note{display:flex;align-items:center;gap:7px;font-size:9px;color:#8fa6bd;margin:17px 4px 0}.console-data-note .icon{width:13px;height:13px}.workspace.customer-console .main-footer{font-size:8px;color:#9bb0c5;padding-top:17px;margin-top:15px;border-color:#dae7f5}.customer-console .page-heading{padding-top:15px}.customer-console .page-heading h1{font-size:26px}.customer-console .blog-list{max-width:none}.customer-console .news-card-copy h2{font-size:22px}.customer-console .article-layout{max-width:none}.customer-console .dashboard-news-item{padding:15px 0}.customer-console .dashboard-news-item strong{font-size:11px}
@media(max-width:1250px){.workspace.customer-console .sidebar{width:178px;padding-inline:10px}.workspace.customer-console .main-shell{margin-left:178px}.workspace.customer-console .sidebar .brand{font-size:14px}.customer-console .console-top-grid{grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr)}.customer-console .console-analytics{grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr)}.customer-console .console-alerts{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.console-alerts>.insight-heading,.console-alerts>.console-panel-note{grid-column:1/-1}.customer-console .health-content{gap:18px}.customer-console .console-device-area{grid-template-columns:minmax(0,1fr)}.site-schematic{height:230px}.console-welcome>div:first-child>p{font-size:10px}.workspace.customer-console .cockpit-dashboard .stat-card{padding:12px 10px 11px 45px}.workspace.customer-console .cockpit-dashboard .stat-card .feature-icon{left:9px;width:28px;height:33px}.console-quick>div:nth-child(2){gap:7px}.console-quick>div:nth-child(2)>button{font-size:9px}.console-quick button>span{width:37px;height:40px}}
@media(min-width:1600px){.workspace.customer-console .sidebar{width:220px;padding:30px 14px 18px}.workspace.customer-console .main-shell{margin-left:220px}.workspace.customer-console .main-content{padding:20px 23px}.customer-console .console-analytics{grid-template-columns:1fr 1.25fr 1fr}.site-schematic{height:300px}}
@media(max-width:950px){.workspace.customer-console .sidebar{width:162px}.workspace.customer-console .main-shell{margin-left:162px}.workspace.customer-console .sidebar .brand{font-size:12px;gap:7px}.workspace.customer-console .sidebar .brand-mark{width:29px;height:29px}.workspace.customer-console .workspace-label{font-size:8px;margin-inline:6px}.workspace.customer-console .workspace-label span{display:none}.workspace.customer-console .nav-item{font-size:11px;padding:0 13px}.customer-console .console-top-grid{grid-template-columns:1fr}.customer-console .console-quick{padding:15px}.console-quick>div:nth-child(2){margin-top:14px}.console-quick>p{margin-top:17px;padding-top:12px}.console-quick button>span{width:38px;height:38px}.customer-console .console-analytics{grid-template-columns:1fr 1.2fr}.customer-console .health-content{padding-top:25px}.customer-console .health-ring{width:108px;height:108px;padding:12px}.customer-console .health-legend{max-width:180px;min-width:120px}.customer-console .sampling-grid{gap:8px}.customer-console .sampling-metric>strong{font-size:21px}.customer-console .sampling-metric>strong small{font-size:8px}.customer-console .sampling-metric>svg{height:100px}.customer-console .overview-select select{max-width:105px;font-size:8px}.customer-console .console-bottom-grid{grid-template-columns:1fr}.console-header-meta>span{display:none}.console-header-meta{gap:12px}.workspace.customer-console .topbar{padding-inline:18px}.console-header-search{max-width:65%}}
@media(max-width:650px){.workspace.customer-console{display:block}.workspace.customer-console .sidebar{position:sticky;inset:0 0 auto 0;top:0;width:100%;height:auto;min-height:0;display:grid;grid-template-columns:1fr auto;padding:13px 16px 11px;gap:12px;z-index:50}.workspace.customer-console .sidebar .brand{margin:0;font-size:14px;grid-column:1;grid-row:1}.workspace.customer-console .sidebar .brand-name{max-width:none}.workspace.customer-console .sidebar .brand-mark{width:28px;height:28px}.workspace.customer-console .workspace-label,.workspace.customer-console .help-card{display:none}.workspace.customer-console .sidebar>nav{grid-column:1/-1;grid-row:2;flex-direction:row;gap:5px;overflow:auto;scrollbar-width:none}.workspace.customer-console .nav-item{width:auto;flex-shrink:0;height:32px;font-size:10px;padding:0 10px;gap:6px}.workspace.customer-console .nav-item .icon{width:13px;height:13px}.workspace.customer-console .sidebar-bottom{margin:0;grid-column:2;grid-row:1;width:auto}.workspace.customer-console .sidebar-user{padding:0;border:0}.workspace.customer-console .sidebar-user>div,.workspace.customer-console .sidebar-user>.user-avatar{display:none}.workspace.customer-console .sidebar-user>.icon-button{color:#90b5d8}.workspace.customer-console .main-shell{margin-left:0;padding-top:0}.workspace.customer-console .topbar{position:relative;top:auto;height:49px;padding-inline:15px;gap:10px}.console-header-search{height:30px;max-width:75%;width:100%}.console-header-meta .console-account{display:none}.workspace.customer-console .main-content{padding:12px 11px}.customer-console .console-top-grid{gap:12px;margin-bottom:12px}.customer-console .console-welcome{padding:18px 9px 10px}.console-welcome>div:first-child{padding:0 8px}.console-welcome h1{font-size:19px}.console-welcome>div:first-child>p{font-size:10px}.workspace.customer-console .cockpit-dashboard .company-stats{gap:6px;margin-top:20px}.workspace.customer-console .cockpit-dashboard .stat-card{padding:12px 9px;min-height:83px}.workspace.customer-console .cockpit-dashboard .stat-card .feature-icon{display:none}.workspace.customer-console .cockpit-dashboard .stat-card>strong{font-size:25px}.workspace.customer-console .cockpit-dashboard .stat-label{font-size:9px}.workspace.customer-console .cockpit-dashboard .stat-card>p{font-size:7px;min-height:0}.customer-console .console-analytics{grid-template-columns:1fr;gap:12px}.customer-console .sampling-panel{order:1}.customer-console .health-panel{order:0}.customer-console .console-alerts{display:block;grid-column:auto;order:2}.customer-console .insight-panel{padding:17px 14px}.customer-console .health-content{flex-wrap:nowrap;gap:30px;padding-block:24px}.customer-console .health-ring{width:125px;height:125px}.customer-console .health-legend{min-width:115px;max-width:180px}.customer-console .sampling-grid{gap:14px}.customer-console .sampling-metric>strong{font-size:27px}.customer-console .sampling-metric>svg{height:75px}.customer-console .overview-select select{max-width:150px;font-size:9px}.console-alert-row{padding:13px 0}.console-alert-row strong{font-size:11px}.console-alert-row small,.console-alert-row em{font-size:9px}.customer-console .console-device-area{gap:12px;scroll-margin-top:110px}.customer-console .console-monitor,.customer-console .console-alerts{scroll-margin-top:110px}.site-schematic{height:230px}.site-pin>span{font-size:7px}.table-search{max-width:175px;padding:3px 7px}.console-device-table table{min-width:500px}.customer-console .console-bottom-grid{gap:12px}.customer-console .article-layout{gap:20px}.customer-console .page-heading h1{font-size:23px}.customer-console .news-card-copy h2{font-size:21px}.console-data-note{font-size:8px;line-height:1.8}.workspace.customer-console .main-footer{font-size:7px}.customer-console #console-monitor{scroll-margin-top:110px}}
@media(prefers-reduced-motion:reduce){.customer-console *{animation:none!important;transition:none!important}}

/* Platform administrator: portfolio and operations overview. */
.workspace.admin-console{background:#f2f5fa}.admin-dashboard{color:#213751}.admin-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;min-height:218px;padding:36px 40px;border-radius:16px;color:#fff;background:radial-gradient(ellipse at 87% 20%,#4268b0,transparent 55%),linear-gradient(115deg,#142d50,#204b80);box-shadow:0 12px 32px #254a7b15}.admin-kicker{font-size:10px;letter-spacing:2px;color:#6c85a2;font-weight:650}.admin-hero .admin-kicker{color:#b8d5ff}.admin-hero h1{font-size:32px;margin:14px 0 9px;letter-spacing:1px}.admin-hero p{color:#ccdef3;margin:0;font-size:14px}.admin-hero-tags{display:flex;gap:18px;margin-top:24px;font-size:11px;color:#c3d8f4}.admin-hero-tags span{display:flex;align-items:center;gap:6px}.admin-hero-tags .icon{width:15px;height:15px}.admin-network{position:relative;width:235px;height:160px;flex-shrink:0;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 29px,#ffffff15 30px 31px,transparent 32px 45px);border-radius:50%;display:grid;place-items:center}.admin-network>span{display:grid;place-items:center;width:65px;height:65px;border:1px solid #ffffff60;background:#81b8ff27;border-radius:19px;box-shadow:0 0 50px #73b6ff55}.admin-network>span .icon{width:32px;height:32px}.admin-network i{position:absolute;display:grid;place-items:center;width:39px;height:39px;background:#456d9f;border:1px solid #91b9e9;border-radius:12px;animation:admin-float 6s ease-in-out infinite}.admin-network i:nth-child(2){top:0;left:30px}.admin-network i:nth-child(3){top:26px;right:4px;animation-delay:-2s}.admin-network i:nth-child(4){bottom:0;left:52px;animation-delay:-4s}.admin-network i .icon{width:19px;height:19px}.admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0 30px}.admin-metric{position:relative;background:#fff;border:1px solid #e4eaf3;border-radius:12px;padding:22px;overflow:hidden;border-top:3px solid #4589eb}.admin-metric.purple{border-top-color:#8d70d8}.admin-metric.green{border-top-color:#25a28b}.admin-metric.orange{border-top-color:#efa14b}.admin-metric>.feature-icon{position:absolute;right:16px;top:20px;width:34px;height:34px;border-radius:10px}.admin-metric>.feature-icon .icon{width:19px;height:19px}.admin-metric>span:not(.feature-icon){font-size:12px;color:#71839b}.admin-metric>strong{display:block;font-size:36px;margin:14px 0 10px;font-weight:650;line-height:1.1}.admin-metric>strong small{font-size:11px;font-weight:400;margin-left:8px;color:#8b9bb0}.admin-metric>p{margin:0;font-size:10px;color:#8898ae}.admin-section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.admin-section-title h2{font-size:18px;margin:6px 0 0}.admin-section-title>span{font-size:11px;color:#8193aa}.admin-section-title .secondary{font-size:11px;padding:10px 14px;background:#fff}.admin-industries{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:26px}.admin-industry{display:block;min-width:0;text-align:left;padding:25px;border-radius:13px;border:1px solid #d7e7e4;background:linear-gradient(130deg,#f0faf6,#fff 75%);color:#263e58;transition:transform .2s,box-shadow .2s}.admin-industry.blue{background:linear-gradient(130deg,#edf5ff,#fff 75%);border-color:#dae6f8}.admin-industry:hover{transform:translateY(-3px);box-shadow:0 10px 25px #315d8c12}.admin-industry-top{display:flex;align-items:center;gap:12px}.admin-industry-top>.feature-icon{width:40px;height:40px;border-radius:12px}.admin-industry-top>span:nth-child(2){flex:1;font-size:11px;color:#70869c}.admin-industry-top>.icon{width:18px;color:#7494b1}.admin-industry h3{font-size:22px;margin:17px 0 8px}.admin-industry>p{font-size:12px;line-height:1.8;color:#7c8da1;margin:0}.admin-category-tags{display:flex;gap:8px;margin:18px 0 21px}.admin-category-tags span{padding:5px 10px;border-radius:5px;background:#fff;border:1px solid #e2eaf0;font-size:10px;color:#5d7891}.admin-status-track{display:flex;height:5px;border-radius:4px;overflow:hidden;background:#e6ecf3;gap:3px}.admin-status-track i{background:#37ae96}.admin-status-track i:nth-child(2){background:#efa650}.admin-status-track i:nth-child(3){background:#b6c4d4}.admin-industry>small{display:block;font-size:10px;color:#8092a7;margin-top:10px}.admin-management-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px}.admin-panel{min-width:0;background:white;border:1px solid #e2e9f2;border-radius:13px;padding:23px}.admin-panel .admin-section-title h2{font-size:16px}.admin-company-table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:12px}.admin-company-table th{font-size:10px;font-weight:500;color:#8c9db3;padding:12px 8px;background:#f7f9fc}.admin-company-table td{padding:16px 8px;border-bottom:1px solid #f0f3f8}.admin-company-table tr:last-child td{border:0}.admin-company-table td:first-child button{display:block;background:none;border:0;padding:0;font-size:12px;font-weight:650;color:#31577f}.admin-company-table td small{display:block;color:#96a5b6;font-size:9px;margin-top:5px}.admin-table-state{font-size:9px;display:inline-block;padding:5px 7px;border-radius:4px}.admin-table-state.attention{background:#fff4e8;color:#b07c32}.admin-table-state.healthy{background:#eaf8f3;color:#34997e}.admin-alert{display:flex;width:100%;gap:12px;align-items:center;text-align:left;background:none;border:0;border-bottom:1px solid #edf1f6;padding:17px 0;color:#304d6b}.admin-alert:last-child{border-bottom:0}.admin-alert>.feature-icon{width:34px;height:36px;border-radius:9px;flex-shrink:0}.admin-alert>.feature-icon .icon{width:17px;height:17px}.admin-alert>span:nth-child(2){flex:1;min-width:0}.admin-alert strong{font-size:12px;font-weight:550;display:block}.admin-alert small{font-size:10px;color:#8da0b6;margin-top:6px;display:block}.admin-alert>.icon{width:15px;color:#9ab0c6}.admin-alert:hover strong{color:#1978d4}.admin-data-note{font-size:10px;color:#92a1b5;line-height:1.8;margin-top:18px}.workspace.admin-console:has(.company-dashboard) .topbar{display:flex}
@keyframes admin-float{50%{transform:translateY(-6px)}}
@media(max-width:1000px){.admin-management-grid{grid-template-columns:1fr}.admin-metric{padding:18px 14px}.admin-metric>.feature-icon{right:12px;width:28px;height:28px}.admin-metric>span:not(.feature-icon){font-size:11px}.admin-metric>p{font-size:9px}.admin-metrics{gap:10px}}
@media(max-width:650px){.admin-hero{padding:25px;min-height:190px}.admin-hero h1{font-size:25px}.admin-network{display:none}.admin-hero-tags{flex-direction:column;gap:9px;margin-top:20px}.admin-metrics{grid-template-columns:1fr 1fr;margin:14px 0 24px;gap:10px}.admin-metric>strong{font-size:30px}.admin-industries{grid-template-columns:1fr;gap:12px}.admin-panel{padding:17px}.admin-industry{padding:20px}.admin-company-table{min-width:440px}.admin-section-title .secondary{padding:8px;font-size:9px}.admin-section-title h2{font-size:17px}.admin-management-grid{gap:12px}}
@media(prefers-reduced-motion:reduce){.admin-network i{animation:none}.admin-industry{transition:none}}
.admin-industry.orange{background:linear-gradient(130deg,#fff4e5,#fff 75%);border-color:#efdfc9}.solution-art.logistics-art{background:linear-gradient(145deg,#fff8ee,#f4e3c9)}

/* Company developer inventory management. */
.inventory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;margin-bottom:14px;border:1px solid #dce8f9;border-radius:8px;background:#fff}.inventory-toolbar>span{font-size:12px;color:#6b88a6}.inventory-toolbar .primary{font-size:11px;padding:10px 15px}.inventory-layout{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.8fr);gap:18px;align-items:start}.inventory-layout .panel{background:#fff;border:1px solid #e1eaf5;border-radius:10px;padding:23px;min-width:0}.inventory-layout h2{font-size:16px;color:#315679;margin:0 0 20px}.inventory-layout h2 small{font-size:11px;color:#95a6b9;font-weight:400;margin-left:8px}.inventory-form-panel form{display:flex;flex-direction:column}.inventory-form-panel label{font-size:11px;color:#6885a2;margin:12px 0 7px}.inventory-form-panel input,.inventory-form-panel select{box-sizing:border-box;width:100%;font-size:12px;height:40px}.inventory-form-panel .primary{margin-top:10px;font-size:12px;justify-content:center}.inventory-lists{display:grid;gap:18px}.inventory-list-panel .section-heading{padding:0;margin:0 0 18px}.inventory-list-panel .section-heading h2{margin:0}.inventory-list-panel .secondary{font-size:10px;padding:8px 11px}.inventory-table{border-collapse:collapse;width:100%;text-align:left;font-size:11px;min-width:420px}.inventory-table th{font-size:10px;color:#829bb4;background:#f3f7fc;padding:12px 10px}.inventory-table td{padding:15px 10px;border-bottom:1px solid #eef2f8;color:#52708e}.inventory-table td strong{font-weight:550;font-size:12px}.inventory-table td small,.inventory-deleted small{display:block;font-size:10px;color:#9aaec1;margin-top:7px}.inventory-table td:last-child{white-space:nowrap}.danger-button{border:1px solid #f3d5d3;background:#fff7f6;color:#be5750;border-radius:5px;padding:6px 10px;font-size:10px;margin-left:8px}.danger-button:hover{background:#ffebe8}.inventory-confirm{background:#fff5f0;border:1px solid #f2d5ca;border-radius:7px;padding:18px;margin-bottom:18px;color:#9b5c49;font-size:12px}.inventory-confirm p{font-size:11px;line-height:1.8;color:#a57c6f}.inventory-confirm .danger-button{margin:0 10px 0 0}.inventory-deleted{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eef2f7;padding:15px 0;font-size:12px;color:#6a849e}.inventory-list-panel>.muted{font-size:11px}.inventory-layout .table-wrap{overflow:auto}
@media(max-width:950px){.inventory-layout{grid-template-columns:1fr}.inventory-form-panel form{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:9px}.inventory-form-panel label{margin:0}.inventory-form-panel .error,.inventory-form-panel .primary{grid-column:1/-1}}
@media(max-width:650px){.inventory-layout .panel{padding:17px}.inventory-form-panel form{display:flex;gap:0}.inventory-form-panel label{margin:12px 0 7px}.inventory-toolbar{padding:12px}.inventory-toolbar>span{font-size:10px}.inventory-toolbar .primary{font-size:10px;padding:9px}.inventory-table{min-width:400px}}

/* MQTT discovery and payload-driven sensor layouts. */
.inventory-form-panel fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:10px}
.inventory-form-panel fieldset:disabled{opacity:.5}
.mqtt-candidate{display:flex;flex-direction:column;gap:7px;width:100%;text-align:left;margin:10px 0;white-space:normal;overflow-wrap:anywhere}
.mqtt-candidate small{font-size:11px;color:#71899f}
.mqtt-candidate span{font-size:13px}
#mqtt-discovery{max-height:380px;overflow:auto;margin:12px 0}
#mqtt-discovery>p,#mqtt-selection{font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.device-readings,.sampling-grid{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))}

/* Guided device registration and one-time board credentials. */
.access-flow{display:flex;align-items:center;flex-wrap:wrap;gap:18px;padding:18px 22px;background:#edf4ff;border:1px solid #dce8fa;border-radius:10px;margin-bottom:16px;color:#315c8d;font-size:13px}.access-flow span{display:flex;align-items:center;gap:9px}.access-flow b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#2b64df;color:#fff}.access-flow i{font-style:normal;color:#9ab3d8}.access-result{border-color:#b3cff7!important}.access-result p,.access-result label,.access-steps{font-size:12px;color:#4c6d90;line-height:1.9}.access-result code,#existing-device-access code{overflow-wrap:anywhere;word-break:break-word}.access-result input{box-sizing:border-box;width:100%;font-family:monospace;margin:8px 0 14px}.access-result .settings-actions{display:flex;gap:8px;flex-wrap:wrap}.access-result .settings-actions button{font-size:11px}#existing-device-access:not(:empty){margin-top:18px;padding:18px;background:#f5f8fd;border-radius:8px;font-size:12px;color:#4c6d90}#registry-status{font-size:12px;color:#6b84a0;min-height:18px}.inventory-table td:last-child .secondary{margin:5px}.inventory-table .badge{white-space:nowrap}@media(max-width:650px){.access-flow{gap:10px;padding:14px;font-size:11px}.access-flow i{display:none}.access-result .settings-actions button{flex:1 1 130px}}

/* Sampling details are available with a pointer, touch or keyboard focus. */
.trend-point{cursor:pointer;outline:none}.trend-tooltip{display:none;pointer-events:none}.trend-point:hover .trend-tooltip,.trend-point:focus .trend-tooltip{display:block}.trend-point:hover .trend-dot,.trend-point:focus .trend-dot{r:5;stroke:#fff;stroke-width:2}

.history-panel{margin-top:24px;padding:24px}.history-panel>.section-heading{padding:0;margin-top:0}.history-panel form{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.history-panel label{margin-top:0}.history-panel input{max-width:240px}.history-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.history-metric{min-width:0}.history-metric h3{font-size:13px;color:#657893}.history-payload{white-space:pre-wrap;overflow-wrap:anywhere;max-width:520px}.account-password{padding:24px;margin-top:24px;max-width:560px}.account-password h2{font-size:18px}.account-password button{margin-top:18px}

/* Company administration */
.member-permissions{padding:16px 0;border-bottom:1px solid #e5eaf3}
.member-permissions h3 small{display:block;margin-top:5px;font-weight:400;color:#64748b}
.grant-option{display:flex!important;align-items:center;gap:10px;flex-wrap:wrap}
.grant-option input[type=checkbox]{width:18px;height:18px;flex:none}
.scene-edit-form{padding-top:16px;margin-top:16px;border-top:1px solid #e5eaf3}
#invite-result{overflow-wrap:anywhere;user-select:all}
