.dash-stage{position:relative;min-height:640px;perspective:1800px;display:flex;align-items:center;margin-top:-40px;min-width:0;max-width:100%}.dash{min-width:0}.dash-head{min-width:0}.dash-body{min-width:0}.dash-main{min-width:0}.dash-side{min-width:0}.dash-dev{min-width:0}.dash-insight{min-width:0}.dash-kpi{min-width:0}.dash-title{min-width:0}.dash-dev .nm{min-width:0}.dash-dev .sub{min-width:0}.dash-kpi .label{min-width:0}.dash-kpi .num{min-width:0}.dash-insight .ti{min-width:0}.dash-insight .me{min-width:0}.dash{position:relative;width:100%;background:#fff;border-radius:18px;box-shadow:var(--shadow-xl),0 0 60px -10px rgba(34,183,224,0.15);overflow:hidden;transform:perspective(1800px) rotateY(-7deg) rotateX(3deg);transform-origin:center center;transition:transform .4s cubic-bezier(.2,.8,.2,1);border:1px solid var(--line)}.dash-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fafbfc,#f4f6f8)}.dash-title{font-size:11.5px;font-weight:600;color:var(--muted);margin-left:8px;font-feature-settings:"tnum"}.dash-title strong{color:var(--ink);font-weight:700}.dash-live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:0.08em}.dash-body{display:grid;grid-template-columns:80px 1fr}.dash-side{background:#fafbfc;border-right:1px solid var(--line);padding:18px 0;display:flex;flex-direction:column;gap:6px;align-items:center}.dash-side .item{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;color:var(--muted);transition:background .15s}.dash-side .item.active{background:var(--coral-soft);color:var(--coral)}.dash-side .item svg{width:20px;height:20px}.dash-main{padding:20px;display:flex;flex-direction:column;gap:14px}.dash-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.dash-kpi{background:linear-gradient(135deg,#fafbfc,#f1f3f6);border:1px solid var(--line);border-radius:10px;padding:11px 10px}.dash-kpi .label{font-size:9.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:0.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-kpi .num{font-size:21px;font-weight:800;color:var(--ink);letter-spacing:-0.02em;margin-top:2px;font-variant-numeric:tabular-nums;line-height:1.05}.dash-kpi .num .unit{font-size:12px;color:var(--muted);font-weight:600;margin-left:2px}.dash-kpi.accent{background:linear-gradient(135deg,rgba(224,96,58,0.12),rgba(224,96,58,0.04));border-color:rgba(224,96,58,0.3)}.dash-kpi.accent .num{color:var(--coral)}.dash-chart{background:#fafbfc;border:1px solid var(--line);border-radius:10px;padding:14px;position:relative;overflow:hidden}.dash-chart-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.dash-chart-title{font-size:10.5px;font-weight:700;color:var(--ink-2);text-transform:uppercase;letter-spacing:0.06em}.dash-chart-meta{font-size:10px;color:var(--muted);font-weight:500}.dash-chart-svg{width:100%;height:135px;display:block}.dash-insights{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dash-insight{display:flex;align-items:center;gap:9px;background:#fafbfc;border:1px solid var(--line);border-radius:10px;padding:9px 11px;min-width:0}.dash-insight .dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex-shrink:0;box-shadow:0 0 0 3px rgba(140,150,164,0.18)}.dash-insight.ok .dot{background:var(--green);box-shadow:0 0 0 3px rgba(62,142,94,0.20)}.dash-insight .dot.info{background:var(--cyan);box-shadow:0 0 0 3px rgba(34,183,224,0.20)}.dash-insight .dot.accent{background:var(--coral);box-shadow:0 0 0 3px rgba(224,96,58,0.20)}.dash-insight .ti{font-size:10.5px;font-weight:700;color:var(--ink);letter-spacing:-0.005em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-insight .me{font-size:9.5px;color:var(--muted);font-weight:500;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-devices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dash-dev{background:#fafbfc;border:1px solid var(--line);border-radius:8px;padding:9px 11px;display:flex;align-items:center;gap:8px}.dash-dev .led{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 6px rgba(62,142,94,0.5);flex-shrink:0}.dash-dev .led.amber{background:var(--amber);box-shadow:0 0 6px rgba(242,181,68,0.5)}.dash-dev .nm{font-size:11px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-dev .sub{font-size:9.5px;color:var(--muted);margin-left:auto;font-weight:500;font-variant-numeric:tabular-nums}.float-badge.zero{bottom:-20px;left:-30px;transform:rotate(-3deg)}.float-badge.zero .pill{background:var(--green);color:#fff;font-size:10.5px;padding:3px 9px;border-radius:999px;font-weight:800;letter-spacing:0.04em}.float-badge.access{top:-20px;right:-20px;transform:rotate(3deg)}.float-badge.access .ap-mini{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#e8eaee);position:relative;flex-shrink:0;box-shadow:inset 0 -2px 4px rgba(0,0,0,0.05)}.float-badge.guard{top:50%;right:-30px;transform:translateY(-50%) rotate(2deg)}.float-badge.guard .shield{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,rgba(62,142,94,0.18),rgba(62,142,94,0.06));border:1px solid rgba(62,142,94,0.35);color:var(--green);display:grid;place-items:center;flex-shrink:0}.float-badge.guard .shield svg{width:14px;height:14px}.float-badge .fb-tx{display:flex;flex-direction:column;line-height:1.25}.float-badge .fb-tx strong{font-size:12px;color:var(--ink);font-weight:700}.float-badge .fb-tx span{font-size:10px;color:var(--muted);font-weight:500}@media (max-width:1100px){.float-badge.guard{display:none}}@media (max-width:1024px){.dash-stage{min-height:0;max-width:600px;margin:0 auto}}@media (max-width:780px){.dash-stage{min-height:0;perspective:none}.dash{transform:none !important}.dash-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.dash-side{display:none}.dash-body{grid-template-columns:1fr}.dash-kpi .num{font-size:19px}.dash-insights{grid-template-columns:1fr}}@media (max-width:480px){.dash{transform:none}.dash-stage{min-height:auto;margin-top:24px}.dash-head{padding:10px 12px}.dash-title{font-size:10.5px}.dash-main{padding:14px;gap:11px}.dash-kpi{padding:9px 8px}.dash-kpi .num{font-size:17px}}