    body { font-family: system-ui, sans-serif; margin: 24px; background:#0b0f14; color:#e7eef7; }
    .row { display:flex; gap:24px; flex-wrap:wrap; align-items:flex-start; }
    .card { background:#111826; border:1px solid #1f2a3a; border-radius:16px; padding:16px; min-width:260px; }
    .title { font-size:14px; opacity:.85; margin-bottom:8px; }
    .big { font-size:28px; font-weight:700; }
    .muted { opacity:.7; font-size:12px; }
    .alarm { color:#ff6b6b; font-weight:700; margin-top:8px; }
    .warn { color:#ffd166; font-weight:700; margin-top:8px; }
    .toolbar { display:flex; gap:12px; align-items:center; flex-wrap:wrap; margin: 12px 0 18px; }
    select { background:#0f1623; color:#e7eef7; border:1px solid #1f2a3a; border-radius:10px; padding:8px 10px; }
    .kv { display:flex; gap:12px; flex-wrap:wrap; }
    .pill { border:1px solid #1f2a3a; border-radius:999px; padding:6px 10px; font-size:12px; opacity:.9; }
    .station-name { font-weight: 600; opacity: 0.95; }
    
    /* Peak meter styles */
    .peak-meters { display: flex; gap: 16px; margin-top: 12px; }
    .peak-meter { flex: 1; }
    .peak-label { font-size: 11px; opacity: 0.7; margin-bottom: 4px; text-align: center; }
    .peak-bar-container { 
      height: 180px; 
      width: 40px; 
      background: #1a2332; 
      border-radius: 8px; 
      position: relative;
      margin: 0 auto;
      overflow: hidden;
    }
    .peak-bar-bg {
      position: absolute;
      bottom: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(to top, 
        #2ecc71 0%, 
        #2ecc71 60%,
        #f39c12 60%,
        #f39c12 85%,
        #e74c3c 85%,
        #e74c3c 100%
      );
      opacity: 0.15;
    }
    .peak-bar {
      position: absolute;
      bottom: 0;
      width: 100%;
      transition: height 0.1s ease-out;
      border-radius: 8px 8px 0 0;
    }
    .peak-value { 
      font-size: 13px; 
      font-weight: 600; 
      text-align: center; 
      margin-top: 6px;
    }
    .peak-indicator {
      position: absolute;
      width: 100%;
      height: 2px;
      background: rgba(255,255,255,0.5);
      transition: bottom 0.05s linear;
    }
    .ws-status { 
      display: inline-block; 
      width: 8px; 
      height: 8px; 
      border-radius: 50%; 
      background: #666;
      margin-right: 6px;
    }
    .ws-status.connected { background: #2ecc71; }
    .ws-status.connecting { background: #f39c12; animation: pulse 1s infinite; }
    @keyframes pulse {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.3; }
    }

