:root{--m-blue:#0b5ea8;--m-deep:#082f57;--m-bg:#eef3f8;--m-card:#fff;--m-text:#102033;--m-muted:#66788b;--m-line:#dce5ee;--m-green:#138a4a;--m-amber:#c57a06;--m-red:#c43a39;--m-violet:#7256c7}
.cwm-mobile-pwa-page .cwm-public-header{display:none}.cwm-mobile-pwa-page .cwm-public-main{width:100%;max-width:none;margin:0;padding:0;background:var(--m-bg)}.cwm-mobile-pwa-page .cwm-public-shell{background:var(--m-bg)!important}.cwm-mobile-app{min-height:100vh;background:var(--m-bg);color:var(--m-text);padding:0 14px 104px}.cwm-m-topbar{position:sticky;top:0;z-index:80;margin:0 -14px 14px;padding:10px 14px;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid var(--m-line);display:flex;align-items:center;justify-content:space-between;min-height:68px}.cwm-m-brand{display:flex;align-items:center;gap:10px;min-width:0}.cwm-m-brand>span,.cwm-m-logo{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,var(--m-blue),var(--m-deep));color:#fff;font-weight:900}.cwm-m-brand div{min-width:0}.cwm-m-brand strong{display:block;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52vw}.cwm-m-brand small{display:block;color:var(--m-muted);font-size:12px;margin-top:2px}.cwm-m-top-actions{display:flex;align-items:center;gap:8px}.cwm-m-install{border:0;background:#e6f1fb;color:var(--m-blue);border-radius:12px;padding:10px 12px;font-weight:800}.cwm-m-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e9eef4;color:var(--m-text);font-weight:900;text-decoration:none}.cwm-m-hero{background:linear-gradient(145deg,#0b5ea8,#0b477e);color:#fff;border-radius:24px;padding:24px;margin:12px 0 14px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;box-shadow:0 15px 40px rgba(11,94,168,.22)}.cwm-m-hero h1{font-size:30px;line-height:1.06;margin:5px 0 8px}.cwm-m-hero p{margin:0;opacity:.88}.cwm-m-kicker{font-size:11px!important;font-weight:900!important;letter-spacing:.15em!important;text-transform:uppercase;color:var(--m-blue)!important;margin:0 0 5px!important}.cwm-m-hero .cwm-m-kicker{color:#cfe9ff!important}.cwm-m-live{min-width:82px;text-align:center;padding:12px;background:rgba(255,255,255,.13);border-radius:18px}.cwm-m-live span{display:block;width:12px;height:12px;border-radius:50%;margin:0 auto 7px;background:#9badc0}.cwm-m-live.on span{background:#48dd83;box-shadow:0 0 0 7px rgba(72,221,131,.15)}.cwm-m-live strong{display:block;font-size:28px}.cwm-m-live small{opacity:.8}.cwm-m-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0}.cwm-m-kpis-3{grid-template-columns:repeat(3,1fr)}.cwm-m-kpi{background:var(--m-card);border:1px solid var(--m-line);border-radius:18px;padding:16px}.cwm-m-kpi strong{display:block;font-size:28px;line-height:1}.cwm-m-kpi span{display:block;color:var(--m-muted);font-size:12px;margin-top:6px}.cwm-m-kpi.green strong{color:var(--m-green)}.cwm-m-kpi.amber strong{color:var(--m-amber)}.cwm-m-kpi.red strong{color:var(--m-red)}.cwm-m-kpi.violet strong{color:var(--m-violet)}.cwm-m-kpi.blue strong{color:var(--m-blue)}.cwm-m-alert{display:flex;flex-direction:column;gap:3px;border-radius:16px;padding:14px 16px;margin:12px 0;border:1px solid}.cwm-m-alert.warn{background:#fff8ea;border-color:#f5d79c;color:#7a4b00}.cwm-m-alert.bad{background:#fff0f0;border-color:#efb5b5;color:#8f2222}.cwm-m-section-head,.cwm-m-page-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:24px 2px 12px}.cwm-m-section-head h2,.cwm-m-page-title h1{margin:0}.cwm-m-section-head p,.cwm-m-page-title p{margin:4px 0 0;color:var(--m-muted)}.cwm-m-section-head a{font-weight:800;color:var(--m-blue);text-decoration:none}.cwm-m-device-list,.cwm-m-sec-list,.cwm-m-ticket-list{display:grid;gap:11px}.cwm-m-device,.cwm-m-sec-card,.cwm-m-ticket{display:block;background:#fff;border:1px solid var(--m-line);border-radius:20px;padding:16px;text-decoration:none;color:var(--m-text);box-shadow:0 4px 15px rgba(30,55,80,.035)}.cwm-m-device-head,.cwm-m-sec-card,.cwm-m-ticket{display:flex;align-items:center;justify-content:space-between;gap:12px}.cwm-m-device-head>div,.cwm-m-sec-card>div,.cwm-m-ticket>div{min-width:0}.cwm-m-device-head strong,.cwm-m-sec-card strong,.cwm-m-ticket strong{display:block;font-size:17px}.cwm-m-device-head small,.cwm-m-sec-card small,.cwm-m-ticket small{display:block;color:var(--m-muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwm-m-dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:#91a0af;margin-right:8px}.cwm-m-dot.on{background:#20ad5d;box-shadow:0 0 0 5px rgba(32,173,93,.11)}.cwm-m-device-meta,.cwm-m-device-sub{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--m-muted);margin-top:11px}.cwm-m-device-sub{padding-top:10px;border-top:1px solid #edf1f5}.cwm-m-health{display:grid;place-items:center;min-width:54px;height:42px;padding:0 8px;border-radius:13px;font-weight:900}.cwm-m-health.good,.cwm-m-pill.good{background:#e7f8ed;color:#11713c}.cwm-m-health.warn,.cwm-m-pill.warn{background:#fff3d9;color:#8a5705}.cwm-m-health.bad,.cwm-m-pill.bad{background:#ffebeb;color:#9e2928}.cwm-m-health.neutral,.cwm-m-pill.neutral{background:#eef2f6;color:#5d6c7c}.cwm-m-security-line{margin-top:11px;border-radius:13px;padding:10px 12px;display:flex;justify-content:space-between;gap:10px;font-size:12px}.cwm-m-security-line.good{background:#edf9f1;color:#1c6b3f}.cwm-m-security-line.warn{background:#fff7e6;color:#7a4c06}.cwm-m-security-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cwm-m-mini-error{margin-top:10px;font-size:12px;color:var(--m-amber);font-weight:800}.cwm-m-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.cwm-m-ticket>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.cwm-m-ticket-status{font-size:11px;color:var(--m-muted)}.cwm-m-bottom{position:fixed;z-index:100;left:0;right:0;bottom:0;padding:7px max(12px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--m-line);display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 -8px 30px rgba(18,40,62,.07)}.cwm-m-bottom a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 3px;color:#738191;text-decoration:none;border-radius:12px}.cwm-m-bottom a span{font-size:21px;line-height:1}.cwm-m-bottom a small{font-size:10px;font-weight:800}.cwm-m-bottom a.active{color:var(--m-blue);background:#edf5fc}.cwm-m-back{display:inline-flex;margin:7px 2px 13px;color:var(--m-blue);font-weight:800;text-decoration:none}.cwm-m-device-hero{background:#fff;border:1px solid var(--m-line);border-radius:22px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:14px}.cwm-m-device-hero h1{font-size:27px;line-height:1.1;margin:7px 0 5px}.cwm-m-device-hero p,.cwm-m-device-hero small{display:block;color:var(--m-muted);margin:0}.cwm-m-status{display:inline-block;padding:6px 9px;border-radius:999px;background:#eef2f6;font-size:11px;font-weight:900}.cwm-m-status.on{background:#e7f8ed;color:#11713c}.cwm-m-score{width:82px;height:82px;border-radius:24px;display:grid;place-items:center;text-align:center;flex:0 0 auto}.cwm-m-score strong{display:block;font-size:26px;line-height:1}.cwm-m-score span{display:block;font-size:10px;font-weight:800;margin-top:-11px}.cwm-m-score.good{background:#e8f8ed;color:#11713c}.cwm-m-score.warn{background:#fff2d6;color:#8a5705}.cwm-m-score.bad{background:#ffebeb;color:#9e2928}.cwm-m-score.neutral{background:#eef2f6;color:#657483}.cwm-m-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:12px 0}.cwm-m-metrics>div{background:#fff;border:1px solid var(--m-line);border-radius:16px;padding:14px}.cwm-m-metrics strong{display:block;font-size:20px}.cwm-m-metrics span{display:block;font-size:11px;color:var(--m-muted);margin-top:4px}.cwm-m-panel{background:#fff;border:1px solid var(--m-line);border-radius:20px;padding:17px;margin:12px 0}.cwm-m-panel h1,.cwm-m-panel h2{margin:0}.cwm-m-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.cwm-m-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.cwm-m-info-grid>div{background:#f5f8fb;border-radius:13px;padding:11px}.cwm-m-info-grid span{display:block;color:var(--m-muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.cwm-m-info-grid strong{display:block;margin-top:4px;font-size:13px;word-break:break-word}.cwm-m-quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:13px}.cwm-m-command{margin:0}.cwm-m-command button,.cwm-m-primary{width:100%;min-height:46px;border:1px solid #cbd8e5;background:#fff;color:var(--m-text);border-radius:13px;padding:10px 12px;font-weight:900}.cwm-m-command button.primary,.cwm-m-primary{background:var(--m-blue);border-color:var(--m-blue);color:#fff}.cwm-m-command button.danger{background:#fff0f0;border-color:#efb5b5;color:#9e2928}.cwm-m-details{background:#fff;border:1px solid var(--m-line);border-radius:18px;margin:11px 0;overflow:hidden}.cwm-m-details summary{list-style:none;cursor:pointer;padding:16px;display:flex;justify-content:space-between;align-items:center}.cwm-m-details summary::-webkit-details-marker{display:none}.cwm-m-details summary span{font-size:11px;color:var(--m-blue);font-weight:800}.cwm-m-details-body{border-top:1px solid var(--m-line);padding:8px 14px 14px}.cwm-m-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid #edf1f5}.cwm-m-row:last-child{border-bottom:0}.cwm-m-row>div{min-width:0}.cwm-m-row strong{display:block;font-size:13px}.cwm-m-row small{display:block;color:var(--m-muted);font-size:11px;margin-top:3px;white-space:normal}.cwm-m-row>span{font-size:11px;color:var(--m-muted);text-align:right;max-width:42%;word-break:break-word}.cwm-m-event{padding:13px 0;border-bottom:1px solid #edf1f5}.cwm-m-event strong,.cwm-m-event small{display:block}.cwm-m-event small{color:var(--m-muted);margin-top:2px}.cwm-m-event p{font-size:12px;line-height:1.45;margin:7px 0 0}.cwm-m-muted{color:var(--m-muted);font-size:12px}.cwm-m-thread{display:grid;gap:10px}.cwm-m-message{background:#f5f8fb;border-radius:16px;padding:13px}.cwm-m-message.internal{background:#fff6df;border:1px dashed #e8c572}.cwm-m-message>div{display:flex;justify-content:space-between;gap:10px}.cwm-m-message small{color:var(--m-muted)}.cwm-m-message p{margin:9px 0 0;line-height:1.55}.cwm-m-reply textarea,.cwm-m-reply select,.cwm-m-login input{width:100%;border:1px solid #cbd8e5;background:#fff;border-radius:13px;padding:12px;font:inherit}.cwm-m-reply label,.cwm-m-login label{display:block;font-weight:800;font-size:12px;margin:11px 0}.cwm-m-check{display:flex!important;align-items:center;gap:8px}.cwm-m-check input{width:auto!important}.cwm-m-empty{background:#fff;border:1px dashed #cbd8e5;border-radius:18px;padding:28px;text-align:center;color:var(--m-muted)}.cwm-m-login{width:min(460px,calc(100% - 28px));margin:5vh auto;background:#fff;border:1px solid var(--m-line);border-radius:25px;padding:26px;box-shadow:0 20px 60px rgba(25,50,75,.12)}.cwm-m-login h1{font-size:30px;margin:5px 0 8px}.cwm-m-login>p{color:var(--m-muted);line-height:1.5}.cwm-m-login small{display:block;color:var(--m-muted);margin-top:22px}.cwm-m-login .cwm-m-logo{margin-bottom:16px}.cwm-m-login .cwm-m-primary{margin-top:5px;font-size:15px}
@media(min-width:760px){.cwm-mobile-app{max-width:900px;margin:auto;padding-left:24px;padding-right:24px}.cwm-m-kpis{grid-template-columns:repeat(4,1fr)}.cwm-m-device-list{grid-template-columns:repeat(2,1fr)}.cwm-m-metrics{grid-template-columns:repeat(4,1fr)}.cwm-m-info-grid{grid-template-columns:repeat(3,1fr)}.cwm-m-bottom{left:50%;right:auto;transform:translateX(-50%);width:min(600px,100%);border:1px solid var(--m-line);border-bottom:0;border-radius:18px 18px 0 0}}
/* V0.9.1 – technician console, attention center and live diagnostics */
.cwm-m-kpi-link{text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease}.cwm-m-kpi-link:active{transform:scale(.98)}
.cwm-m-attention-list{display:grid;gap:12px}.cwm-m-attention-card{background:#fff;border:1px solid var(--m-line);border-left:5px solid #94a3b8;border-radius:20px;padding:16px;box-shadow:0 5px 18px rgba(30,55,80,.045)}.cwm-m-attention-card.warn{border-left-color:#e6a11c}.cwm-m-attention-card.bad{border-left-color:#d84a4a}.cwm-m-attention-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.cwm-m-attention-top small{color:var(--m-muted);font-weight:700}.cwm-m-attention-card h3{margin:12px 0 5px;font-size:18px}.cwm-m-attention-card>p{margin:0;color:#526170;line-height:1.45}.cwm-m-attention-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:13px}.cwm-m-attention-meta span{background:#f5f8fb;border-radius:12px;padding:9px;min-width:0;overflow:hidden;text-overflow:ellipsis}.cwm-m-attention-meta b{display:block;text-transform:uppercase;letter-spacing:.04em;color:var(--m-muted);font-size:9px;margin-bottom:3px}.cwm-m-attention-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.cwm-m-attention-actions a,.cwm-m-attention-actions button{border:0;border-radius:12px;padding:10px 13px;font:inherit;font-weight:900;cursor:pointer;text-decoration:none}.cwm-m-attention-actions a{background:var(--m-blue);color:#fff}.cwm-m-attention-actions button{background:#edf3f8;color:#23415e}.cwm-m-attention-actions button:disabled{opacity:.55;cursor:wait}
.cwm-m-live-performance{background:#fff;border:1px solid var(--m-line);border-radius:22px;padding:17px;margin:12px 0;box-shadow:0 5px 18px rgba(30,55,80,.04)}.cwm-m-live-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.cwm-m-live-title h2{margin:2px 0 3px}.cwm-m-live-title small{color:var(--m-muted)}.cwm-m-live-badge{white-space:nowrap;background:#eef2f6;color:#6c7b8b;border-radius:999px;padding:8px 10px;font-size:11px;font-weight:900}.cwm-m-live-badge.on{background:#e8f8ed;color:#11713c}.cwm-m-live-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.cwm-m-live-card{position:relative;overflow:hidden;background:#f7fafc;border:1px solid #e6edf3;border-radius:17px;padding:14px 14px 9px;min-height:155px}.cwm-m-live-number{display:flex;justify-content:space-between;align-items:baseline;gap:8px;position:relative;z-index:2}.cwm-m-live-number span{font-size:11px;font-weight:900;color:var(--m-muted);text-transform:uppercase;letter-spacing:.04em}.cwm-m-live-number strong{font-size:26px}.cwm-m-live-bar{height:8px;background:#e6edf3;border-radius:999px;overflow:hidden;margin:10px 0 7px}.cwm-m-live-bar i{display:block;height:100%;background:var(--m-blue);border-radius:inherit;transition:width .35s ease}.cwm-m-spark{width:100%;height:70px;display:block}.cwm-m-spark polyline{fill:none;stroke:var(--m-blue);stroke-width:3;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.cwm-m-diagnostic{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;margin-top:13px;padding-top:13px;border-top:1px solid #e8eef4}.cwm-m-diagnostic strong,.cwm-m-diagnostic span{display:block}.cwm-m-diagnostic span{color:var(--m-muted);font-size:11px;margin-top:2px}.cwm-m-diagnostic .cwm-m-primary{width:auto;min-height:40px;padding:8px 12px}.cwm-m-command-stop{border:1px solid #cbd8e5;background:#fff;border-radius:12px;padding:9px 12px;font-weight:900;color:#405264}
@media(max-width:560px){.cwm-m-attention-meta{grid-template-columns:1fr 1fr}.cwm-m-attention-meta span:first-child{grid-column:1/-1}.cwm-m-live-grid{grid-template-columns:1fr}.cwm-m-diagnostic{grid-template-columns:1fr 1fr}.cwm-m-diagnostic>div{grid-column:1/-1}.cwm-m-diagnostic .cwm-m-primary,.cwm-m-command-stop{width:100%}}
@media(min-width:1000px){.cwm-mobile-app{max-width:1280px;padding-left:30px;padding-right:30px}.cwm-m-device-list{grid-template-columns:repeat(3,minmax(0,1fr))}.cwm-m-attention-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cwm-m-attention-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.cwm-m-live-performance{padding:22px}.cwm-m-info-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* V0.10.0 – CompiWorld Managed professional console */
:root{--m-blue:#1688e8;--m-cyan:#23a8ff;--m-deep:#051a2d;--m-bg:#06111e;--m-card:#0b1c2c;--m-card2:#10263a;--m-text:#f5f9fd;--m-muted:#91a8bc;--m-line:#18364f;--m-green:#32d27d;--m-amber:#ffb54a;--m-red:#ff5b62;--m-violet:#9f83ff}
.cwm-mobile-pwa-page .cwm-public-main,.cwm-mobile-pwa-page .cwm-public-shell,.cwm-mobile-app{background:radial-gradient(circle at 80% -10%,rgba(25,137,232,.16),transparent 28%),linear-gradient(180deg,#061421 0%,#07111c 100%)!important;color:var(--m-text)}
.cwm-m-topbar{background:rgba(5,20,34,.93);border-bottom-color:var(--m-line);box-shadow:0 12px 28px rgba(0,0,0,.18)}
.cwm-m-brand>span,.cwm-m-logo{background:linear-gradient(145deg,#1aa6ff,#0755a2);box-shadow:0 8px 25px rgba(22,136,232,.28)}
.cwm-m-avatar,.cwm-m-icon-action{background:#10263a;color:#fff;border:1px solid #1d425f}.cwm-m-icon-action{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;text-decoration:none;font-size:19px}
.cwm-m-hero{background:linear-gradient(135deg,#0b3154,#0876c8 65%,#159ce8);box-shadow:0 18px 50px rgba(0,87,160,.32)}
.cwm-m-kpi,.cwm-m-device,.cwm-m-sec-card,.cwm-m-ticket,.cwm-m-panel,.cwm-m-details,.cwm-m-device-hero,.cwm-m-live-performance,.cwm-m-empty{background:linear-gradient(150deg,rgba(15,37,56,.98),rgba(8,27,43,.98));border-color:var(--m-line);box-shadow:0 14px 35px rgba(0,0,0,.16)}
.cwm-m-device-sub,.cwm-m-details-body,.cwm-m-row,.cwm-m-event,.cwm-m-diagnostic{border-color:#17344c}
.cwm-m-info-grid>div,.cwm-m-message,.cwm-m-attention-meta span,.cwm-m-live-card{background:#0d2234;border-color:#193a55}.cwm-m-device-head small,.cwm-m-sec-card small,.cwm-m-ticket small,.cwm-m-device-meta,.cwm-m-device-sub,.cwm-m-device-hero p,.cwm-m-device-hero small,.cwm-m-live-title small,.cwm-m-row small,.cwm-m-row>span,.cwm-m-event small,.cwm-m-muted,.cwm-m-page-title p,.cwm-m-section-head p{color:var(--m-muted)}
.cwm-m-bottom{background:rgba(6,20,33,.97);border-color:var(--m-line);box-shadow:0 -12px 35px rgba(0,0,0,.25)}.cwm-m-bottom a{color:#7f9bb2}.cwm-m-bottom a.active{color:#fff;background:#0f4d7e}
.cwm-m-live-performance{position:relative;overflow:hidden}.cwm-m-live-performance:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,var(--m-cyan),transparent);opacity:.8}
.cwm-m-live-card{min-height:215px;color:#eaf6ff}.cwm-m-live-card[data-cwm-cpu-card]{color:#31b4ff}.cwm-m-live-card[data-cwm-ram-card]{color:#9f83ff}.cwm-m-live-number strong{font-size:34px;color:#fff;text-shadow:0 0 24px currentColor}.cwm-m-live-number>div small{display:block;margin-top:3px;font-size:9px;color:var(--m-muted);font-weight:900;letter-spacing:.12em}.cwm-m-live-bar{background:#142d42;height:7px}.cwm-m-live-bar i{background:currentColor;box-shadow:0 0 16px currentColor;transition:width .7s cubic-bezier(.22,.8,.3,1)}
.cwm-m-chart-wrap{position:relative}.cwm-m-spark{height:92px;color:inherit;filter:drop-shadow(0 0 5px currentColor)}.cwm-m-spark polyline{stroke:currentColor;stroke-width:2.7;transition:all .6s ease}.cwm-m-gridlines line{stroke:#23445f;stroke-width:.7;opacity:.55}.cwm-m-chart-stats{display:flex;justify-content:space-between;color:var(--m-muted);font-size:10px;margin-top:4px}.cwm-m-chart-stats b{color:#d8e8f6}.cwm-m-live-card.warn{box-shadow:inset 0 0 0 1px rgba(255,181,74,.5),0 14px 35px rgba(0,0,0,.16)}.cwm-m-live-card.bad{box-shadow:inset 0 0 0 1px rgba(255,91,98,.7),0 0 30px rgba(255,91,98,.08)}
.cwm-m-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.cwm-m-action-button{min-height:48px;border:1px solid #28516f;background:#112a3e;color:#ecf7ff;border-radius:14px;padding:11px 13px;font-weight:900;cursor:pointer;text-align:center}.cwm-m-action-button.primary{background:linear-gradient(135deg,#0a75c8,#159ce8);border-color:#1aa6ff}.cwm-m-action-button.danger{background:#32191f;border-color:#75343c;color:#ffb5ba}.cwm-m-action-button:disabled{opacity:.55;cursor:wait}.cwm-m-action-note{grid-column:1/-1;padding:12px;border-radius:13px;background:#0c2234;color:var(--m-muted);font-size:11px;line-height:1.45}.cwm-m-command-feedback{margin-top:10px;padding:11px 13px;border-radius:12px;background:#0b2e49;color:#ccecff;font-size:12px}.cwm-m-inline-actions{display:flex;justify-content:flex-end;margin:4px 0 10px}.cwm-m-event-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:7px}.cwm-m-note{font-size:11px;line-height:1.5;color:var(--m-muted);padding:12px;background:#0a2031;border-radius:12px}.cwm-m-panel input[type=email],.cwm-m-panel select{width:100%;background:#0a2031;color:#fff;border:1px solid #28516f;border-radius:12px;padding:12px;margin-top:6px}.cwm-m-panel label{display:block;font-weight:800;font-size:12px;margin:10px 0}.cwm-m-check{display:flex!important;align-items:center;gap:9px}.cwm-m-check input{width:auto!important}
@media(max-width:560px){.cwm-m-action-grid{grid-template-columns:1fr}.cwm-m-live-number strong{font-size:31px}.cwm-m-topbar{min-height:64px}.cwm-m-brand strong{font-size:16px}}

.cwm-m-bottom{grid-template-columns:repeat(5,1fr)}.cwm-m-brand-icon{overflow:hidden;background:transparent!important;box-shadow:none!important}.cwm-m-brand-icon img{width:44px;height:44px;display:block;border-radius:13px}

.cwm-m-alert.good{background:#0d3323;border-color:#286c4b;color:#9cf1c2}.cwm-m-test-form{margin-top:8px}.cwm-m-test-form .cwm-m-action-button{width:100%}
/* V0.11.0 – NAS & Storage Monitoring */
.cwm-m-nas-overview{position:relative;overflow:hidden}.cwm-m-nas-overview:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#2fd3ff,#1688e8,transparent)}
.cwm-m-panel input[type=text],.cwm-m-panel input[type=password],.cwm-m-panel input[type=number],.cwm-m-panel input[type=email],.cwm-m-panel select{width:100%;box-sizing:border-box;background:#081d2e;color:#f7fbff;border:1px solid #28516f;border-radius:12px;padding:12px;margin-top:6px;outline:none}.cwm-m-panel input:focus,.cwm-m-panel select:focus{border-color:#2baaff;box-shadow:0 0 0 3px rgba(35,168,255,.13)}
.cwm-m-panel label>small{display:block;color:var(--m-muted);font-size:10px;line-height:1.4;margin-top:5px;font-weight:600}.cwm-m-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cwm-m-form-grid .cwm-m-check{background:#0a2031;border:1px solid #183a55;border-radius:12px;padding:10px 12px;margin:0}.cwm-m-form-grid .cwm-m-check input{accent-color:#1688e8}
.cwm-m-details-body .cwm-m-row>span.cwm-m-pill{max-width:48%;white-space:normal;text-align:center}.cwm-m-nas-overview .cwm-m-info-grid>div{background:linear-gradient(145deg,#0c2437,#0a1e2e)}
@media(max-width:560px){.cwm-m-form-grid{grid-template-columns:1fr}.cwm-m-details-body .cwm-m-row{align-items:center}.cwm-m-details-body .cwm-m-row>span.cwm-m-pill{max-width:46%}}

/* V0.11.0 – in-app infrastructure enrollment */
.cwm-m-add-infra{border-color:#20506f;background:linear-gradient(145deg,#0c263b,#081c2c)}.cwm-m-add-infra>summary{background:linear-gradient(90deg,rgba(22,136,232,.08),transparent)}.cwm-m-add-infra>summary strong{color:#ecf8ff}.cwm-m-add-infra>summary span{color:#7fcfff}.cwm-m-form-wide{grid-column:1/-1}.cwm-m-add-infra .cwm-m-primary{margin-top:9px}.cwm-m-device-meta{flex-wrap:wrap;align-items:center}.cwm-m-device-meta span:nth-child(2){color:#b8d7ed}
@media(max-width:560px){.cwm-m-form-wide{grid-column:auto}.cwm-m-device-meta{display:grid;grid-template-columns:1fr auto}.cwm-m-device-meta span:nth-child(2){grid-column:1/-1;grid-row:2}}

/* V0.12.0 – Backup Center & Network Operations */
.cwm-m-bottom{grid-template-columns:repeat(6,minmax(0,1fr))}.cwm-m-bottom a{min-width:0}.cwm-m-bottom a small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cwm-m-backup-overview{position:relative;overflow:hidden}.cwm-m-backup-overview:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#32d27d,#23a8ff,transparent)}
.cwm-m-backup-card{position:relative}.cwm-m-backup-card:after{content:"";position:absolute;right:16px;top:17px;width:8px;height:8px;border-radius:50%;background:#637f94;box-shadow:0 0 0 5px rgba(99,127,148,.08)}.cwm-m-backup-card.good:after{background:var(--m-green);box-shadow:0 0 0 5px rgba(50,210,125,.10),0 0 18px rgba(50,210,125,.34)}.cwm-m-backup-card.warn:after{background:var(--m-amber);box-shadow:0 0 0 5px rgba(255,181,74,.10)}.cwm-m-backup-card.bad:after{background:var(--m-red);box-shadow:0 0 0 5px rgba(255,91,98,.10),0 0 18px rgba(255,91,98,.28)}
.cwm-m-backup-config{border-color:#20506f;background:linear-gradient(145deg,#0d2638,#081b2b)}.cwm-m-backup-watcher{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;padding:12px;border-radius:14px;background:#091f31;border:1px solid #1a405c;margin:9px 0}.cwm-m-backup-watcher label{margin:0}.cwm-m-backup-watcher .wide{grid-column:1/-1}.cwm-m-backup-state{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #17344c}.cwm-m-backup-state:last-child{border-bottom:0}.cwm-m-backup-state strong{display:block}.cwm-m-backup-state small{display:block;color:var(--m-muted);margin-top:4px;line-height:1.4}.cwm-m-backup-age{font-variant-numeric:tabular-nums;white-space:nowrap}
.cwm-m-network-card{border-color:#1a4564}.cwm-m-network-card .cwm-m-row>span{font-variant-numeric:tabular-nums}.cwm-m-network-card .cwm-m-pill.good{box-shadow:0 0 16px rgba(50,210,125,.08)}.cwm-m-network-card .cwm-m-pill.bad{box-shadow:0 0 16px rgba(255,91,98,.08)}
.cwm-m-port-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cwm-m-port{background:#091f31;border:1px solid #193d58;border-radius:13px;padding:11px}.cwm-m-port strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwm-m-port small{display:block;color:var(--m-muted);margin-top:4px}.cwm-m-port.up{border-color:#225a45}.cwm-m-port.problem{border-color:#794048;background:#2a171d}
.cwm-m-storage-meter{height:8px;background:#132e43;border-radius:999px;overflow:hidden;margin-top:7px}.cwm-m-storage-meter i{display:block;height:100%;background:linear-gradient(90deg,#1688e8,#23a8ff);border-radius:inherit}.cwm-m-storage-meter.warn i{background:linear-gradient(90deg,#d98816,#ffb54a)}.cwm-m-storage-meter.bad i{background:linear-gradient(90deg,#d63e47,#ff5b62)}
@media(max-width:760px){.cwm-m-bottom a small{font-size:8px}.cwm-m-bottom a span{font-size:19px}.cwm-m-bottom{padding-left:5px;padding-right:5px}.cwm-m-backup-watcher{grid-template-columns:1fr}.cwm-m-port-grid{grid-template-columns:1fr}}
@media(max-width:390px){.cwm-m-bottom a small{font-size:7px}.cwm-m-bottom a span{font-size:18px}.cwm-m-bottom a{padding-left:1px;padding-right:1px}}
.cwm-m-backup-config-row{display:grid;grid-template-columns:160px minmax(0,1fr) 120px;gap:10px;padding:12px;border-radius:14px;background:#091f31;border:1px solid #1a405c;margin:9px 0}.cwm-m-backup-config-row label{margin:0}.cwm-m-backup-config-row label:nth-child(2){min-width:0}.cwm-m-backup-config-row input{margin-top:6px!important}
@media(max-width:680px){.cwm-m-backup-config-row{grid-template-columns:1fr}.cwm-m-backup-config-row label{width:100%}}

/* V0.13.0 – topology, historical trends and Synology backup events */
.cwm-m-page-title-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.cwm-m-inline-link{display:inline-flex!important;width:auto!important;white-space:nowrap;text-decoration:none!important;align-items:center;justify-content:center}
.cwm-m-topology{margin:18px 0 24px;border:1px solid #1a405c;border-radius:22px;background:linear-gradient(155deg,#0a2132,#071827);overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.16)}
.cwm-m-topology-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #173b55;background:linear-gradient(90deg,rgba(35,168,255,.08),rgba(50,210,125,.03))}.cwm-m-topology-head>div{display:flex;align-items:center;gap:13px}.cwm-m-topology-head strong{display:block;font-size:17px}.cwm-m-topology-head small{display:block;color:var(--m-muted);margin-top:3px}.cwm-m-topology-cloud{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#0d3048;border:1px solid #22658b;font-size:22px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),0 0 25px rgba(35,168,255,.12)}
.cwm-m-topology-trunk{padding:18px}.cwm-m-topology-branch{position:relative;padding-left:28px;margin:8px 0 20px}.cwm-m-topology-branch:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:linear-gradient(#23a8ff,#24445a 72%,transparent)}.cwm-m-topology-branch:after{content:"";position:absolute;left:8px;top:27px;width:20px;height:2px;background:#23a8ff}
.cwm-m-topology-node{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;text-decoration:none!important;color:inherit!important;background:#0a2436;border:1px solid #1b4865;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.cwm-m-topology-node:hover{transform:translateY(-1px);border-color:#2c79a5;box-shadow:0 12px 30px rgba(0,0,0,.18)}.cwm-m-topology-node.collector{background:linear-gradient(145deg,#0d2d43,#0a2031);border-color:#23648a}.cwm-m-topology-node.offline{opacity:.78}.cwm-m-topology-node strong{display:block}.cwm-m-topology-node small{display:block;color:var(--m-muted);margin-top:3px;overflow-wrap:anywhere}.cwm-m-topology-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#102f46;border:1px solid #245a7b;font-size:20px}
.cwm-m-topology-children{position:relative;margin:10px 0 0 28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cwm-m-topology-children:before{content:"";position:absolute;left:-20px;top:-10px;bottom:18px;width:1px;background:#24445a}.cwm-m-topology-children .child:before{content:"";position:absolute;left:-20px;top:50%;width:19px;height:1px;background:#24445a}.cwm-m-topology-empty{padding:12px;color:var(--m-muted);border:1px dashed #24445a;border-radius:12px}.cwm-m-topology-unassigned{margin-top:18px;padding:14px;border:1px dashed #415a6b;border-radius:16px}.cwm-m-topology-unassigned>strong{display:block;margin-bottom:10px}.cwm-m-topology-unassigned .cwm-m-topology-node{margin-top:8px}
.cwm-m-history-panel{position:relative;overflow:hidden}.cwm-m-history-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#23a8ff,#8a6cff,transparent)}.cwm-m-range{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:#081a29;border:1px solid #1a3c55}.cwm-m-range button{border:0;background:transparent;color:var(--m-muted);padding:7px 10px;border-radius:9px;font-weight:700;cursor:pointer}.cwm-m-range button.active{background:#123a54;color:#fff;box-shadow:0 3px 12px rgba(0,0,0,.18)}
.cwm-m-history-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0}.cwm-m-history-stats>div{padding:11px 12px;border-radius:13px;background:#091e2e;border:1px solid #183c56}.cwm-m-history-stats span{display:block;color:var(--m-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.cwm-m-history-stats strong{display:block;font-size:18px;margin-top:4px;font-variant-numeric:tabular-nums}
.cwm-m-history-chart{padding:10px 12px 8px;border:1px solid #173c56;border-radius:16px;background:radial-gradient(circle at 25% 0,rgba(35,168,255,.08),transparent 38%),#071a29}.cwm-m-history-chart svg{display:block;width:100%;height:210px;overflow:visible}.cwm-m-history-grid line{stroke:#1a3449;stroke-width:1}.cwm-m-history-chart path{fill:none;stroke-width:3;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(35,168,255,.18));transition:d .25s ease}.cwm-m-history-chart path.cpu{stroke:#31b9ff}.cwm-m-history-chart path.ram{stroke:#9b85ff}.cwm-m-history-chart path.disk{stroke:#55d79b}.cwm-m-history-legend{display:flex;align-items:center;gap:14px;margin-top:6px;font-size:12px}.cwm-m-history-legend .cpu{color:#31b9ff}.cwm-m-history-legend .ram{color:#ad9dff}.cwm-m-history-legend .disk{color:#67dca8}.cwm-m-history-legend small{margin-left:auto;color:var(--m-muted)}
.cwm-m-webhook input[readonly]{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.cwm-m-inline-form{display:inline-block;margin-left:8px}.cwm-m-webhook .cwm-m-note{margin-top:14px}
@media(max-width:900px){.cwm-m-topology-children{grid-template-columns:1fr}.cwm-m-history-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cwm-m-history-stats>div:last-child{grid-column:1/-1}.cwm-m-page-title-actions{align-items:flex-start;flex-direction:column}.cwm-m-inline-link{width:100%!important}}
@media(max-width:560px){.cwm-m-topology-trunk{padding:12px}.cwm-m-topology-branch{padding-left:20px}.cwm-m-topology-children{margin-left:16px}.cwm-m-topology-node{grid-template-columns:38px minmax(0,1fr);gap:10px}.cwm-m-topology-node>.cwm-m-pill{grid-column:2;justify-self:start}.cwm-m-topology-icon{width:36px;height:36px}.cwm-m-history-chart svg{height:170px}.cwm-m-range{width:100%;margin-top:10px}.cwm-m-range button{flex:1}.cwm-m-inline-form{display:block;margin:8px 0 0}}

/* V0.14.0 – branded mail identity, maintenance, discovery and service reporting */
.cwm-m-home-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:10px 0 16px}.cwm-m-home-tools a{text-decoration:none;display:flex;align-items:center;justify-content:center}
.cwm-m-mail-identity{border-color:#205675;box-shadow:0 18px 46px rgba(5,28,44,.08)}.cwm-m-mail-identity:before{content:"";display:block;height:2px;margin:-17px -17px 16px;background:linear-gradient(90deg,#23a8ff,#2fd17f,#23a8ff)}
.cwm-m-maintenance{border-color:#54481f;background:linear-gradient(145deg,#fffdf6,#fff)}.cwm-m-maintenance-list{display:grid;gap:8px;margin-top:14px}.cwm-m-maintenance-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:13px;background:#fff9e8;border:1px solid #eadfb8}.cwm-m-maintenance-list strong,.cwm-m-maintenance-list small{display:block}.cwm-m-maintenance-list small{color:var(--m-muted);margin-top:3px}
.cwm-m-discovery{position:relative;overflow:hidden;border-color:#285d7e;background:linear-gradient(150deg,#0c2537,#081a29);color:#eaf7ff}.cwm-m-discovery .cwm-m-kicker{color:#69c9ff!important}.cwm-m-discovery .cwm-m-panel-head p,.cwm-m-discovery small{color:#93adbf}.cwm-m-discovery-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.cwm-m-discovery-actions .cwm-m-action-button{width:auto;background:#103954;border-color:#24688e;color:#fff}.cwm-m-discovery-list{display:grid;gap:8px}.cwm-m-discovery-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;border:1px solid #1a435e;border-radius:14px;background:#091e2e}.cwm-m-discovery-item strong,.cwm-m-discovery-item small{display:block}.cwm-m-discovery-item small{margin-top:3px}.cwm-m-discovery-item form{display:flex;align-items:center;gap:6px}.cwm-m-discovery-item select{margin:0!important;min-width:130px}.cwm-m-link-button{border:0;background:transparent;color:var(--m-blue);font-weight:800;cursor:pointer;padding:8px}.cwm-m-discovery .cwm-m-link-button{color:#78cfff}
.cwm-m-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.cwm-m-report-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:16px;border:1px solid var(--m-line);border-radius:18px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 5px 18px rgba(13,42,66,.04)}.cwm-m-report-card strong,.cwm-m-report-card small{display:block}.cwm-m-report-card small{color:var(--m-muted);margin-top:3px}.cwm-m-report-meta{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid #edf2f6;color:var(--m-muted);font-size:11px}.cwm-m-report-card:hover{border-color:#9ac5e1;box-shadow:0 12px 30px rgba(11,94,168,.10)}
.cwm-m-live-card svg polyline,.cwm-m-history-chart path{animation:cwm-chart-glow 2.8s ease-in-out infinite alternate}@keyframes cwm-chart-glow{from{filter:drop-shadow(0 0 2px rgba(35,168,255,.14))}to{filter:drop-shadow(0 0 8px rgba(35,168,255,.30))}}
@media(max-width:700px){.cwm-m-home-tools,.cwm-m-report-grid{grid-template-columns:1fr}.cwm-m-discovery-item{grid-template-columns:1fr}.cwm-m-discovery-item form{width:100%;flex-wrap:wrap}.cwm-m-discovery-item select{flex:1}.cwm-m-maintenance-list>div{align-items:flex-start;flex-direction:column}}

/* V0.15.0 customer notification center */
.cwm-m-icon-action{position:relative}.cwm-m-notice-badge{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center;border:2px solid #07162c}
.cwm-m-notify-policy .cwm-m-inline-select{margin:0 0 18px}.cwm-m-inline-select label{display:grid;gap:7px;font-weight:700}.cwm-m-inline-select select,.cwm-m-notify-row select{width:100%;border:1px solid rgba(148,163,184,.25);background:#0b1e38;color:#eaf2ff;border-radius:12px;padding:11px 12px}
.cwm-m-notify-matrix{display:grid;gap:8px;margin:18px 0}.cwm-m-notify-head,.cwm-m-notify-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(180px,.9fr) minmax(90px,.35fr);gap:12px;align-items:center}.cwm-m-notify-head{padding:0 12px;color:#8fa7c5;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.cwm-m-notify-row{background:rgba(7,22,44,.72);border:1px solid rgba(148,163,184,.14);padding:12px;border-radius:14px}.cwm-m-notify-row strong{font-size:14px}.cwm-m-switch{display:flex;gap:8px;align-items:center;color:#b9cae1;font-size:13px}
.cwm-m-customer-notifications{display:grid;gap:12px}.cwm-m-customer-notice{display:grid;grid-template-columns:44px 1fr;gap:13px;padding:16px;border-radius:18px;background:linear-gradient(145deg,rgba(12,34,64,.96),rgba(8,24,47,.96));border:1px solid rgba(148,163,184,.13);box-shadow:0 12px 28px rgba(0,0,0,.12)}.cwm-m-customer-notice.unread{border-color:rgba(239,68,68,.42);box-shadow:0 12px 30px rgba(239,68,68,.08)}.cwm-m-customer-notice-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:rgba(239,68,68,.15);color:#ff7d7d;font-size:20px;font-weight:900}.cwm-m-customer-notice-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.cwm-m-customer-notice-head strong{font-size:15px;color:#f4f8ff}.cwm-m-customer-notice-head span,.cwm-m-customer-notice small{font-size:11px;color:#8fa7c5}.cwm-m-customer-notice p{white-space:normal;margin:7px 0 9px;color:#c7d5e8;line-height:1.55}.cwm-m-read-form{margin:0 0 15px}
@media(max-width:700px){.cwm-m-notify-head{display:none}.cwm-m-notify-row{grid-template-columns:1fr}.cwm-m-customer-notice-head{display:grid;gap:3px}.cwm-m-notify-row select{min-height:44px}}

/* V0.16.1 – scan status */
.cwm-m-scan-state{margin-top:14px;padding:13px 14px;border:1px solid rgba(148,163,184,.25);border-radius:14px;display:grid;gap:5px}.cwm-m-scan-state strong{font-size:14px}.cwm-m-scan-state span{font-size:12px;opacity:.72}.cwm-m-scan-bar{height:6px;border-radius:999px;overflow:hidden;background:rgba(148,163,184,.22)}.cwm-m-scan-bar i{display:block;height:100%;width:0;border-radius:999px;background:currentColor}.cwm-m-scan-state.running .cwm-m-scan-bar i{width:34%;animation:cwmMScan 1.3s ease-in-out infinite alternate}.cwm-m-scan-state.idle .cwm-m-scan-bar{display:none}@keyframes cwmMScan{from{transform:translateX(-20%)}to{transform:translateX(200%)}}

/* V0.16.2 – compact fleet, contrast fixes and live command progress */
.cwm-m-maintenance{color:#142033!important;background:linear-gradient(145deg,#fffaf0,#fff)!important;border-color:#e7cf92!important}
.cwm-m-maintenance h2,.cwm-m-maintenance .cwm-m-panel-head p,.cwm-m-maintenance label,.cwm-m-maintenance strong{color:#142033!important}
.cwm-m-maintenance .cwm-m-kicker{color:#9a6500!important}.cwm-m-maintenance .cwm-m-panel-head p,.cwm-m-maintenance label>small,.cwm-m-maintenance-list small{color:#66788b!important}
.cwm-m-maintenance input[type=text],.cwm-m-maintenance input[type=datetime-local],.cwm-m-maintenance select{background:#fff!important;color:#142033!important;border:1px solid #c8b574!important}
.cwm-m-maintenance input::placeholder{color:#7f8790!important}.cwm-m-maintenance .cwm-m-pill.neutral{background:#eef2f6!important;color:#455668!important}.cwm-m-maintenance .cwm-m-pill.warn{background:#fff0c7!important;color:#7d5100!important}
.cwm-m-device-tools{display:grid;grid-template-columns:minmax(260px,1fr) 180px 220px;gap:9px;margin:10px 0 12px}.cwm-m-device-tools input,.cwm-m-device-tools select{width:100%;box-sizing:border-box;background:#0b2031;color:#f5f9fd;border:1px solid #28516f;border-radius:12px;padding:11px 12px;min-height:44px}.cwm-m-device-tools input::placeholder{color:#7e9aaf}
.cwm-m-device-list-compact{gap:6px}.cwm-m-device-compact{display:grid!important;grid-template-columns:18px minmax(190px,1.5fr) minmax(110px,.65fr) minmax(160px,.85fr) 58px 18px;align-items:center;gap:10px;padding:10px 12px!important;border-radius:13px!important;min-height:50px}.cwm-m-device-compact .cwm-m-dot{margin:0}.cwm-m-device-main{min-width:0}.cwm-m-device-main strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwm-m-device-main small{display:block;color:var(--m-muted);font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwm-m-device-fast{display:grid;gap:2px}.cwm-m-online-text{font-size:11px;font-weight:900}.cwm-m-online-text.on{color:#65e89a}.cwm-m-online-text.off{color:#ff7b80}.cwm-m-device-fast small{color:var(--m-muted);font-size:10px}.cwm-m-device-flags{display:flex;justify-content:flex-end;gap:5px;min-width:0;overflow:hidden}.cwm-m-mini-pill{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap}.cwm-m-mini-pill.neutral{background:#102b40;color:#9fc2dc}.cwm-m-mini-pill.warn{background:#493314;color:#ffd28a}.cwm-m-device-compact .cwm-m-health{min-width:46px;height:34px;border-radius:10px;font-size:11px}.cwm-m-device-chevron{font-size:24px;color:#5d829e;line-height:1}
.cwm-m-command-live{border-color:#265b7c!important;background:linear-gradient(145deg,#0b2538,#081b2b)!important}.cwm-m-command-live-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cwm-m-command-live-head strong{display:block;font-size:16px}.cwm-m-command-live>p{margin:10px 0 0;color:#a9bed0;font-size:12px;line-height:1.45}.cwm-m-command-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:13px}.cwm-m-command-steps i{height:7px;border-radius:999px;background:#18364f;transition:.25s}.cwm-m-command-steps i.active{background:linear-gradient(90deg,#1688e8,#35c7ff);box-shadow:0 0 14px rgba(35,168,255,.25)}.cwm-m-command-steps i.bad{background:#7a2a30}
.cwm-m-scan-findings{display:grid;gap:3px;margin-top:5px;font-size:11px}.cwm-m-scan-findings b{color:inherit}.cwm-m-scan-findings small{display:block!important;opacity:.82!important;white-space:normal;overflow-wrap:anywhere}
@media(max-width:900px){.cwm-m-device-tools{grid-template-columns:1fr 1fr}.cwm-m-device-tools input{grid-column:1/-1}.cwm-m-device-compact{grid-template-columns:18px minmax(0,1fr) 90px 52px 16px}.cwm-m-device-flags{display:none}}
@media(max-width:560px){.cwm-m-device-tools{grid-template-columns:1fr}.cwm-m-device-tools input{grid-column:auto}.cwm-m-device-compact{grid-template-columns:16px minmax(0,1fr) 55px 14px;gap:8px;padding:9px 10px!important}.cwm-m-device-fast{grid-column:2;grid-row:2;display:flex;gap:8px;align-items:center}.cwm-m-device-compact .cwm-m-health{grid-column:3;grid-row:1/3}.cwm-m-device-chevron{grid-column:4;grid-row:1/3}.cwm-m-device-main strong{font-size:13px}}

/* V0.16.3 – persistent command timeline + discovery progress */
.cwm-m-command-live-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.cwm-m-command-live-head small{display:block;color:#7fa2ba;font-size:10px;margin-top:3px}.cwm-m-command-live .cwm-m-link-button{color:#8bcfff;padding:5px 7px;font-size:10px}
.cwm-m-command-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:15px}.cwm-m-command-timeline>div{position:relative;display:grid;grid-template-columns:12px minmax(0,1fr);grid-template-rows:auto auto;column-gap:6px;align-items:center;min-width:0}.cwm-m-command-timeline i{grid-row:1/3;width:10px;height:10px;border-radius:999px;background:#28445a;border:2px solid #0b2538;box-shadow:0 0 0 2px #28445a;transition:.2s}.cwm-m-command-timeline i.active{background:#3bc7ff;box-shadow:0 0 0 2px #1688e8,0 0 16px rgba(53,199,255,.28)}.cwm-m-command-timeline i.bad{background:#ff6972;box-shadow:0 0 0 2px #9a3038}.cwm-m-command-timeline span{font-size:10px;font-weight:900;color:#eaf6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cwm-m-command-timeline small{font-size:9px;color:#7596ad;margin-top:2px}.cwm-m-command-progress{position:relative;height:18px;margin-top:13px;background:#102d43;border:1px solid #224e6b;border-radius:999px;overflow:hidden}.cwm-m-command-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#1688e8,#35c7ff);transition:width .3s}.cwm-m-command-progress b{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:9px;letter-spacing:.03em}.cwm-m-command-result{margin-top:9px;padding:9px 11px;border:1px solid #214a65;border-radius:10px;background:#071a28;color:#c6d8e6;font-size:11px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.cwm-m-discovery .cwm-m-command-live{margin:12px 0 14px;background:linear-gradient(145deg,#071c2a,#0b2a3e)!important}.cwm-m-discovery .cwm-m-command-live .cwm-m-kicker{color:#69c9ff!important}
@media(max-width:620px){.cwm-m-command-timeline{grid-template-columns:1fr 1fr}.cwm-m-command-live-head{align-items:flex-start}.cwm-m-command-live-head-actions{justify-content:flex-start}.cwm-m-command-timeline span{white-space:normal}}

/* V0.16.6 – global dark-console contrast normalization
   Prevent legacy light components from inheriting the professional dark theme's light text. */
.cwm-mobile-app .cwm-m-attention-card{
  background:linear-gradient(150deg,#0f2537,#091c2b)!important;
  border-color:#23465f!important;
  color:#f5f9fd!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
.cwm-mobile-app .cwm-m-attention-card.warn{border-left-color:#ffb54a!important}
.cwm-mobile-app .cwm-m-attention-card.bad{border-left-color:#ff6972!important}
.cwm-mobile-app .cwm-m-attention-card h3{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-attention-card>p{color:#c6d8e6!important}
.cwm-mobile-app .cwm-m-attention-top small{color:#a8bfd2!important}
.cwm-mobile-app .cwm-m-attention-meta span{
  background:#0d2234!important;
  border:1px solid #1b405b!important;
  color:#eaf6ff!important;
}
.cwm-mobile-app .cwm-m-attention-meta b{color:#a8bfd2!important}
.cwm-mobile-app .cwm-m-attention-actions button{background:#112f45!important;color:#dff2ff!important;border:1px solid #28516f!important}

/* Legacy quick-command controls: explicit dark background + explicit foreground. */
.cwm-mobile-app .cwm-m-command button:not(.primary):not(.danger),
.cwm-mobile-app .cwm-m-command-stop{
  background:#112a3e!important;
  color:#f5f9fd!important;
  border-color:#28516f!important;
}
.cwm-mobile-app .cwm-m-command button.danger{
  background:#32191f!important;
  color:#ffd2d6!important;
  border-color:#75343c!important;
}

/* Internal messages and reply controls must never inherit white text onto white fields. */
.cwm-mobile-app .cwm-m-message.internal{
  background:#2b2412!important;
  color:#ffe2a3!important;
  border-color:#6d5723!important;
}
.cwm-mobile-app .cwm-m-reply textarea,
.cwm-mobile-app .cwm-m-reply select{
  background:#081d2e!important;
  color:#f7fbff!important;
  border-color:#28516f!important;
}
.cwm-mobile-app .cwm-m-reply textarea::placeholder{color:#8fa7ba!important}

/* Maintenance: keep the console visually coherent instead of a light island in dark mode. */
.cwm-mobile-app .cwm-m-maintenance{
  color:#f5f9fd!important;
  background:linear-gradient(145deg,#25200f,#111d25)!important;
  border-color:#6d5723!important;
}
.cwm-mobile-app .cwm-m-maintenance h2,
.cwm-mobile-app .cwm-m-maintenance .cwm-m-panel-head p,
.cwm-mobile-app .cwm-m-maintenance label,
.cwm-mobile-app .cwm-m-maintenance strong{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-maintenance .cwm-m-kicker{color:#ffd477!important}
.cwm-mobile-app .cwm-m-maintenance .cwm-m-panel-head p,
.cwm-mobile-app .cwm-m-maintenance label>small,
.cwm-mobile-app .cwm-m-maintenance-list small{color:#b9c8d5!important}
.cwm-mobile-app .cwm-m-maintenance-list>div{
  background:#1d211d!important;
  color:#f5f9fd!important;
  border-color:#5e542e!important;
}
.cwm-mobile-app .cwm-m-maintenance input[type=text],
.cwm-mobile-app .cwm-m-maintenance input[type=datetime-local],
.cwm-mobile-app .cwm-m-maintenance select{
  background:#0b2031!important;
  color:#f5f9fd!important;
  border-color:#6d6338!important;
}
.cwm-mobile-app .cwm-m-maintenance input::placeholder{color:#9cadba!important}
.cwm-mobile-app .cwm-m-maintenance .cwm-m-pill.neutral{background:#183044!important;color:#d4e5f2!important}
.cwm-mobile-app .cwm-m-maintenance .cwm-m-pill.warn{background:#493314!important;color:#ffdc99!important}

/* Service reports previously remained white after the console switched to dark mode. */
.cwm-mobile-app .cwm-m-report-card{
  background:linear-gradient(150deg,#0f2537,#091c2b)!important;
  border-color:#21445e!important;
  color:#f5f9fd!important;
  box-shadow:0 12px 30px rgba(0,0,0,.16)!important;
}
.cwm-mobile-app .cwm-m-report-card strong{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-report-card small,
.cwm-mobile-app .cwm-m-report-meta{color:#a8bfd2!important}
.cwm-mobile-app .cwm-m-report-meta{border-top-color:#1d4058!important}
.cwm-mobile-app .cwm-m-report-card:hover{border-color:#3a8fc1!important;box-shadow:0 14px 34px rgba(0,0,0,.22)!important}

/* High-contrast state banners in the dark console. */
.cwm-mobile-app .cwm-m-alert.warn{background:#34270f!important;border-color:#76551b!important;color:#ffd891!important}
.cwm-mobile-app .cwm-m-alert.bad{background:#361b21!important;border-color:#7d343d!important;color:#ffb8bd!important}
.cwm-mobile-app .cwm-m-alert.good{background:#0d3323!important;border-color:#286c4b!important;color:#9cf1c2!important}
.cwm-mobile-app .cwm-m-alert strong,.cwm-mobile-app .cwm-m-alert span{color:inherit!important}

/* Text-bearing cards: explicit foreground protects against third-party/WP CSS inheritance. */
.cwm-mobile-app .cwm-m-panel,
.cwm-mobile-app .cwm-m-details,
.cwm-mobile-app .cwm-m-device,
.cwm-mobile-app .cwm-m-sec-card,
.cwm-mobile-app .cwm-m-ticket,
.cwm-mobile-app .cwm-m-device-hero,
.cwm-mobile-app .cwm-m-live-performance,
.cwm-mobile-app .cwm-m-empty{color:#f5f9fd}

/* Better keyboard visibility and disabled-state readability. */
.cwm-mobile-app button:focus-visible,
.cwm-mobile-app a:focus-visible,
.cwm-mobile-app input:focus-visible,
.cwm-mobile-app select:focus-visible,
.cwm-mobile-app textarea:focus-visible{outline:3px solid rgba(53,199,255,.55)!important;outline-offset:2px!important}
.cwm-mobile-app button:disabled{opacity:.62}

/* Compact fleet rows: status remains readable at a glance. */
.cwm-mobile-app .cwm-m-online-text.on{color:#72eea5!important}
.cwm-mobile-app .cwm-m-online-text.off{color:#ff8c91!important}
.cwm-mobile-app .cwm-m-device-main strong{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-device-main small,
.cwm-mobile-app .cwm-m-device-fast small{color:#a8bfd2!important}


/* V0.16.7 – base-card contrast normalization
   The original light UI definitions still exist for backwards compatibility, but every
   text-bearing base component in the professional dark console now gets an explicit
   background + foreground pair. */
.cwm-mobile-app .cwm-m-metrics>div,
.cwm-mobile-app .cwm-m-info-grid>div{
  background:linear-gradient(145deg,#0d2638,#091d2d)!important;
  border:1px solid #1b405b!important;
  color:#f5f9fd!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.015)!important;
}
.cwm-mobile-app .cwm-m-metrics strong{
  color:#f8fcff!important;
  font-weight:900!important;
  text-shadow:0 0 18px rgba(35,168,255,.08);
}
.cwm-mobile-app .cwm-m-metrics span{
  color:#b8cbda!important;
  font-weight:750!important;
}
.cwm-mobile-app .cwm-m-info-grid strong{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-info-grid span{color:#9fb7c9!important;font-weight:800!important}
.cwm-mobile-app .cwm-m-details summary strong,
.cwm-mobile-app .cwm-m-row strong,
.cwm-mobile-app .cwm-m-device-hero h1,
.cwm-mobile-app .cwm-m-panel h1,
.cwm-mobile-app .cwm-m-panel h2,
.cwm-mobile-app .cwm-m-section-head h2,
.cwm-mobile-app .cwm-m-page-title h1{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-details summary{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-details summary span{color:#78cbff!important}
.cwm-mobile-app .cwm-m-row{border-bottom-color:#173a53!important}
.cwm-mobile-app .cwm-m-row small,
.cwm-mobile-app .cwm-m-row>span{color:#a8bfd2!important}
.cwm-mobile-app .cwm-m-device-meta,
.cwm-mobile-app .cwm-m-device-sub{color:#a8bfd2!important}
.cwm-mobile-app .cwm-m-device-sub{border-top-color:#173a53!important}

/* Update counters are important operational numbers: make them unmistakable at a glance. */
.cwm-mobile-app .cwm-m-metrics>div:nth-child(1) strong{color:#6fd2ff!important}
.cwm-mobile-app .cwm-m-metrics>div:nth-child(2) strong{color:#a99bff!important}

/* Top-level KPI cards also receive explicit labels so no inherited theme color can wash them out. */
.cwm-mobile-app .cwm-m-kpi{color:#f5f9fd!important}
.cwm-mobile-app .cwm-m-kpi span{color:#a8bfd2!important}

/* Live action pending timestamps: make pending state visibly intentional, not a stray dash. */
.cwm-mobile-app .cwm-m-command-timeline small.pending{color:#8aa4b8!important;font-style:italic}

/* V0.16.11 – Channel Health */
.cwm-mobile-app .cwm-m-live-badge.warn{background:#3b2a0b!important;color:#fde68a!important;border:1px solid #92400e!important;box-shadow:0 0 0 1px rgba(251,191,36,.08) inset}
.cwm-mobile-app .cwm-m-mini-pill.warn[title*="Management"]{background:#3b2a0b!important;color:#fde68a!important;border-color:#92400e!important}

/* V0.16.28 – sichere Netzwerkfund-Sammelübernahme */
.cwm-m-discovery-summary{display:grid;gap:4px;margin:12px 0;padding:12px 14px;border:1px solid #24516d;border-radius:14px;background:#0a2030}.cwm-m-discovery-summary strong{color:#eff9ff}.cwm-m-discovery-summary span{font-size:12px;color:#91adbf}.cwm-m-discovery-bulk{display:grid;gap:10px}.cwm-m-discovery-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:10px;border:1px solid #1c4158;border-radius:14px;background:#081b29}.cwm-m-discovery-toolbar .cwm-m-action-button,.cwm-m-discovery-toolbar .cwm-m-link-button{width:auto;margin:0}.cwm-m-discovery-toolbar .cwm-m-link-button.danger{color:#ff9aa2}.cwm-m-discovery-select{margin-right:auto!important;white-space:nowrap}.cwm-m-discovery-item{grid-template-columns:34px minmax(0,1fr) minmax(145px,185px)!important}.cwm-m-discovery-item.review{border-style:dashed;opacity:.92}.cwm-m-discovery-check{display:grid;place-items:center;cursor:pointer}.cwm-m-discovery-check input{width:18px;height:18px;margin:0}.cwm-m-discovery-info{min-width:0}.cwm-m-discovery-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.cwm-m-discovery-title .cwm-m-pill{font-size:10px;padding:3px 7px}.cwm-m-discovery-reason{margin-top:5px!important;color:#b4c9d7!important}.cwm-m-discovery-type{display:grid;gap:4px;font-size:11px;font-weight:800;color:#91adbf}.cwm-m-discovery-type select{width:100%;min-width:0!important;margin:0!important}.cwm-m-discovery-toolbar button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:700px){.cwm-m-discovery-toolbar{align-items:stretch}.cwm-m-discovery-toolbar>*{width:100%!important;margin:0!important}.cwm-m-discovery-item{grid-template-columns:30px minmax(0,1fr)!important}.cwm-m-discovery-type{grid-column:2}.cwm-m-discovery-select{margin-right:0!important}}

/* V0.16.57 · Mobile dark-control contrast guard. */
.cwm-m-shell input:not([type=checkbox]):not([type=radio]):not([type=range]),.cwm-m-shell select,.cwm-m-shell textarea{background:#081d2e!important;color:#f7fbff!important;border-color:#31536f!important}
.cwm-m-shell select option,.cwm-m-shell select optgroup{background:#081d2e!important;color:#f7fbff!important}
.cwm-m-shell input::placeholder,.cwm-m-shell textarea::placeholder{color:#8fa9bd!important;opacity:1}
.cwm-m-shell :focus-visible{outline:2px solid #5fc6ff!important;outline-offset:2px!important}

/* V0.22.3 · mobile network live telemetry */
.cwm-m-live-network .cwm-m-live-number strong{font-size:21px}.cwm-m-network-directions{font-size:11px;color:var(--m-muted);font-weight:800;margin:0 0 4px}.cwm-m-live-network [data-cwm-network-line]{fill:none;stroke:var(--m-blue);stroke-width:3;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:980px) and (min-width:561px){.cwm-m-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 0.22.4 · pairing/login contrast + standalone enrollment surface
   Pairing pages are rendered before the authenticated .cwm-mobile-app wrapper,
   therefore they must never rely on inherited theme foreground colours. */
.cwm-mobile-pwa-page .cwm-m-login,
.cwm-m-pairing{
  background:linear-gradient(155deg,#0d2437,#081a29)!important;
  border:1px solid #244a65!important;
  color:#f7fbff!important;
  box-shadow:0 22px 64px rgba(2,15,27,.28)!important;
}
.cwm-mobile-pwa-page .cwm-m-login h1,
.cwm-mobile-pwa-page .cwm-m-login h2,
.cwm-mobile-pwa-page .cwm-m-login label,
.cwm-m-pairing h1,
.cwm-m-pairing h2,
.cwm-m-pairing label{color:#f7fbff!important}
.cwm-mobile-pwa-page .cwm-m-login>p,
.cwm-mobile-pwa-page .cwm-m-login small,
.cwm-m-pairing>p,
.cwm-m-pairing small{color:#b9ccdc!important}
.cwm-mobile-pwa-page .cwm-m-login .cwm-m-kicker,
.cwm-m-pairing .cwm-m-kicker{color:#73c9ff!important}
.cwm-mobile-pwa-page .cwm-m-login input,
.cwm-m-pairing input{
  background:#f8fbfd!important;
  color:#102033!important;
  border-color:#8fa9bc!important;
  caret-color:#102033!important;
}
.cwm-mobile-pwa-page .cwm-m-login input::placeholder,
.cwm-m-pairing input::placeholder{color:#62788a!important}
.cwm-m-pairing .cwm-m-alert.good{
  background:#0d3323!important;
  border-color:#347456!important;
  color:#baf6d3!important;
}
.cwm-m-pairing-error{border-left:5px solid #ff6972!important}
.cwm-m-pair-state{margin-top:18px;padding:11px 13px;border-radius:12px;background:#0b3047;color:#cfeaff;font-size:12px;line-height:1.45;border:1px solid #245a7a}
